A canonical identifies the preferred document; it does not erase variant or market context needed to interpret an offer.
| URL shape | Expected behavior |
|---|---|
/products/handle |
preferred product path |
/collections/x/products/handle |
same product, normally canonical to product path |
?variant=123 |
selected variant recoverable |
| localized path/domain | language, currency, offer and alternates coherent |
| old handle | direct redirect to intended replacement |
The Woobles request redirected to an en-ca path while retaining product identity. Mattel resolved to Canadian content with CAD offer and a non-localized canonical. These are not automatically wrong; audit final URL, canonical, locale, currency, availability, and hreflang together.
url='https://example.com/collections/x/products/item?variant=123'
curl -sSIL --max-redirs 10 "$url"
curl -sSL "$url" | rg -o '<link[^>]+canonical[^>]*>|<link[^>]+hreflang[^>]*>'
Fail redirect loops, homepage fallbacks, another-product canonicals, wrong-market offers, and variant links that do not select the requested item.
Related guide: Diagnose canonical URLs.