How to fix seo category description thin on Next.js (Headless)
Expand your category page description to at least 100 words of genuinely helpful, keyword-rich content that explains what shoppers will find in that category.
Steps for Next.js (Headless)
- Locate your category page component — typically `app/categories/[slug]/page.tsx` (App Router) or `pages/categories/[slug].tsx` (Pages Router). This is where category data is fetched and rendered.
- Fetch the full category object from your commerce API (e.g., via `generateStaticParams` + `generateMetadata` in App Router, or `getStaticProps` in Pages Router). Ensure the payload includes both a short `description` field AND any extended `longDescription` / `seoDescription` field your CMS/commerce platform exposes.
- In the page's JSX, add a visible `<CategoryDescription>` section below the hero/banner that renders the long-form description (≥ 100 words). Wrap it in a semantic `<section>` with an `aria-label` so it is meaningful to screen readers and crawlers.
- If the commerce platform only provides a short description, compose a richer fallback string server-side by combining the short description, a keyword-rich mid-section built from category metadata (name, breadcrumb, product count, top attributes), and a call-to-action sentence — all assembled in one template literal before rendering.
- Simultaneously update `generateMetadata` (App Router) or the `<Head>` block (Pages Router) so that `description` meta tag also uses a ≥ 150-character excerpt of the same rich content, ensuring on-page copy and meta description are consistent.
- Run `next build` and use a crawler (e.g., `npx @next/bundle-analyzer` or Screaming Frog) to verify the rendered HTML contains the full description text in the `<section>` and that the `<meta name='description'>` content is populated correctly on every category URL.
What is seo category description thin?
A category description is the block of text that appears on a collection or category page (e.g. "Women's Running Shoes" or "Outdoor Furniture") explaining what products are listed there. Search engines read this text to understand what the page is about and decide how — and for which search terms — to rank it. "Thin" content means the description is too short (under roughly 100 words) to give Google enough signal about the page's topic, making it look sparse or low-effort compared to competing pages.
Category pages are often your highest-traffic SEO landing pages because they match the broad, high-volume searches shoppers type (e.g. "buy running shoes online"). A thin description means Google has very little unique text to evaluate, which can suppress your ranking for those valuable terms and hand traffic directly to competitors with richer pages. More words also means more natural opportunities for the keywords your customers actually search, improving relevance signals without any link-building required. Finally, a well-written description helps shoppers quickly confirm they're in the right place, reducing bounce rates and increasing the chance they'll buy.
See the complete Seo category description thin 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 seo category description thin and every other issue across your whole site.
Scan my site free