Skip to content
SERPCompass

Thin, duplicate and near-duplicate pages

Decide what each weak page is for. Expand a thin page with specific, useful information, or merge it into a stronger page and redirect it there. Send exact duplicates to the version you keep with a 301 redirect or a canonical tag. Rewrite near-duplicates, such as location pages built from one template, so each has something of its own.

Last updated 29 October 2026, when every step was checked against the vendor's documentation.

Why it matters

Google says it has no preferred word count, and its SEO starter guide says the length of content alone does not matter for ranking. What its guidance on helpful content asks is whether a page gives a substantial, complete description of its topic, with original information or analysis. SERPCompass flags pages under 200 words as a prompt to check that, not because Google sets a minimum: a short page that fully answers its question is fine.

When several pages carry the same content, Google decides which are duplicates and picks one as the canonical to show in search, consolidating signals on it. Google says duplicate content is not a violation of its spam policies and will not cause a manual action, but it can be a poor experience, it spends crawling time, and Google may pick a version you would not. A redirect and a canonical tag are both strong signals for the version you want.

Near-duplicates are pages whose main text is almost the same, most often a page per town or product variant built from one template with only a name changed. Google's spam policies list, under doorway abuse, pages targeted at specific regions or cities that funnel users to one page. Location pages that each give real local information are not that; pages that differ by a single word come close.

Google publishes no text-to-HTML ratio. SERPCompass notes pages with at least 50 words whose visible text is under 10% of the HTML, because a page that is mostly markup, inline scripts and styles makes visitors download a lot for little to read, and it often goes with thin text. It is a notice, our lowest severity.

The audit findings this guide fixes: Thin content (under 200 words); Exact duplicate content; Near-duplicate content; Low text-to-HTML ratio (under 10%).

Find every page with this problem

Run the free scan on your domain. On every page it crawls that is not marked noindex, it counts the words of visible text in the <body>, navigation, header and footer included, scripts and styles not, and flags pages under 200 words as thin. It then compares the indexable pages that do not point their canonical at another page and have at least 50 words: pages whose text is exactly the same, ignoring case and spacing, are exact duplicates. For near-duplicates it compares only the main content (the <main> element, or the page without its navigation, header, footer and sidebars) and flags pages that share at least 90% of their three-word phrases with another page, an estimate from a compact fingerprint of each page; exact duplicates are not listed again. Pages that name each other as hreflang versions in the same language, such as English for the US and the UK, are never paired. Pages with at least 50 words whose visible text is under 10% of the HTML's bytes get the text-to-HTML note. The scan shows your most urgent findings with the number of pages each affects; the Gap Report and a SERPCompass workspace list the pages and, for a near-duplicate, its closest match and how much of its text is the same. In Google Search Console, the Page indexing report lists the pages Google treats as duplicates, under Duplicate without user-selected canonical and Duplicate, Google chose different canonical than user.

Scan my site free

How to fix it on your platform

Copies of your pages on other websites are not covered: the audit compares pages within the one site it crawls.

WordPress with Yoast SEO

  1. To keep a page out of search results while visitors can still use it, open it in the editor, open the Yoast SEO sidebar with the Yoast icon at the top right, or the meta box below the content, and in the Advanced tab set Allow search engines to show this content in search results to No. Only editors and administrators see the Advanced tab by default.
  2. To keep a whole kind of thin page out, such as tag or date archives, go to Yoast SEO > Settings, open it under Content types, Categories & tags or Advanced, slide its toggle off and click Save changes.
  3. To merge a page into another with Yoast SEO Premium, open its Redirects feature, enter the old address in Old URL and the page you keep in New URL, choose 301 (Moved Permanently) and click Add redirect. When you delete a post or page, Premium offers to set up a redirect. The free plugin has no redirects.

Sources: How do I noindex URLs? (Yoast); How to create a 301 redirect in WordPress (Yoast).

WordPress with Rank Math

  1. Open the post or page and click the Rank Math icon at the top right of the screen, then open the Advanced tab.
  2. To keep the page out of search results, select No Index under Robots Meta.
  3. To merge the page into another, turn on the redirect in the same tab, choose 301 as the Redirection Type and enter the page you keep as the Destination URL. The redirect also appears in Rank Math's Redirect Manager.
  4. Or switch Rank Math to Advanced Mode, enable the Redirections module, go to Rank Math SEO > Redirections and click Add New: enter the old address in Source URLs, the page you keep in Destination URL, and choose 301.

Sources: General tab in the meta box (Rank Math); Advanced tab in the meta box (Rank Math); Setting up redirections (Rank Math).

Shopify

  1. To merge a page or product into another, delete the old one first: Shopify only redirects addresses that no longer load a page.
  2. Then go to Content > Menus, click View URL Redirects and Create URL redirect. Enter the old address in Redirect from and the page you keep in Redirect to, and click Save redirect.
  3. To keep a page, product or blog post out of search engines, go to Settings > Metafields and metaobjects, choose the resource type and add a definition with Namespace and key seo.hidden, type Integer, one value and a maximum value of 1. Then set SEO Hidden to 1 on the item and save; it also leaves your sitemaps and store search.

Sources: URL redirects (Shopify Help Center); Hide a page from search engines (Shopify Help Center).

Wix

  1. To merge a page into another, go to SEO & GEO in your site's dashboard, scroll to Tools and settings and click URL Redirect Manager. Click + New Redirect, choose Single redirect, enter the old path in Old URL, choose the page you keep and click Save. Redirects work on a custom domain only, and not from the home page.
  2. To keep a page out of search results, go to your editor, click Pages & Menu, click the More Actions icon next to the page, click SEO basics and turn off Let search engines index this page.

Sources: Setting up a 301 redirect for a page on your site (Wix Help Center); Preventing search engines from indexing your page (Wix Help Center).

Squarespace

  1. To merge a page into another, delete or disable the old page first: Squarespace redirects only from a page that has been deleted or disabled.
  2. Open the Developer tools panel, click URL mappings, add a line such as /old-page -> /page-you-keep 301 and click Save.
  3. To keep a page out of search results, open the Pages panel, hover over the page, click the gear icon, open the SEO tab and turn on Hide page from search results. On a collection page it hides every item in it, such as blog posts; the home page and single collection items have no such toggle.

Sources: URL mappings (Squarespace Help Center); Hiding your site from search results (Squarespace Help Center).

Plain HTML

  1. To merge a page into another, answer its old address with a permanent redirect to the page you keep. In Apache: Redirect permanent "/old-page/" "https://www.example.com/page-you-keep/".
  2. When both versions must stay reachable, such as a print version, add <link rel="canonical" href="https://www.example.com/page-you-keep/"> to the copy. Use one method per page, and link to the address you keep in your own menus and links.
  3. To keep a page out of search results, add <meta name="robots" content="noindex"> to its <head>, and do not block it in robots.txt, or Google never sees the tag. Do not use noindex to choose between duplicates: Google recommends a canonical for that.
  4. To raise a low text-to-HTML ratio, move large inline <script> and <style> blocks into separate files, loaded with src and <link rel="stylesheet">, and add the text the page is missing.

Sources: Redirects and Google Search (Google Search Central); mod_alias (Apache HTTP Server documentation); How to specify a canonical URL with rel="canonical" and other methods (Google Search Central); Block search indexing with noindex (Google Search Central); The script element (MDN).

Examples

  • Bad
    /plumber-coimbatore/  Corner Plumbing offers fast, friendly plumbing in Coimbatore.
    /plumber-tiruppur/    Corner Plumbing offers fast, friendly plumbing in Tiruppur.
    /plumber-erode/       Corner Plumbing offers fast, friendly plumbing in Erode.

    Only the town changes: near-duplicates that compete with each other and tell a visitor nothing new.

  • Good
    /plumber-coimbatore/  office address and hours, the areas the van covers, prices for common jobs,
                          photos of recent local work, reviews from Coimbatore customers

    Each town page says what is true only of that place, or the towns share one service-area page.

  • Good
    <!-- on /services/drains/print/ -->
    <link rel="canonical" href="https://www.example.com/services/drains/">

    A print copy that must stay reachable names the page it copies.

  • Good
    Redirect permanent "/blog/drain-tips-2024/" "https://www.example.com/blog/drain-tips/"

    A thin older post merged into the fuller one, with a 301 from its old address.

Common mistakes

  • Padding a page with filler to pass a word count. Google says it has no preferred word count, and our 200 is a prompt to look, not a target.
  • Redirecting every merged page to the home page instead of to the page that covers the same topic.
  • Blocking duplicates in robots.txt. Google advises against it: a blocked address can still be indexed without its content, and Google cannot read a canonical or noindex on it.
  • Naming different canonicals by different methods, such as one address in the sitemap and another in the canonical tag.
  • Noindexing one duplicate to make Google pick the other. Google recommends a canonical for that.
  • Changing only the town name, or swapping a few words, across template pages.

Questions and answers

How many words should a page have?

There is no set number. Google says it has no preferred word count and that the length of content alone does not matter for ranking. SERPCompass flags pages under 200 words as a prompt to check whether the page says enough for its purpose. A contact page can be short; a service page that leaves a buyer's obvious questions unanswered is thin at any length.

Will duplicate content get my site penalized?

Google says duplicate content on your own site is not a violation of its spam policies and will not cause a manual action. It picks one version to show, which may not be the one you prefer, and spends crawling time on the rest. Copying other sites' content is a different matter: Google's spam policies cover scraping.

Should I use a redirect or a canonical tag?

Use a 301 redirect when the old page should go away, for example after merging two pages, so visitors and search engines both land on the one you keep. Use a canonical tag when both versions must stay reachable, such as a print version. Google treats both as strong signals; do not point the same page at different canonicals with different methods.

What is a good text-to-HTML ratio?

Google publishes no target. SERPCompass notes pages with at least 50 words whose visible text is under 10% of the HTML, as a sign the page may be mostly code. On a site builder you rarely control the markup, so concentrate on the text; where you write the HTML, move large inline scripts and styles into files.

Are my location pages near-duplicates?

They are when only the place name changes. Google's spam policies list pages targeted at specific regions or cities that funnel users to one page under doorway abuse. Give each location page information that is true only of that place, such as its address, hours, area, prices or local work, or combine the places into one page.

Start with a free scan of your site.

Two to five minutes, no account. You get your three most urgent findings, and the exact count of everything else.

Free, 2–5 minutes, no account needed.