One Scroll Through the Composite AI Startup Homepage
Ten startups, ten products, one homepage: the page generator defaults add up to, scrolled from sticky nav to footer, with every tell named where it shows up.
On this page
Picture ten tabs. Ten startups from the same accelerator batch: a voice-agent thing, two dev-tooling plays, an AI CRM, a "compliance copilot," a vertical SaaS for dentists, a data-pipeline startup, an LLM-eval tool, an AI recruiter, and something doing invoices. Different problems, different markets, different founders who lived on instant noodles for three months to build this.
Now picture the homepage they would get if each of them typed "landing page for my startup" into a generator and shipped what came back. Not ten teardowns: one page, the composite of the defaults. It is not a survey of real companies (we have not run one we could publish, and an earlier version of this article implied otherwise), but you will recognize it within one scroll, because the defaults are documented and the page they add up to is everywhere.
So let's scroll it, top to bottom, and stop at each section to point at the thing on screen. The way a visitor sees it.
Start at the top of the page.
Sticky nav: glass, blur, and a button that says "Get Started"
The header is fixed to the top. It's translucent. As you scroll, the content underneath ghosts through it with a soft blur: backdrop-blur-md, bg-white/70, a hairline border-b border-zinc-200/50. Or the dark version: bg-zinc-950/80, same blur.
Logo on the left, set in a slightly-too-bold weight. Four nav links in the middle: Features, Pricing, Docs, Blog, always those, always in that order. On the right, two elements: a ghost "Log in" and a filled primary button. The button says "Get Started." If it doesn't say "Get Started" it says "Start for free" or "Get started free," which is the same three words wearing a hat.
The blur is the first tell, and it's a real one: backdrop-blur on a sticky nav is a default, not a decision, and seeing it on a compliance tool for hospitals tells you nobody asked whether a hospital's procurement lead wants frosted glass. It got there because the generator reaches for it the way your hand reaches for the light switch in your own house. Dark. Without thinking.
Keep scrolling. The nav stays. Everything else moves up underneath it.
Hero: Geist, 64 pixels, and a gradient you've met before
The fold. This is where the money is, where every founder would spend the most time, and it's where the convergence is total.
Centered column. Headline in Geist or Geist-adjacent: the geometric sans that has quietly become the new Inter, partly because the create-next-app template loads it, which is why Geist is now its own AI font fingerprint. Roughly 60 to 72 pixels, font-bold or font-semibold, tracking-tight, two lines. The first line is a value claim. The second line is the value claim with the noun swapped. "Ship faster. Sleep better." "Close more deals. Do less work." A verb, a period, a verb, a period.
And there, in the headline or the eyebrow above it or the CTA below it: the gradient. bg-gradient-to-r from-blue-600 to-violet-600, clipped to text or sitting behind a button. Sometimes indigo-to-cyan or teal-to-blue; the dentist SaaS goes pink-to-orange and feels like a rebel for it. This gradient is the most recognizable AI signature on the web right now, common enough that Anthropic's own frontend prompt tells Claude to avoid "purple gradients on white backgrounds"; why every model defaults to it comes down to Tailwind's palette sitting at the center of what the models learned.
Subheadline underneath, text-zinc-500, text-lg, max-width clamped to about max-w-2xl and centered, one-and-a-half sentences explaining the headline in slightly more words. Then two buttons side by side: the filled primary ("Get Started," again) and a ghost secondary with a tiny play-triangle icon that says "Watch demo" or "Book a demo."
Below the buttons, a line of text-sm text-zinc-400: "No credit card required." Even on the enterprise compliance tool that does not have a credit-card flow at all, because it sells annual contracts to legal departments. The line is there because the line is always there.
Below that, the product screenshot in a browser-chrome mockup with the three traffic-light dots, tilted slightly or sitting flat with a big soft shadow and a rounded-xl border. The screenshot is dark even when the site is light, because the dashboard is always dark.
Four seconds in the hero and you already know it was generated. Not suspect: know. This is the part we mean when we say you can call an AI site in thirty seconds: you don't audit, you pattern-match the fold, and the fold is a fingerprint.
Scroll past it.
Logo cloud: "Backed by the best," in grayscale
A thin strip. Centered label above it in text-sm, uppercase, tracking-wider, text-zinc-400: "Trusted by teams at" or "Backed by" or "Powering teams at." Then a row of five or six company logos.
They are grayscale. grayscale opacity-60, and frequently hover:grayscale-0 so they bloom into color when your mouse passes: a micro-interaction nobody asked for on a trust signal. For a company that launched four days ago, some of them cannot be customers yet: the accelerator's logo, the investors' logos, two tools the product integrates with. "Trusted by" is doing a lot of work to mean "has heard of."
Some versions take the marquee variant: the logos slide horizontally on an infinite CSS loop, animation: scroll 20s linear infinite, so the trust bar is also a treadmill. A treadmill of six logos, three of which belong to the same accelerator. The motion exists because the section looked empty and motion fills space; it's the same reflex as the fade-in-up-on-scroll that animates every section into view, except now it never stops.
Grayscale logos read as "credibility" to the generator because real enterprise sites use grayscale logos. The difference is real sites have logos worth desaturating.
Keep going.
The 3-feature grid: emoji in a pastel circle, times three
Here's the section you could draw blindfolded.
Centered section header ("Everything you need to [verb]") with a text-zinc-500 subhead under it. Then three cards in a grid grid-cols-1 md:grid-cols-3 gap-6. Three. Always three, because three is what fits in one row at desktop width and the generator never asks whether the product has three features or seven or one that actually matters.
Each card: rounded-2xl border border-zinc-200 p-6, white background, soft shadow. At the top of each card, an icon. And the icon is the tell: it's an emoji, or a Lucide line-icon, sitting inside a circle filled with a 100-weight pastel. ⚡ in a bg-blue-50 circle. 🚀 in a bg-violet-50 circle. 🔒 in a bg-green-50 circle. The lightning bolt means "fast." The rocket means "launch" or "growth" or "we ran out of metaphors." The padlock means "secure / enterprise / SOC 2 soon."
Under the icon, a three-word feature title in font-semibold. Under that, two lines of text-zinc-500 body copy that restate the title as a sentence. The three cards are identical in structure, identical in length: the copy is padded or trimmed so all three bodies wrap to exactly two lines and the cards stay the same height. That visual evenness is the giveaway: real features are not the same size, so a perfectly even three-up grid is a layout pretending it has content. That is the whole argument of the card grid problem: the symmetry that looks tidy reads as "nobody here had three distinct things to say."
On hover, each card lifts. hover:-translate-y-1 hover:shadow-lg transition. The same one-pixel float on all three, the hover-lift that has become the default micro-interaction, applied to cards that often aren't even links. You hover, it rises, nothing happens. It's a fidget toy.
The thinner variant is a grid-cols-3 of feature rows instead of cards, which is the same content in a thinner box.
Scroll.
Pricing: three tiers, and the middle one is 1.05× bigger
Three columns again. Free, Pro, Enterprise. Or Starter, Growth, Scale. Three.
The middle card is scaled up. Literally: scale-105, or it's got border-2 border-blue-600 while the others have border-zinc-200, or it's lifted with a deeper shadow, or all three at once. And it wears a little badge pinned to its top edge: "Most Popular." Pinned with absolute -top-3 left-1/2 -translate-x-1/2, a rounded-full bg-blue-600 px-3 py-1 text-xs text-white pill.
It is most popular the way the gas station hot dog is most popular: the sign chose it, not the customers. The product launched ninety-six hours ago. Nothing is most popular yet. The badge is a conversion pattern the generator learned from years of SaaS pricing pages, and it ships it on day one because the pricing template has a featured: true flag and somebody set it on the middle tier because the middle tier is where you set it.
Each tier: a name, a price in big font-bold numerals with a text-zinc-500 "/month" beside it, a one-line description, then a list of features with green checkmarks (<Check className="text-green-500" />) stacked in a column. The free tier has the same checkmarks in text-zinc-300 for the features it doesn't include, so the list length matches across all three columns. Even the absences are aligned.
CTA button at the bottom of each card. The middle one's button is filled and colored; the outer two are ghost-outlined. Of course it is. The page has been training your eye to click the colored thing since the nav, and here it cashes in.
To be fair: pricing has to live in columns, that's the format. But the scale-105-plus-"Most Popular"-plus-colored-middle-button combination is so universal that its presence tells you the founder didn't design a pricing page, they accepted one. If you ran a CSS audit down this section you'd find the transform, the conditional border, and the absolutely-positioned badge in under a minute: the three together are a signature, not a coincidence.
Past pricing.
Testimonial: a round avatar, five gold stars, and a quote about "game-changer"
One quote, centered, big. Or three quotes in, say it with me, a three-column grid.
The single-quote version: large text-2xl italic-ish quote, then a row underneath with a round avatar (rounded-full, 48 pixels, frequently an AI-generated or stock face), a name in font-medium, and a title in text-zinc-500: "Jane Doe, Head of Engineering at [Company]." Above or below, five gold stars. ★★★★★. Five. Never four-and-a-half, never four: five, because the star component defaults to filled and nobody set it lower.
The quote itself is built from a small vocabulary. "Game-changer." "Saved us hours." "Couldn't imagine going back." "The team is incredibly responsive." It's the verbal equivalent of the blue-violet gradient: the safest pull from the distribution. Real testimonials have a weird specific detail in them, a number, a grudging caveat, a sentence that sounds like a human typed it in a hurry. These have none. They have shape.
The three-up version replaces depth with breadth: three round avatars, three five-star rows, three "game-changer"-adjacent quotes, all the same height. The evenness is back. By now you can feel it as a texture: everything on this page comes in threes and everything in the three is the same size.
This is the deepest part of the convergence, and the saddest. The reason every AI site looks the same isn't laziness but gravity: the model is pulled toward the statistical center of every decision, and "what does a testimonial look like" centers on exactly this: round avatar, five stars, "game-changer." Ten founders solving ten different problems land on the same fake person saying the same fake sentence.
Almost at the bottom. One section left.
Big-CTA footer: "Ready to get started?" on a gradient slab
The page ends the way it began: by asking you to get started.
A full-width band, usually the boldest color on the page: a bg-gradient-to-br from-blue-600 to-violet-600 slab, or bg-zinc-950, with the content reverse-knockout in white. Centered headline, text-4xl font-bold: "Ready to get started?" or "Ready to ship faster?" or "Start building today." Below it, a single sentence of reassurance. Below that, the button: filled, white-on-color or color-on-dark, saying "Get Started" for the third time on this page. And underneath, one more time, in small type: "No credit card required."
Then the actual footer: four columns of links (Product, Company, Resources, Legal), a logo with a one-line tagline in the leftmost column, a row of social icons, and a text-sm text-zinc-400 copyright line. Four columns. The features came in threes; the footer comes in fours; the page never once chose a number because the content demanded it.
Close the tenth tab. Here's the gut-punch: ten teams who built ten different things (a voice agent, a compliance copilot, a tool for dentists) and a front door that, left to the defaults, would be the same page. You read that page just now and recognized it, because you've been to it a hundred times this year. The product behind it might be extraordinary. The visitor will never know, because the homepage told them, in its sticky blurred nav and its blue-violet Geist headline and its three pastel-circle emoji and its scale-105 "Most Popular" and its five-star "game-changer" and its "Ready to get started?", that nobody inside the building made a single decision a generator wouldn't have made for them. The page isn't bad. It's worse than bad. It's anonymous, and anonymous is the one thing a homepage can't afford to be on the day you launch.
To check your own page against it, run the free web scan: it looks for the blues, the gradient, the font, the three-card row, the fade-ups, the frosted glass, the stock button copy and the soft-shadow cards on any live URL.
Revision note
Updated 18 October 2026. An earlier version presented this as a live teardown of ten real Y Combinator S26 homepages, with counts ("nine of the ten", "six of ten", "all ten", "eight of the ten"). We cannot show that we looked at those pages, so the article now describes what it always was: a composite page built from generator defaults. The counts were removed and the title no longer promises a teardown of real companies.
Scan a live page
Eight AI defaults, the evidence for each, and a fix kit. Free, no account.