agentic‑readiness docs
/
Scan at scale Blog Build one › Run a scan ›

Scan at scalePages with a broken canonical

Pages with a broken canonical

A per-URL report: one row per page that matches, over the pages a crawl reached.

What this report returns

A canonical URL tells crawlers and AI agents which URL is the master copy of a page, so duplicate versions consolidate instead of competing.

These pages declare a canonical that won't be honoured: an empty href, a tag outside the document head, conflicting targets, or a non-http(s) URL, so consumers ignore the declaration and pick a version themselves.

How to fix it. Keep exactly one declaration per page, an absolute URL in a single head tag: <link rel="canonical" href="https://www.example.com/page">. Spec: RFC 6596. (Relative / cross-origin are shown for context but are not validity failures.)

The columns it shows

Every defect this technology can carry is a column in the grid, worst first, so nothing is hidden behind a filter you have to know to apply.

  • Canonical ValidcanonicalValid
  • Canonical FindingscanonicalFindings
  • Canonical Resolved TargetscanonicalResolvedTargets
  • Canonical HrefscanonicalHrefs
  • Canonical SourcescanonicalSources
  • Canonical Outside HeadcanonicalOutsideHead
  • Canonical ConflictingcanonicalConflicting
  • Canonical Empty HrefcanonicalEmptyHref
  • Canonical Invalid URLcanonicalInvalidUrl
  • Canonical RelativecanonicalRelative
  • Canonical Cross-OrigincanonicalCrossOrigin

About Canonical URL

Tells an agent which address is the real one for this page.

Read how Canonical URL is checked, including the specification it is validated against and a worked correct and broken example.

Running it

This report ships in the Lumar agent-readiness container and appears on any project it is linked to, on every crawl. See the whole set, or check a single URL with the scanner on this site, which runs the same code with no account.

Get Lumar pricing