Stack2 min read
Astro vs Next.js for a marketing site
Both are good. They're good at different things. How we decide which one to recommend when a team leaves a site builder.
Mitja PakFounder & developer, builds Webflow sites every dayWe build with both, and it's the first question most teams ask. The framework matters less than the content model and the launch plan. The choice still has consequences, though, so here's how we make it.
The short version
| Astro | Next.js | |
|---|---|---|
| Best for | Content sites: marketing pages, blog, docs | Sites close to a product: logins, dashboards, dynamic pricing |
| JavaScript sent to the browser | None by default, added per component | React runtime on every page |
| Rendering | Static by default, server rendering when needed | Static, server, and streaming, mixed per route |
| Components | Astro components, plus React, Vue, or Svelte islands | React |
| Hosting | Any static host or server | Any Node host; Vercel has the most features |
When we pick Astro
Most marketing sites are pages of text, images, and a few interactive pieces. Astro renders all of that to HTML and only ships JavaScript for the parts that need it, like a pricing toggle or a form. Pages are fast without tuning.
Astro's content collections also make blogs and docs simple, and it works with every major headless CMS. If your team has no React developers, Astro's templates are closer to HTML, which makes the codebase easier to hand over.
When we pick Next.js
Next.js makes sense when the marketing site isn't separate from the product. Shared login, account pages, personalized content, a configurator, or a docs site that reads from your API. One React codebase for site and app saves you building the same things twice.
It's also the default if your engineers already work in Next.js and will maintain the site. A framework your team knows beats a slightly faster one they don't.
What doesn't decide it
- SEO. Both render full HTML on the server. Rankings depend on content and site structure, not the framework.
- The CMS. Payload, Sanity, Storyblok, Contentful, and the rest all work with both.
- Speed scores alone. A badly built Astro site can still be slow. A well built Next.js site is fast enough for almost any marketing page.
A mixed setup is fine
Plenty of teams run the marketing site on Astro and the product on Next.js. They share a design system and a CMS, and each part uses the tool that fits it. If you're migrating off Webflow or Framer, you don't have to solve the product side at the same time.
Planning a migration?
See the assessment →