Hreflang implementation for Canadian bilingual sites uses the en-CA and fr-CA codes specifically (not just 'en' and 'fr', which signal generic English and generic French to Google). The full hreflang setup for a typical Canadian bilingual page: ```html <link rel="alternate" hreflang="en-CA" href="https://example.com/en/page/" /> <link rel="alternate" hreflang="fr-CA" href="https://example.com/fr/page/" /> <link rel="alternate" hreflang="x-default" href="https://example.com/en/page/" /> ``` Key requirements: **Reciprocity.** Every hreflang annotation must be reciprocated. If your en-CA page declares fr-CA as an alternate, the fr-CA page must also declare en-CA as an alternate, and both should also self-reference. **Self-reference.** Each language version should include a hreflang tag pointing to itself with its own language code. **X-default fallback.** Specify which language Google should serve when the user's language preference doesn't match any of your declared alternates. For most Canadian bilingual sites, this defaults to the English version. **Consistent implementation method.** Implement hreflang in only one location per page — HTML head, HTTP headers, or XML sitemap. Mixing methods causes Google to ignore the annotations entirely. For larger sites with many language variants, XML sitemap implementation is typically more maintainable than HTML head implementation. **Absolute URLs.** Always use absolute URLs in hreflang annotations, including protocol (https://) and full domain. Relative URLs are technically valid but cause more implementation errors. **Validation.** Use Google Search Console's International Targeting report (under Legacy Tools) to monitor hreflang errors. Common errors include: missing reciprocal annotations, incorrect language codes (using 'fr-FR' instead of 'fr-CA'), URLs pointing to redirected or non-existent pages, and inconsistent implementation methods. For bilingual sites with significant Quebec audience, consider also implementing fr-FR variants if you actively serve France-based French speakers; otherwise fr-CA is sufficient and signals Quebec-specific French to Google.