Dual Marquee
A logo cloud with two rows of customer logos scrolling in opposite directions. A seamless, pure CSS marquee for social proof on a landing page.
A logo cloud with two rows of customer logos scrolling in opposite directions. A seamless, pure CSS marquee for social proof on a landing page.
Search blocks by description or jump to a page.
The source for every Modern SaaS block is included with Basic and Pro. Pick a plan to copy the code.
Already purchased? Log in
Dual Marquee is a scrolling logo cloud. A short uppercase label sits above a constrained region, and inside that region two rows of company logos run continuously in opposite directions: the top row drifts left, the bottom row drifts right. Each row renders its logos twice and loops seamlessly with a pure CSS animation, no JavaScript required. Soft fade overlays on both edges blend the logos into the page background so the strip reads as infinite rather than clipped.
Each logo is a rounded icon badge showing the company initial alongside the company name. The two rows carry independent sets of names, so you can split your customer list across them however you like. The label line, the number of logos per row, and whether you keep one or both rows are all straightforward to adjust.
Reach for this block when you need social proof in motion. The opposing scroll directions draw the eye without demanding attention, which makes the strip a natural fit between a hero and a feature section on a developer tools landing page. Teams that ship CLIs, SDKs, or APIs often list a wide spread of adopters: the two rows let you show ten or more names without the grid feeling crowded, and the animation communicates an active, growing ecosystem better than a static grid can.
A natural flow around it on a Modern SaaS page:
Before
After
The block is built for company or tool logos, but the name-and-initial format adapts to other list types:
Tip: keep each row to five or six names so there is enough breathing room between items and the opposing scroll directions stay visually distinct.