How to fix duplicate meta description on Next.js (Headless)

Write a unique, page-specific meta description for every page on your store so Google can display a compelling, accurate snippet for each one in search results.

Steps for Next.js (Headless)

  1. Identify every route segment that currently shares or omits a meta description (e.g. app/page.tsx, app/products/[slug]/page.tsx, app/collections/[handle]/page.tsx, app/blog/[slug]/page.tsx).
  2. For static/root pages (e.g. app/page.tsx), export a plain `metadata` object with a hand-written, unique `description` field that reflects that page's actual content.
  3. For dynamic routes (e.g. app/products/[slug]/page.tsx), export an async `generateMetadata({ params })` function that fetches the page-specific data (product title, excerpt, etc.) from your commerce API and returns a computed `description` — trim it to 150-160 characters.
  4. Create a shared `truncate(text, max)` helper (e.g. lib/seo.ts) so every route formats descriptions consistently and never accidentally duplicates the same fallback string.
  5. Add a root-level fallback in app/layout.tsx using the `metadata` export so any page that hasn't yet received a custom description gets a site-level default instead of nothing — but always override it at the leaf route.
  6. Run `next build` and audit with `<meta name='description'>` checks in the rendered HTML (or a tool like Screaming Frog) to confirm every URL now carries a distinct description.
Official Next.js (Headless) documentation ↗

What is duplicate meta description?

A meta description is a short summary (typically 150–160 characters) that appears beneath your page title in Google search results. When two or more pages share the exact same meta description text, Google detects the duplication and will often rewrite the snippet itself — usually pulling random text from the page — which rarely reflects your best selling points. Unique meta descriptions give each page its own tailored pitch to shoppers who are scanning search results before they click.

Google explicitly recommends unique meta descriptions for every page, and duplicate descriptions are flagged as a quality issue in its SEO guidance. When Google rewrites your snippet with arbitrary on-page text, you lose control of the first impression your store makes in search results — which directly hurts click-through rate (CTR). Lower CTR means fewer visitors even when you rank well, translating to lost revenue. On collection and category pages specifically, a generic description shared across dozens of pages also signals low content differentiation, which can lead Google to consolidate or devalue those pages in its index.

See the complete Duplicate meta description guide for every platform and the full background.

Not sure if your Next.js (Headless) store has this?

Run a free SEOLZ scan — we’ll find duplicate meta description and every other issue across your whole site.

Scan my site free

Fix duplicate meta description on another platform