Skip to main content

Product descriptions are populated and meaningful

ab-001116 · ecommerce-catalog.product-data.description-quality
Severity: lowactive

Why it matters

Empty or placeholder product descriptions ship straight to production pages, tanking organic search rankings and leaving shoppers with no signal to convert. Search engines down-rank thin-content product pages, and customers abandon carts when copy reads like 'Lorem ipsum' or 'TBD'. This is a placeholder-hygiene and content-integrity failure that erodes trust, inflates return rates from under-informed purchases, and directly reduces conversion on every affected SKU.

Severity rationale

Low because the defect degrades SEO and conversion gradually rather than exposing data or breaking checkout.

Remediation

Write real descriptions for every product in prisma/seed.ts or src/data/products.ts covering features, materials, and use cases, then enforce a minimum word count at the write boundary so placeholders cannot ship again:

if (!description || description.split(' ').length < 10) {
  throw new Error('Product description must be at least 10 words')
}

Detection

  • ID: ecommerce-catalog.product-data.description-quality

  • Severity: low

  • What to look for: Count all product records available in the codebase: seed files (e.g., prisma/seed.ts, src/data/products.ts), fixture data, sample API responses, and database migrations with sample data. Sample at least 5 products (or all if fewer than 5 exist). For each sampled product, count the words in its description and check for placeholder patterns ("TBD", "No description", "Lorem ipsum", "Description goes here", "TODO").

  • Pass criteria: At least 90% of sampled products have non-empty, meaningful descriptions containing at least 10 words and no placeholder text. Report even on pass: "X of Y sampled products have meaningful descriptions (avg Z words)."

  • Fail criteria: More than 10% of sampled products have empty, null, or placeholder descriptions (fewer than 10 words or containing placeholder patterns).

  • Skip (N/A) when: The project is in very early development with no sample data, seed files, or fixture products anywhere in the codebase.

  • Cross-reference: For SEO implications of thin product descriptions, the SEO Fundamentals audit covers content quality and meta description patterns.

  • Cross-reference: For content management workflows, the Pre-Launch audit covers content completeness and placeholder detection.

  • Cross-reference: For accessibility of product descriptions, the Accessibility Fundamentals audit covers alt text and meaningful content patterns.

  • Detail on fail: "3 of 10 sampled products have empty descriptions. Example: Product 'T-Shirt' in prisma/seed.ts has description: null" or "5 of 8 products use placeholder text (e.g., 'Product description goes here' in src/data/products.ts)"

  • Remediation: Populate product descriptions in prisma/seed.ts or src/data/products.ts with meaningful content that describes features, materials, and use cases. If using a CMS or database, ensure the product creation flow in src/app/api/products/route.ts validates description length:

    if (!description || description.split(' ').length < 10) {
      throw new Error('Product description must be at least 10 words')
    }
    

Taxons

History