Skip to main content

Next.js Blog SEO Checklist (2026) — Ship Rankings with ReactPress

· 4 min read
reactpress
reactpress

ReactPress — The Modern Web Creation Platform.

A Next.js blog can rank — or disappear — based on defaults you forget on day one: client-only post pages, missing sitemap, thin meta, and bloated images. This 2026 SEO checklist is written for teams shipping a Next.js blog with a real CMS, and shows how ReactPress covers the boring essentials so you can focus on content.

Related docs: Site settings & SEO · Build a blog in 60 seconds · Theme development


1. Render HTML for crawlers (SSR / ISR)​

Do: Server-render post and page templates (or ISR with revalidation).
Don't: Fetch the article only in useEffect with an empty shell.

ReactPress official themes use Next.js SSR/ISR for visitor routes. If you fork a theme, keep post pages on the server path.


2. Unique title and meta description per URL​

Checklist:

  • <title> unique, ~50–60 characters, includes primary keyword naturally
  • Meta description ~150–160 characters, matches search intent
  • No duplicate titles across pagination / tag archives

In ReactPress Admin, enable the SEO plugin and set per-post title/description/slug. Theme SSR should emit those fields.


3. Canonical URLs​

  • Absolute canonical on every indexable page
  • Staging / preview hosts noindex
  • Trailing-slash policy consistent

Set the public site URL in production config before launch: Configuration.


4. Sitemap and robots.txt​

  • /sitemap.xml lists posts and pages (and hreflang if multilingual)
  • robots.txt allows crawling; points to sitemap
  • Submit sitemap in Google Search Console / Bing

ReactPress starter themes expose sitemap/robots patterns — verify after theme enable. See SEO settings.


5. Open Graph and Twitter cards​

  • og:title, og:description, og:url, og:image
  • Image ≥ 1200×630, compressed
  • Test with platform debuggers after deploy

6. Structured data​

Useful types for a blog/CMS:

TypeWhere
Article / BlogPostingPost templates
Organization / WebSiteSite layout
BreadcrumbListNested docs/blog
FAQPageFAQ landing pages

Validate with Google’s Rich Results test. ReactPress docs site itself uses JSON-LD patterns you can mirror in themes.


7. Core Web Vitals and media​

  • LCP: hero/post image sized and prioritized
  • CLS: dimensions on images/embeds
  • INP: avoid heavy third-party scripts on article pages
  • WebP/AVIF where possible

ReactPress image-optimizer plugin helps batch WebP — pair with sensible theme next/image usage.


  • Clear hub pages (what / compare / quickstart)
  • Posts link to pillar docs; docs link back to posts
  • Descriptive anchors — not “click here”

Pillars worth linking from every SEO post:


9. Performance budget for CMS themes​

BudgetTarget
Lighthouse Performance (mobile)≥ 90 on article template
JS on critical pathPrefer RSC/SSR; defer analytics
Fontsfont-display: swap; subset

Theme guidance: Appearance & themes · Theme development.


10. Launch verification​

  1. curl -I production URLs — 200, correct cache headers
  2. View-source — titles/meta present without running JS
  3. Search Console coverage — fix excluded-by-robots surprises
  4. Compare staging vs prod canonical hosts

ReactPress defaults that help SEO​

ConcernReactPress approach
SSR blogNext.js official themes
Editor metaSEO plugin in Admin
API for custom frontendsHeadless REST
Fast local proofreactpress init ~60s
npm i -g @fecommunity/reactpress
mkdir my-blog && cd my-blog
reactpress init

More: Self-hosted Next.js CMS guide · WordPress alternatives for React.


FAQ​

Does Next.js App Router change this checklist?
No — crawlers still need meaningful HTML and metadata APIs (generateMetadata, etc.).

Is a Headless CMS enough for SEO?
Only if your Next app implements the checklist. The CMS alone does not rank.

Where do I configure ReactPress SEO?
Site settings & SEO.

中文版