Check Engine / Checks / Reference

Do your canonical tags name the right pages?

It checks missing, conflicting, off-site and unusable canonical targets.

What Check Engine measures

The check reads canonical declarations from indexable pages. Distinct target strings after trailing-slash handling identify conflicts. It separates off-site targets from hosts whose last 2 domain labels match, recognises declared syndication, and checks saved targets for indexability. Redirect aliases and default-index spellings are treated differently from a genuinely different page. A non-self canonical can produce a low-severity result when a stronger target problem was not already reported. For example, hosts sharing their last 2 domain labels receive different handling from an unrelated off-site host.

The check compares canonical tags, redirects, measured target pages and selected wording about republished content. An uncrawled target can remain unknown. Check the intended destination before changing a declaration.

How to read the result

Missing canonicals are medium, conflicts and noindex targets high, and unrelated off-site targets critical. Declared syndication is medium. Spelling aliases and other non-self targets are low. These cases preserve the difference between a deliberate relationship and a template mistake.

Why it matters

A canonical is a statement about which address should represent content. Checking the actual target matters because a syntactically valid tag can still name another domain, an excluded page or an address that redirects back to the source.

How to fix it

Choose the intended representative URL for the content. Make the HTML declaration consistent, use the final address where appropriate and check that the target can be indexed. Preserve intentional syndication after confirming the agreement. Fix shared templates before editing individual pages when the same wrong host appears throughout the site.

How to fix conflicting canonical tags

What we found in field audits

Problems in Crawlability & indexing were found on 12 of the 14 sites we audited. These are area totals. Read the field-audit method.

Method note

backend/seo_engine/checks/indexability.py, canonicals, revision 0bb8e8d3.

Common questions

Is an off-site canonical always treated as a critical error?

No. Declared syndication is medium. Unrelated off-site targets get critical severity, so review the intended relationship first.

Can a canonical pointing to a noindex page be high severity?

Yes. The report rates noindex targets high, along with conflicting canonicals. Check whether the intended representative page can be indexed.

Does the canonical check treat trailing slashes as distinct targets?

The comparison applies trailing-slash handling before checking distinct target strings. Other address differences can still need review.