← All checks
SEO & AI Visibilitylowduplicate-meta-description

Two or more crawled pages share an identical meta description

ShipReady found the same non-empty meta description on two or more distinct paths among the pages its crawl fetched.

Why it matters

A meta description is text a page offers as a summary of itself. When several pages offer the same text, it does not describe any of them specifically, which often means one layout default was never overridden.

This page documents what ShipReady measured. It does not claim any effect on search ranking, snippets or indexing.

How ShipReady detects it

What it inspects

ShipReady reads the meta description from pages the crawl had already fetched, using the same extraction patterns as its single-page metadata rules. It makes no additional requests.

Values are compared after HTML entities are decoded and whitespace is collapsed. Case and punctuation are not altered, so "Pricing" and "PRICING" are different values.

Pages are identified by URL path with the query string and any trailing slash removed, so /checkout?plan=pro and /checkout?plan=max count as one page.

What triggers a finding

The same normalised, non-empty meta description appears on at least two distinct paths in the crawled sample.

Unlike titles, a scaffold-default description is still reported; the scaffold exclusion applies only to titles.

At most three duplicate groups are reported per scan, the quoted value is truncated to 120 characters, and the evidence names at most five paths per group. The total page count is not capped.

What the evidence shows

The quoted description text was served identically by each listed path in the HTML ShipReady fetched during this scan.

Limits of this check

Only pages fetched within the crawl budget (ten pages by default) are compared, so a clean result does not mean every page on the site has a unique description.

Descriptions injected only by JavaScript are not seen. The extraction pattern reads quoted name and content attributes, so unusual tag markup may not be matched. Pages with no description, or an empty one, are never treated as sharing a value.

Only exact matches after normalisation are reported; near-duplicates and case or punctuation differences are not.

ShipReady does not observe which snippet a search engine displays, and does not judge whether a shared description is intentional.

How to fix it

Find where the shared description is set

Look for a root layout or shared head component that supplies a default description every route inherits.

Write a description for each distinct page

Describe what that page offers. If a page has nothing distinct to say, omitting the description is preferable to repeating another page's.

How to verify the change

Compare the deployed descriptions

Fetch each listed path and read the meta description in the returned HTML. Then re-run the scan.

Expected: Each listed path returns a description distinct from the others, and the finding no longer appears for that group.

Related checks