🔴 Broken — will cause problems

This page's canonical points to https://sallymills.com/canonicals/this-page-does-not-exist/ — a URL that genuinely returns a 404. To verify, open Command Prompt (Windows) or Terminal (Mac) and run: curl -I https://sallymills.com/canonicals/this-page-does-not-exist/

What this demonstrates

The canonical tag on this page points to a URL that doesn't exist. There is no page at /canonicals/this-page-does-not-exist/ — visiting it returns a genuine 404. Google can't consolidate signals to a destination that returns an error response.

Why it matters

Google ignores a canonical pointing to a 4xx response and treats the current page as its own canonical instead. The intended consolidation doesn't happen — the page that was supposed to inherit ranking signals doesn't, and this page may be indexed independently despite the canonical instruction.

This is a common post-migration failure. The canonical destination was deleted, the URL structure changed, or the page was removed — but the canonical tag wasn't updated. It's easy to miss in a standard crawl because the source page looks fine; you have to follow the canonical destination to spot the problem.

The code

This is the canonical tag on this page. The destination URL returns a 404.

<!-- Broken: canonical destination returns 404 --> <link rel="canonical" href="https://sallymills.com/canonicals/this-page-does-not-exist/">

What Google does

  1. Googlebot crawls this page and reads the canonical pointing to /canonicals/this-page-does-not-exist/.
  2. Googlebot attempts to crawl the canonical destination.
  3. The destination returns a 404. Google cannot verify it as a valid preferred URL.
  4. Google ignores the canonical hint entirely.
  5. This page is treated as its own canonical and may be indexed independently.

How to detect it

  • view-source Ctrl+U (Windows) / Cmd+U (Mac) → search for canonical → copy the href value and paste it into your browser. A 404 page will load instead of the expected destination.
  • curl Open Command Prompt (Windows) or Terminal (Mac) and run: curl -I https://sallymills.com/canonicals/this-page-does-not-exist/ — The response will show HTTP/1.1 404, confirming the canonical destination doesn't exist. The -I flag fetches headers only (a HEAD request).
  • Google Search Console This page may appear under "Crawled — currently not indexed" or under its own canonical in Coverage, rather than being shown as an alternate of the intended destination.
  • Screaming Frog Canonicals tab → "Canonical URL" column shows the destination → crawl that destination URL → its status code will show 404. Use "Follow Canonicals" mode to surface this automatically.

How to fix it

Update the canonical to point to a real, crawlable, 200-status URL. If the intended canonical destination has been deleted or moved, either restore it, redirect it, or update all canonical tags pointing to it. Audit canonical destinations after any migration or URL restructure — not just the source pages.