# Why IndieCanonical exists

> One page in, then a plain answer about its canonical and hreflang signals.

By turushan.

Published: 2026-09-03T00:00:00.000Z

Updated: 2026-09-18T20:00:22Z

Canonical: https://indiecanonical.com/blog/why-indiecanonical-exists/

A page can name one URL as its preferred version. It can also name localized versions for different
languages or regions. Those signals are small link declarations, but mistakes can split the story:
two canonicals can disagree, a preferred URL can point onward again, or one language page can fail
to link back.

IndieCanonical puts those relationships in one answer. Enter a public page URL. The checker reads
its HTTP `Link` header and server-delivered HTML head. It resolves the declared canonical, checks one
non-self target, and asks each bounded hreflang target whether it links back to the entered page.
Every observed URL links to the page that supplied it. Every rule links to the primary documentation
read on 2026-09-03.

Google describes a canonical annotation as a strong hint, not a command. A cross-host canonical can
be intentional. A page with no localized variants does not need hreflang. IndieCanonical preserves
those distinctions instead of turning every unusual shape into an error.

The limits matter. The Worker follows up to five redirects under one nine second budget, reads at
most 256 KB per page, and checks the first twelve unique non-self hreflang targets. It does not run
client-side JavaScript, inspect sitemaps, compare whether two pages are duplicates, or report the
canonical a search engine ultimately selected.

The core stays free. There is no account, card, premium plan, or public lookup history. The page has
no analytics tracking and no stored lookup history. One page goes in, one honest answer comes back, and the
source stays beside the fact it produced.

Read [declared canonicals and search-engine selection](https://indiecanonical.com/#does-the-check-show-which-canonical-google-chose). Use [IndieCanonical](https://indiecanonical.com/) to inspect a public response's canonical and hreflang declarations.

## Sources

- https://developers.google.com/search/docs/crawling-indexing/consolidate-duplicate-urls
- https://developers.google.com/search/docs/specialty/international/localized-versions
- https://html.spec.whatwg.org/multipage/links.html
