Hreflang for Canadian Sites: English and French
How to set up hreflang tags for Canadian websites with English and French content. Covers en-CA, fr-CA, bilingual requirements, and implementation for sites targeting Canada alongside other regions.
Canada is officially bilingual, with English and French as its two official languages. For website owners targeting Canadian users, this means thinking about both languages from the start. Hreflang tags help Google serve the right language version to users in Canada and prevent the wrong version from appearing in search results. For a general overview of how hreflang works, see our complete hreflang guide.
This guide covers the hreflang codes for Canadian content, common configurations, and how to handle Canada alongside other English-speaking and French-speaking markets.
Canadian Hreflang Codes
The two codes you need for Canada:
| Code | Meaning |
|---|---|
| en-CA | English for Canada |
| fr-CA | French for Canada |
These follow the standard format: ISO 639-1 language code, hyphen, ISO 3166-1 alpha-2 region code. The language code is lowercase, the region code is uppercase.
When to Use Canadian-Specific Codes
Use en-CA and fr-CA when your content is specifically tailored for Canadian users. This typically means:
- Prices are in Canadian dollars (CAD)
- Legal content references Canadian law (PIPEDA, CASL, provincial regulations)
- Product availability reflects the Canadian market
- Contact information, addresses, or phone numbers are Canadian
- Content references Canadian institutions, services, or cultural context
If your content is generic English or French without any Canadian-specific elements, you probably do not need the -CA suffix. A blog post about general marketing tips, for example, does not need a Canadian version unless you have localized it.
Common Configurations
Canada-only bilingual site
If your site serves only Canadian users in both English and French:
<link rel="alternate" hreflang="en-CA" href="https://example.ca/en/page/" />
<link rel="alternate" hreflang="fr-CA" href="https://example.ca/fr/page/" />
<link rel="alternate" hreflang="x-default" href="https://example.ca/en/page/" />
This is the simplest Canadian setup. English-speaking users in Canada see the English version. French-speaking users in Canada see the French version. The x-default tag specifies the fallback for users outside Canada or with a non-matching language preference.
Canada plus the United States
Many businesses serve both countries. The US market is English-only, while Canada is bilingual:
<link rel="alternate" hreflang="en-US" href="https://example.com/en-us/page/" />
<link rel="alternate" hreflang="en-CA" href="https://example.com/en-ca/page/" />
<link rel="alternate" hreflang="fr-CA" href="https://example.com/fr-ca/page/" />
<link rel="alternate" hreflang="x-default" href="https://example.com/en-us/page/" />
Users in the US see en-US. English-speaking users in Canada see en-CA. French-speaking users in Canada see fr-CA. Everyone else falls to x-default.
Canada, US, UK, and France
A fully international English/French setup:
<link rel="alternate" hreflang="en-US" href="https://example.com/en-us/page/" />
<link rel="alternate" hreflang="en-GB" href="https://example.com/en-gb/page/" />
<link rel="alternate" hreflang="en-CA" href="https://example.com/en-ca/page/" />
<link rel="alternate" hreflang="fr-FR" href="https://example.com/fr-fr/page/" />
<link rel="alternate" hreflang="fr-CA" href="https://example.com/fr-ca/page/" />
<link rel="alternate" hreflang="x-default" href="https://example.com/en-us/page/" />
This covers four markets with five content variants. French speakers in Canada get fr-CA, French speakers in France get fr-FR. English speakers are split across US, UK, and Canada. For details on the French side of this setup, see our hreflang for French guide.
Canada plus generic English and French fallbacks
If you want to cover Canadian users specifically while also serving global English and French audiences:
<link rel="alternate" hreflang="en" href="https://example.com/en/page/" />
<link rel="alternate" hreflang="en-CA" href="https://example.com/en-ca/page/" />
<link rel="alternate" hreflang="fr" href="https://example.com/fr/page/" />
<link rel="alternate" hreflang="fr-CA" href="https://example.com/fr-ca/page/" />
<link rel="alternate" hreflang="x-default" href="https://example.com/en/page/" />
Here, en catches English speakers outside Canada. fr catches French speakers outside Canada. The -CA variants handle Canadian users specifically.
Canadian English vs. American English
Canadian English is very close to American English. The main differences:
Spelling. Canadians use a mix of British and American spelling. "Colour" and "favourite" follow British convention, but "realize" and "organize" follow American convention. In practice, the variation is inconsistent, and most Canadians accept both forms.
Vocabulary. Some words differ: "toque" (not "beanie"), "washroom" (not "restroom"), "loonie" and "toonie" for currency. These are minor but can affect local credibility.
Measurement. Canada uses the metric system officially, but imperial measurements persist in everyday conversation (especially for height and weight). Content about physical products may need to account for this.
For most websites, the differences between Canadian and American English are not significant enough to justify separate content versions on language grounds alone. The real reasons for an en-CA version are typically pricing, legal compliance, and product availability.
Canadian French vs. France French
The differences between Quebec French and France French are more significant than the English divide. Vocabulary, expressions, and sometimes grammar differ noticeably. For a detailed comparison, see our hreflang for French guide.
Key points for Canadian sites:
Quebec French is the standard for Canadian French content. If you are creating fr-CA content, write in Quebec French, not France French. Quebecois readers will notice if your French reads like it was written in Paris.
Formal vs. informal register. Quebec French tends to be less formal in everyday communication than France French. Marketing copy and customer-facing content should match the local tone.
Translation sources matter. If you are translating from English to French for a Canadian audience, use translators familiar with Quebec French. A translator in France will produce content that sounds foreign to Quebecois readers.
Canadian Legal and Compliance Considerations
Several Canadian regulations affect how you structure multilingual content.
Federal bilingual requirements
If your organization falls under the Official Languages Act (federal government institutions, federally regulated businesses), you are legally required to provide services in both English and French. This is not just an SEO consideration -- it is a legal obligation.
CASL (Canadian Anti-Spam Legislation)
Marketing emails and consent mechanisms for Canadian users need to comply with CASL. Your en-CA and fr-CA pages that handle email signups should reflect this.
PIPEDA (Personal Information Protection and Electronic Documents Act)
Your privacy policy for Canadian users needs to address PIPEDA requirements. This is separate from GDPR (for EU users) or CCPA (for California users). Having a en-CA version of your privacy policy that specifically addresses Canadian privacy law is good practice.
Quebec's language laws
Quebec has its own language legislation (notably Bill 101 and Bill 96) that requires French to be at least as prominent as English in commercial communications targeting Quebec. If you operate in Quebec, your website may need to give equal or greater prominence to French content.
Provincial differences beyond Quebec
Most provinces operate primarily in English, but New Brunswick is officially bilingual. If you specifically target New Brunswick, both English and French content are expected. For the rest of English-speaking Canada, French content is appreciated but not legally required for private businesses.
URL Structure for Canadian Sites
The three common approaches for Canadian bilingual sites:
Subdirectories
example.com/en-ca/page/
example.com/fr-ca/page/
The most common and simplest approach. Everything stays on one domain, and language routing is handled through the URL path.
Subdomains
en.example.ca/page/
fr.example.ca/page/
Less common. Provides clear separation but adds hosting complexity.
.ca domain with language paths
example.ca/en/page/
example.ca/fr/page/
Using a .ca domain is a strong geotargeting signal to Google. Combined with hreflang tags, this tells Google that the site is for Canadian users and provides separate English and French versions.
For a full comparison of URL structure options, see our ccTLD vs. subdomain vs. subdirectory guide.
Common Mistakes
Using fr for Canada-specific French content
If your French content is written specifically for Canadian users (Quebec French, Canadian pricing, Canadian legal references), use fr-CA, not fr. Using fr tells Google the content is for all French speakers, which may cause it to serve your Canadian content to users in France, Belgium, or Switzerland.
Forgetting return links
Every hreflang relationship must be bidirectional. If your en-CA page references fr-CA, the fr-CA page must reference en-CA back. Missing return links are the most common hreflang error. See our troubleshooting guide for help diagnosing this.
Using en-CA and en-US with identical content
If your English Canadian and English American pages are exactly the same, there is no benefit to having separate versions. Either differentiate the content (pricing, legal terms, local references) or use a single en version for both markets.
Not including self-referencing tags
Every page in a hreflang set must include a tag pointing to itself. The fr-CA page must include hreflang="fr-CA" with its own URL. This is required for the hreflang set to be valid.
Pointing x-default to a language-specific page without thinking it through
For Canadian sites, x-default should point to whatever makes sense for users outside your defined markets. If you primarily serve Canada, pointing x-default to your en-CA page is reasonable. If you also serve the US and other countries, pointing x-default to a generic en page or a language selector is better.
Testing Your Canadian Hreflang Setup
After implementing your tags, verify them:
- Confirm every page includes the full set of hreflang tags, including self-referencing entries
- Check that all URLs are absolute, not relative
- Verify return links exist on every page in the set
- Ensure each URL returns a 200 status (not a redirect)
- Look at Google Search Console's International Targeting report for errors
For a thorough review, see our hreflang troubleshooting guide.
Summary
Canadian hreflang boils down to serving English and French content to the right users. Use en-CA and fr-CA when your content is specifically for Canada. Use generic en and fr when it is not. If you serve multiple English-speaking and French-speaking markets, add regional codes for each and include generic fallbacks for unmatched users. Always check return links, self-referencing tags, and URL consistency.
Generate hreflang tags for your Canadian site
Enter your English and French URLs, select your regions, and get copy-paste-ready hreflang tags.
Try Hreflang Generator