Why SEO Basically Requires Next.js (or Something Like It)
Google can execute JavaScript — that is not the real argument for server rendering. The real reasons are speed, reliability, and every non-Google crawler.
"Google can render JavaScript, so client-side rendering is fine for SEO" is technically true and a genuinely bad reason to skip server rendering. The real argument is more specific than that.
The actual problems with CSR-only for SEO
- Google's JS-rendering pipeline is a separate, delayed second pass — pages can get indexed based on their initial (empty) HTML first, and re-crawled for the rendered version later, meaning a real, measurable indexing delay compared to HTML that's already complete on first response.
- Not every crawler executes JavaScript at all — Bing's crawler has historically had weaker JS support than Google's, and this site's own /llms.txt strategy exists specifically because AI-driven search and answer engines frequently work from crawlable text, not a rendered browser session.
- Every social platform's link-preview bot (LinkedIn, Twitter/X, Slack) reads Open Graph tags from the initial HTML response — a client-rendered page with an empty initial `<head>` frequently shows a broken or missing preview card, directly hurting the actual LinkedIn-traffic strategy this site's content plan depends on.
Why this is a Next.js post, not just an "SSR" post
The problem is real regardless of framework — plenty of tools solve it (Remix, Astro, plain server-rendered PHP). Next.js is the specific, dominant answer in the React ecosystem: SSG and SSR are first-class, built-in rendering strategies rather than something bolted on with a separate server-rendering library layered over a CSR-first React app.
What this actually looks like on this site
Every case study and blog post here is statically generated (SSG, per the previous post in this series) — complete, crawlable HTML with real content, unique metadata, and a generated Open Graph image, all present in the very first response, with zero dependency on a crawler executing JavaScript. That's not a theoretical best practice; it's the literal mechanism behind why this specific site is built the way it is.