S.
  • Services
  • For you
  • Solutions
  • Work
  • About
  • Know-how
  • Blog
Start a project
EN/PL/RU
  • Services01
  • For you02
  • Solutions03
  • Work04
  • About05
  • Know-how06
  • Blog07
Start a project
EN/PL/RU
Vlad Sedenko
Independent web product developer
EU / Poland / Warsaw
Products
  • NextWooNext.js storefront for WooCommerce
© 2026. All rights reserved
Services
  • Product Discovery
  • UX/UI Design
  • MVP Development
  • SaaS Development
  • Website Redesign
  • Web Application Security
  • Conversion Optimization
  • API Integrations & Business Automation
  • Product Support
Explore
  • Services
  • For you
  • Work
  • Solutions
  • About
  • Blog
  • Know-how
  • Contact
Start a project
  • vlad@sedenko.net
  • LinkedIn
  • Privacy/Cookies
Know-how/Next.js SEO Checklist: The Complete Guide for App Router (2026)

Part 1 of 22

Rendering strategy: what does the crawler actually see?

How SSG, ISR, SSR and CSR affect indexing in Next.js, why client-rendered content is invisible to most crawlers, and how to check what bots actually see.

2026-07-15
Rendering strategy: what does the crawler actually see?

All topics in this guide

A practical, section-by-section SEO checklist for Next.js: rendering strategy, Metadata API, hreflang, structured data, Core Web Vitals, and optimization for AI answer engines.

The single most important SEO decision in Next.js is how each route renders. Google can execute JavaScript, but rendering is queued, delayed, and not guaranteed — and most other crawlers (Bing partially, and almost all AI crawlers) index only the initial HTML response.

The rule of thumb:

  • Static (SSG) — marketing pages, docs, blog posts. Fastest, cheapest, fully indexable.
  • ISR (Incremental Static Regeneration) — catalogs, listings, anything that changes hourly/daily. Static speed with controlled freshness.
  • SSR (dynamic rendering) — personalized or truly real-time pages. Indexable, but slower TTFB.
  • CSR (client-only) — dashboards and app internals. Never for content you want indexed.
// app/blog/[slug]/page.tsx — ISR: static HTML, regenerated hourly
export const revalidate = 3600;

export async function generateStaticParams() {
  const posts = await getPosts();
  return posts.map((post) => ({ slug: post.slug }));
}

Check what the crawler receives — not what your browser shows:

curl -s https://example.com/your-page | grep -i "your-key-phrase"

If your key content isn't in that response, it doesn't exist for most crawlers.

Watch out for accidental dynamic rendering. Using cookies(), headers() or searchParams in a page silently switches it to SSR. That's not fatal for SEO, but it costs TTFB and server load. We covered these traps in detail in How Caching Works in Next.js with App Router.

Checklist:

  • Every indexable route is SSG or ISR; SSR only where personalization demands it
  • curl the raw HTML and confirm the main content is there
  • No cookies()/headers() calls on pages that should be static
  • Client components used for interactivity, not for content
Next →Metadata API: titles, descriptions and the template pattern

01—22

All topics in this guide

  1. 01Rendering strategy: what does the crawler actually see?•
  2. 02Metadata API: titles, descriptions and the template pattern→
  3. 03Canonical URLs and hreflang: one page, one address→
  4. 04Open Graph and dynamic OG images→
  5. 05sitemap.ts and robots.ts: file conventions instead of hand-written XML→
  6. 06Structured data: JSON-LD that earns rich results→
  7. 07Images, fonts and scripts: the classic performance trio→
  8. 08Core Web Vitals: the three numbers Google measures→
  9. 09Redirects, 404s and status codes→
  10. 10Caching and content freshness→
  11. 11AEO/GEO: getting cited by ChatGPT, Perplexity and Google AI Overviews→
  12. 12Monitoring: SEO is a loop, not a launch task→
  13. 13Trust and E-E-A-T: making your site believable→
  14. 14Image SEO: turning pictures into traffic→
  15. 15Internal linking and site architecture→
  16. 16Search intent: pages that match what people actually type→
  17. 17Programmatic SEO in Next.js: pages at scale without the spam→
  18. 18SEO migration: replatforming to Next.js without losing traffic→
  19. 19Pagination and faceted navigation without index bloat→
  20. 20Accessibility and SEO: one job, two rewards→
  21. 21Content decay: refresh, consolidate or prune→
  22. 22Off-page for developers: earning links without buying them→

Want this handled for you?

I audit and fix technical SEO on Next.js sites — indexing, performance, hreflang and AI visibility.

Technical SEO service