Technical SEO

Duplicate Content SEO: How to Detect and Fix It

Duplicate content is the same or nearly the same content on more than one URL. It isn't a penalty, but it splits signals and wastes crawls. Find it in Search Console and a crawl, then redirect, canonicalize or rewrite.

By SEORecheck Research Team, SEO auditorsPublished 8 min read

Duplicate content SEO visualized as matching content nodes grouped in amber, with one preferred version highlighted.
Detecting duplicates and choosing a preferred version

Duplicate content is the same or nearly the same content showing up at more than one URL, on your own site or on someone else's. In duplicate content SEO, the real risk isn't a penalty. The problem is that Google picks one version to index, and it may not be the one you want. Your links and signals also get split across copies, and crawls go to waste. You fix it by finding the duplicates and then redirecting, canonicalizing or rewriting them.

Does duplicate content hurt SEO?

Not as a penalty. Google says that "some duplicate content on a site is normal and it's not a violation of Google's spam policies" (Google Search Central, canonicalization). Google groups similar pages, picks one as the canonical and mostly shows only that one.

That still costs you something in practice:

  • The wrong URL ranks. Google may pick a URL with tracking parameters, an HTTP version or a printer page over your clean URL.
  • Signals get split. Links pointing to three versions of one page don't fully add up unless Google merges them. Google lists consolidating ranking signals as a main reason to choose a canonical (consolidate duplicate URLs).
  • Crawls go to waste. The same guide says that marking a canonical lets Googlebot spend its time on new and updated content instead of copies. That matters most on large sites (see crawl budget optimization).
  • Reports get messy. Clicks and impressions are spread across URLs, so it's hard to judge how a page really performs.

Copying is a different case. Republishing content from other sites "without adding any original content or value", or lightly rewording it, counts as scraping under Google's spam policies. Pages like that can be demoted or removed.

What causes duplicate content?

Most duplicate content comes from technical setup, not from people copying text. Google lists five common sources: region variants, device variants (separate mobile URLs), protocol variants (HTTP and HTTPS), site functions such as sorting and filtering, and accidental variants such as a demo or staging site left open to crawlers.

Here's how those sources usually show up on real sites:

Source Example URLs Usual fix
Protocol / host variants http://example.com/shoes and https://www.example.com/shoes Site-wide 301 to one HTTPS host
Trailing slash, case, index files /shoes, /shoes/, /Shoes, /shoes/index.html 301 to one format
Tracking and session parameters /shoes?utm_source=newsletter Self-referencing canonical on the clean URL
Sort and filter parameters /shoes?sort=price&color=red Canonical to the main category, or indexable landing pages only for filters people search for
Product variants /shirt-blue, /shirt-red with identical text One product URL with variant selector, or unique content per variant
CMS archives Tag, date and author archives repeating the same posts Noindex or remove thin archives
Printer / AMP / preview versions /post/print, /post?preview=true Canonical to the main URL, or block the preview
Staging or demo site staging.example.com indexed Password protection, then removal
Boilerplate-heavy pages Location pages that only swap the city name Rewrite with real local detail or merge
Syndicated or scraped copies Your article on a partner site or copycat domain Partner noindex; DMCA for scrapers

Pagination doesn't belong on this list by default. Page 2 of a category lists different items, so it isn't a duplicate of page 1. Our pagination guide explains why page 2 shouldn't be canonicalized to page 1.

How to find duplicate content on your site

Use three sources together: Search Console shows what Google decided, a crawl shows what your site actually generates, and search operators catch copies on other domains. Each one finds things the others miss.

1. Search Console Page indexing report

Open Indexing → Pages and look at the "Why pages aren't indexed" table. Three statuses matter here, as defined in Google's Page indexing report help:

  • Duplicate without user-selected canonical. The page is a duplicate with no canonical declared, so Google chose another URL as the canonical.
  • Duplicate, Google chose different canonical than user. You declared a canonical, but Google thinks another URL is a better one and indexed that one instead.
  • Alternate page with proper canonical tag. The page points correctly to an indexed canonical, so you don't need to do anything.

Google says these statuses are expected behavior, not errors. Only act when the URL Google picked isn't the one you want to rank. Export the example URLs and sort them by pattern (parameters, slashes, archives). The pattern usually points straight to the cause.

2. URL Inspection for single pages

Inspect any important URL and compare User-declared canonical with Google-selected canonical. If they're different, Google is overriding you. Search Console help notes that the Google-selected value can lag a few hours behind the live index, so don't worry about a fix that was deployed just this morning.

3. A full site crawl

Crawl the site with JavaScript rendering on, then look for:

  • Exact duplicates: pages with the same content hash on different URLs.
  • Near duplicates: pages whose main text is, say, 90% or more the same. Location pages and product variants usually show up here.
  • Duplicate titles, H1s and meta descriptions: a cheap but reliable sign of duplicate templates (see title tag optimization).
  • Canonical problems: missing canonicals, canonicals pointing to redirects, 404s or noindexed pages, and canonical chains.
  • Internal links to non-canonical URLs: for example, the menu linking to /shoes/ while the canonical is /shoes.

If you'd rather not set up a crawler, a free SEORecheck audit crawls your pages and flags duplicate titles and descriptions, missing or conflicting canonicals and redirect issues, with example URLs from your own site.

4. Search operators for copies elsewhere

Copy a distinctive sentence (10 to 15 words) from an important page and search for it in quotes. Results from other domains are syndication partners, scrapers or a staging copy of your own site. Searching site:yourdomain.com plus a quoted phrase also turns up internal copies that the crawler couldn't reach, such as old orphaned URLs.

How do you fix duplicate content?

Pick the fix based on whether the duplicate URL needs to exist for users. If it doesn't, redirect it. If it does (filters, tracking links, variants), keep it and point a canonical at the main version. If two pages are just very similar, rewrite or merge them.

Redirect when the duplicate doesn't need to exist

Google ranks redirects as the strongest canonicalization signal, rel="canonical" as strong, and sitemap inclusion as weak (consolidate duplicate URLs). Protocol, host, trailing-slash and old-URL duplicates should get a permanent redirect. Google also says it prefers HTTPS pages over HTTP versions as canonical unless there are issues or conflicting signals. Use a 301, not a 302 (see 301 vs 302 redirects).

Canonicalize when users need the duplicate URL

Sorted lists, tracked campaign links and print views all have a reason to exist. Add a canonical link in their <head> that points to the main URL, and put a self-referencing canonical on the main URL itself:

<!-- On https://www.example.com/shoes?sort=price -->
<link rel="canonical" href="https://www.example.com/shoes">

Google's guidance is to use absolute URLs and not to send conflicting signals. A canonical that points to one URL while the sitemap and internal links point to another is a hint Google will probably ignore. Our canonical tag guide covers how to set it up and the common mistakes.

Rewrite or merge near duplicates

Thirty city pages that differ by one word aren't a technical problem, so a canonical won't save them. Either give each page real local content (staff, address, service area, reviews, prices, photos) or merge them into one strong page and 301 the rest to it. If several pages target the same query with similar text, that's also keyword cannibalization. Merge them, and keep the URL that already has the most links and traffic.

Don't use these to fix duplicates

Google specifically warns against using these as canonicalization tools:

  • robots.txt blocking. Google can't crawl a blocked URL, so it can't see the canonical on it or merge its signals.
  • noindex. It removes the page from search entirely instead of passing signals to the main version. Use it for pages that should never rank (thin archives, internal search results), not as a substitute for a canonical.
  • The URL removal tool. It only hides URLs temporarily.
  • Mixed signals. For example, a canonical to A, a sitemap listing B and a hreflang pointing at C.

Handle syndicated and scraped copies

When partners republish your articles, Google's canonicalization troubleshooting guide says a cross-domain canonical isn't recommended, because the partner's pages are often very different. Instead, ask partners to block indexing of the syndicated copy. For copycat sites, the same guide points to DMCA requests or the hosting provider rather than canonical changes.

How to fix duplicate content on multilingual sites

Translated pages aren't duplicates of each other. Pages in the same language aimed at different regions (for example, en-US and en-GB) can be clustered as duplicates if the content is identical. Google says that when you use hreflang, the canonical should be in the same language (consolidate duplicate URLs). So never point the Spanish page's canonical at the English page. Give each regional variant a self-referencing canonical, link the versions with hreflang, and include genuine regional differences such as currency, delivery details and contact information.

What should you fix first?

Fix in order of how much traffic is at stake:

  1. Site-wide host and protocol duplicates. One redirect rule fixes thousands of URLs.
  2. Money pages where Google picked a different canonical. Check the product, service and category pages that bring in leads.
  3. Parameter explosions from filters and sorting, especially on stores.
  4. Near duplicate content templates (locations, variants, tag archives). These need editorial work, so plan them in batches.
  5. External copies, if scrapers outrank you for your own content.

After you deploy, wait for recrawl and then compare. In the Page indexing report, duplicate counts should fall and the canonicals you chose should appear in URL Inspection. That usually takes weeks, not days.

Key takeaways

  • Duplicate content isn't a penalty, but it lets Google pick the wrong URL, splits signals and wastes crawls.
  • Most duplicates come from technical setup: protocol and host variants, parameters, variants, archives and staging sites.
  • Detect them with the Page indexing report, URL Inspection, a rendered crawl and exact-phrase searches.
  • Redirect duplicates users don't need, canonicalize the ones they do, and rewrite or merge near duplicates.
  • Don't use robots.txt, noindex or URL removal to fix duplicates, and keep your canonical, sitemap and internal links consistent.
  • For syndicated copies, ask partners to noindex instead of relying on a cross-domain canonical.
All articles
A layered landscape tile connects to search nodes with a speed trail, illustrating image SEO best practices.

Technical SEO

Image SEO Best Practices: Alt Text, Formats, Speed (2026)

Image SEO means making images discoverable and understandable to Google with HTML img tags, descriptive alt text and file names, then keeping them fast with modern formats, correct sizing and smart lazy loading.

10 min read

Server log analysis for SEO: cyan crawl traces connect web pages to a server and glowing request records.

Technical SEO

Server Log Analysis for SEO: What Bots Really Crawl

Server log analysis for SEO means reading your web server's access logs to see which URLs Googlebot and other crawlers actually request, how often, and what status codes they get back.

10 min read

Blue pages joined by cyan links, each with an amber loop, illustrate pagination SEO best practices.

Technical SEO

Pagination SEO Best Practices: URLs, Canonicals, Links

Give every paginated page its own URL and self-referencing canonical, link pages with real <a href> links, avoid # page numbers, and make load more or infinite scroll fall back to crawlable pages.

10 min read