ExplainerTechnical AEO

Canonical Tags and Duplicate Pages: When Engines Cite the Wrong URL

by 3 min read

Short answercanonical tags and duplicate pages

You get cited by an AI engine, which is good. The link goes to a tracking-parameter version of the page, or the print version, or the staging subdomain someone forgot to lock down, which is less good. Duplicate pages are an old SEO problem with a new consequence: engines that cite sources pick one URL, and if your site offers five versions of the same content, you do not control which one they pick.

How duplicates happen

Most duplicates are accidental.

  • URL parameters for tracking, sorting, or filtering: /pricing?utm_source=x and /pricing serve the same page.
  • Trailing slash and capitalization variants: /Pricing/ and /pricing.
  • HTTP and HTTPS, or www and non-www, both live.
  • Print, AMP, or mobile versions on separate URLs.
  • Syndicated content published on partner sites or Medium.
  • Staging or preview environments indexed by mistake.
  • Localized pages with identical content and no hreflang.

Each variant looks to a crawler like a separate page with the same text. The engine has to decide which to treat as the original, and its guess is not always yours.

What the canonical tag does

A <link rel="canonical" href="..."> in the head of a page says "this is a copy; the real one is here." Crawlers that respect it consolidate signals onto the canonical URL and tend to cite that URL rather than the duplicate.

In our testing, AI crawlers mostly respect canonicals, though not perfectly and not instantly. The tag is a strong hint rather than a command. It works best when it is consistent with everything else: the sitemap lists the canonical, internal links point to the canonical, and the canonical URL returns 200 with the full content.

Setting canonicals correctly

Every indexable page should have a self-referencing canonical. That sounds redundant, and it is the simplest protection against parameter variants, because the parameterized URL inherits the same tag pointing back to the clean URL.

Rules that avoid the usual errors:

  • Use the absolute URL, with scheme and host.
  • Point to a URL that returns 200, not a redirect.
  • Do not canonicalize a page to a different page with different content. That confuses the engine about what the page says.
  • Do not set a canonical on a page and also noindex it. Pick one.
  • Make sure the canonical in the HTML matches the one in any HTTP header, if you send both.

When canonicals are not enough

Some duplicates need stronger measures.

Syndicated content. If a partner republishes your article, ask them to add a canonical to your original. If they will not, the engine may cite them instead, and there is little you can do beyond publishing first and making your version clearly richer.

Separate domains. A canonical across domains works, but a redirect is more reliable if the duplicate domain has no reason to exist.

Staging environments. Block them with authentication, not just robots.txt or canonicals. A crawler that already fetched the staging version may keep it.

Near-duplicates. Two pages that say almost the same thing with slightly different facts are worse than exact duplicates, because the engine may surface the wrong fact. Merge them or make them clearly different.

The AI-specific angle

AI engines that answer from retrieved sources are choosing one passage from one URL. If three URLs on your site carry the passage, the citation may go to any of them. Beyond the untidy link, there is a measurement problem: your share of answer looks fragmented across URLs, and tracking which page is working becomes harder.

There is also a contradiction risk. If the duplicates drifted apart, one says the price is $40 and another says $45, and the engine quotes one while the user visits the other. Consolidation removes the risk.

How we check it

At AEO GEO Labs, duplicate detection is part of the technical review in every AI visibility audit. We crawl the site, group pages by content similarity, check which URL in each group has the canonical and which one the engines actually cite, and fix the mismatches. The fix is usually a template change plus a sitemap cleanup.

Start with your top pages

Take the ten pages you most want cited. For each, search the engines for its main question and note which URL is linked. If it is not the clean canonical, find out why. AEO GEO Labs offers a free on-page SEO checker that reports the canonical tag on any URL, which makes this check fast.

Keep reading

More on technical aeo

All posts

Rather not do it yourself? We'll get you named in AI answers.

Reading is the slow way. In 20 minutes we'll show you who ChatGPT recommends instead of you, and the three fixes we'd make first.

Book a call

Or get the free AI visibility report by email.

no strings, really