What is bilingual website development, English and French?
Bilingual website development in English and French means building one site where both languages are first-class: each has its own addresses, navigation, content and search presence, and visitors can move between them without losing their place. It is a build decision, made before the first template is coded.
The alternative, which is still common in Canada, is an English site with French added afterwards: a widget that machine-translates on the fly, a single French landing page, or a PDF. Those shortcuts look cheaper on day one and cost more later, because the French never quite matches, search engines cannot find it and every English update widens the gap.
A proper build touches more than text. Dates, numbers and currency are formatted differently in French. Buttons and menu labels get longer. Forms need French error messages and confirmation emails. Structured data, page titles and image alt text need French versions. A developer who plans for this at the start can handle it in one pass; one who meets it at the end patches it page by page.
When does a Canadian business need a bilingual website?
You need English French bilingual website development when a meaningful share of your customers prefers French, when you sell in Quebec, or when funders, partners or public clients expect both languages. Many businesses outside Quebec choose it simply to reach French-speaking customers in Ontario, New Brunswick and Manitoba.
For businesses selling into Quebec, French is not optional for commercial content; the Charter of the French language covers that and we explain it on our Bill 96 website requirements page. Elsewhere, bilingual website development is a market choice. It makes most sense when you can keep the French current: a bilingual site with stale French pages sends a worse signal than an English-only site that is honest about it.
- Retail and ecommerce shipping to Quebec customers
- Professional services in Ottawa, Gatineau and Moncton serving both communities
- Tourism and hospitality welcoming French-speaking travellers
- Suppliers bidding for bilingual public-sector or institutional contracts
- Nonprofits and associations with members across provinces
Subfolders, subdomains or separate domains for English and French?
For most Canadian businesses doing bilingual website development in English and French, subfolders such as example.ca/en/ and example.ca/fr/ are the simplest and strongest choice: one site, one hosting account, one domain building authority for both languages. Separate domains make sense when each language has a distinct brand name.
Google's guidance on managing multilingual sites lays out the trade-offs. Subdirectories are easy to set up and cheap to maintain on a single server; subdomains are easy and allow different servers; country-code domains are clear but more expensive and involve more infrastructure. Google does not recommend URL parameters, and it recommends different URLs for each language version rather than cookies or browser settings to swap content.
That last point rules out a surprisingly common setup: one URL that shows English or French depending on a cookie. Search engines crawl with no cookie and see only one language, so the other language effectively does not exist in search. When we inherit a site built that way, the first job in any bilingual website development project is giving French its own addresses.
Translated slugs
French pages read better and earn clicks with French slugs, such as /fr/services/renovation-cuisine/ rather than /fr/services/kitchen-renovation/. WPML, Polylang and Shopify all support translated slugs; we plan the redirects if slugs change later.
Root URL
The bare domain can serve your main language, or a simple language chooser. We never auto-redirect it based on browser language, because that traps visitors and crawlers.
How should hreflang be set up for en-CA and fr-CA pages?
Each English page lists itself as en-CA and its French twin as fr-CA, and each French page does the same in reverse; add x-default for the page you want shown when neither matches. If the links are not mutual, Google may ignore them.
Google's localized versions documentation spells out the format: a language code in ISO 639-1 format, optionally followed by a region code in ISO 3166-1 Alpha 2 format. So fr-CA means French for Canada and en-CA means English for Canada. The same document says HTML link tags, HTTP headers and XML sitemaps are equivalent ways to declare these, so we pick whichever your platform generates most reliably.
Two points trip people up. First, hreflang does not decide which language Google thinks a page is in; Google says it uses its own algorithms for that, so a French page must genuinely contain French. Second, if you also target France or the US with separate versions, you add those twins to every page's list. We validate hreflang with a crawl before launch and again in Search Console a few weeks after, because broken pairs are the most common bilingual SEO fault we see.
What makes a good language switcher on a bilingual website?
In bilingual website development, a good switcher is a plain text link, visible on every page including mobile, that takes the visitor to the same page in the other language. Label it with the language name written in that language: “Français” on English pages, “English” on French pages.
Flags are a poor choice for Canada: a Quebec fleur-de-lis or a French tricolour both carry meaning people may not want attached to a language choice, and neither says “French for Canada”. Dropdowns hidden inside hamburger menus are another trap; people who need the other language should not have to hunt for it.
The hard part is the “same page” behaviour. If a page has no French twin yet, the switcher should say so or go to the closest French parent, not dump the visitor on the French homepage. Google also advises against automatically redirecting users between language versions and suggests linking to the other language instead, which is what a visible switcher does. We remember a visitor's choice for their next visit, but we never override the URL they clicked.
Why do bilingual layouts need to be designed for French text?
French copy is often longer than the English it translates, so layouts designed only with English text break when French arrives: buttons wrap, menus spill onto two lines and headings push images out of place. Designing with both languages from the start avoids the late scramble.
In practice, our bilingual website development starts by designing every component with a “long French” test string. Buttons get flexible widths instead of fixed ones. Navigation is planned for the longest label in either language. Card grids tolerate headings of different lengths. Hero text sits on backgrounds that can take an extra line. Tables and pricing grids get a mobile layout that does not depend on short words.
French typography has its own conventions too: guillemets « » for quotes, different spacing around some punctuation, and different number and currency formatting. Your translator decides the conventions; we make sure the templates and number formatting code respect them, including prices formatted by locale rather than hard-coded. These details are small individually, but together they are what makes a French page read as native rather than converted.
Bilingual website development on WordPress: WPML or Polylang?
Both work well for bilingual website development. WPML suits larger sites with many plugins and a translation-management workflow; Polylang suits small to mid-sized sites and is lighter. The choice matters less than configuring it fully.
WPML's documentation offers three language URL formats: languages in directories, a different domain per language, or the language added as a URL parameter. We use directories unless your brand needs separate domains. Whichever plugin you choose, the checklist is the same: translated slugs, translated menus, widget and footer text, form labels and notifications, SEO plugin titles and descriptions per language, and a sitemap that includes both.
The weak spots on WordPress are themes and plugins that print English text directly in their code. We scan for them in the audit and either configure their string translation, patch them in a child theme, or replace them. More detail on WordPress builds, including accessibility and hosting, is on our Canadian WordPress page.
Building a bilingual English French Shopify store
On Shopify, bilingual means publishing French as a store language, which gives French its own URLs, then translating products, collections, pages, theme text, notifications and app content. Shopify handles hreflang for language URLs automatically.
Shopify's language documentation says a store on Basic, Grow, Shopify or Advanced can sell in up to 20 languages, and up to 30 on Shopify Plus, with language-specific URLs as subfolders such as /fr or as subdomains. Translations can be managed and imported through Shopify's Translate & Adapt app, which is where your translator's file goes in.
Apps are the usual gap. Reviews, product filters, size guides, subscription widgets and upsell pop-ups each handle language their own way, and some do not support French at all. We test every app on the French storefront before launch. Checkout and order notifications also need French versions; stores selling to Quebec should read our Shopify developer page for Canadian merchants for tax and shipping setup. Bilingual store builds start at US$750.
Bilingual websites on custom and headless stacks
On custom bilingual website development projects, every piece of text lives in locale files or a CMS with per-language fields, and routing serves /en/ and /fr/ through the same components. That gives the cleanest result and the most control, at a higher build cost than a theme.
We build these with frameworks such as Astro and Next.js, using their internationalised routing and a headless CMS where editors fill English and French fields side by side. The advantage is that nothing can be forgotten: a component cannot render without its French string, and the build fails if a key is missing. Dates, numbers and prices go through the browser's locale formatting rather than hand-written strings.
This route suits portals and web apps even more than marketing sites. A bilingual customer portal stores each user's preferred language, sends emails and PDFs in it, and shows the right terms at sign-up. Portals and web apps start at US$900; see our custom software page for Canadian businesses for the wider picture.
How does the translation workflow work with your translator?
We export, your translator translates, we import, and your translator reviews on the real pages before launch. We write English; the French always comes from you or the translator you choose.
The export is where most time is saved. Rather than sending a translator screenshots or a copy of the live site, we send a structured file with every string, grouped by page and component, with notes such as “button label, keep short” or “meta description, about 155 characters”. Translators can quote accurately from it, use their own translation memory and return it in the same format.
After import we give your translator a staging link. Reviewing in place matters: a heading that reads well in a spreadsheet may wrap badly beside an image, and a button label may need a shorter synonym. Their corrections go back in, and we freeze both languages together for launch. For ongoing edits, your team learns to add English and French in the CMS in one sitting, so the two versions never drift.
- Export: every string with page, component and length notes
- Translate: your translator, with their own tools and glossary
- Import: we place French into pages, menus, forms, emails and metadata
- Review: your translator checks French on staging and marks fixes
- Launch: both languages go live together
In English French bilingual website development, every form and automated message should follow the language the visitor used: French form labels and errors on French pages, French auto-replies and French notifications afterwards. This is where bolt-on translation almost always fails.
We handle it by storing the language with each submission, order or account. Contact forms send French confirmations to French submitters and tag the lead so your team replies in French. Booking and order systems pick templates by that stored language. Newsletter signups record language preference so campaigns go out in the right one. Error messages, including the ones that only appear when someone mistypes a postal code, get French versions too.
We also route internal notifications sensibly. Your staff may prefer to receive every lead notification in English even when the customer wrote in French, and that is fine: we set the customer-facing and staff-facing languages separately.
Does bilingual website development help SEO in Canada?
Yes, when French pages are real, indexable and paired with hreflang: you gain a second set of pages that can rank for French searches, where the competition is often thinner than in English. A widget adds almost nothing for search.
Keyword research has to be done in French, not translated from English. The words a Montreal customer types are not always a literal translation of the English query, so your translator or a French SEO writer should choose titles and headings with actual French search terms in mind. We then make sure the technical layer is sound: French title tags and descriptions, French structured data, both languages in the sitemap, and canonical tags pointing each page at itself rather than at its English twin.
After launch we check Search Console for French pages being indexed and for hreflang errors. Ongoing technical SEO for Canadian sites starts at US$150/mo. Nobody can promise rankings, but a bilingual site with clean structure removes the technical reasons French pages fail to show up.
How do AI assistants read an English and French website?
AI assistants that cite web pages read the same public HTML search engines do, so French content in the HTML at its own URL is what they can quote. Text injected by a translation script after page load is much less likely to be picked up.
We write templates so each French page stands on its own: a clear French heading, a short answer near the top, FAQ blocks that make sense out of context and organisation details in structured data. A French-speaking user who asks an assistant about your service has a better chance of being pointed at your French page rather than your English one.
Adding French to an existing English website without losing traffic
The safest form of bilingual website development for an existing site: keep your English URLs exactly as they are, add French under a new /fr/ path, and link the two with hreflang. Moving English pages to /en/ is optional and needs 301 redirects if you do it.
The retrofit sequence we follow: crawl the English site to list every URL and template; decide whether English stays at the root or moves to /en/; extract strings; install or configure the multilingual layer; fix templates that hard-code English; import French; add the switcher; test forms and emails; then publish French pages and submit the updated sitemap. English visitors notice almost nothing, apart from a new “Français” link.
If your current platform cannot support per-language URLs, or the theme is fragile, a rebuild can be cheaper than a retrofit. Our website redesign page covers rebuilding without losing rankings, and we will tell you plainly which route your site needs after the audit.
Bilingual website development checklist before launch
Run through this bilingual website development checklist on staging with someone who reads French. If any item fails, fix it before launch; bilingual problems are cheaper to solve before Google crawls them.
- Every English page has a French twin, or a documented reason it does not
- Each twin has its own URL, and French slugs are in French
- hreflang en-CA, fr-CA and x-default appear on both twins and point to live pages
- Canonical tags point each page at itself
- The switcher is visible on mobile and lands on the equivalent page
- Menus, footers, forms, errors and cookie banners are French on French pages
- Auto-replies, order and account emails follow the visitor's language
- Dates, numbers and prices are formatted for the language
- Buttons and headings do not overflow with French text
- Both languages are in the XML sitemap
Want a second pair of eyes on an existing bilingual site? We run this checklist as a paid audit and give you the list of fixes with an itemised quote.
How bilingual projects run with a team in India
Our evenings in India line up with Canadian mornings, so Eastern and Atlantic clients get calls before lunch and Pacific clients get early-morning slots. Between calls, work moves by WhatsApp and email, and you can watch progress on a staging link.
The first two weeks of bilingual website development with us follow a pattern. In week one we hold a discovery call, audit the site or brief, and send an itemised quote in about two working days. Once approved, we set up staging on your hosting and send your translator the export file. In week two templates take shape in both languages, and you see the switcher, menus and first pages working with placeholder French until the real copy lands.
You own everything: domain, hosting, CMS, code and any app or platform accounts. We work through logins you grant and can revoke. Quotes and invoices are in USD, payable in USD or CAD by Wise, wire or PayPal, and invoices come from India; how you record them is for your accountant. There are no office visits; all training happens by screen share with a recording you keep. If this is your first remote build, our page on hiring Indian developers explains the model.
Example: an Ottawa physiotherapy clinic going bilingual
This is a hypothetical scenario, to show the shape of the work. Say a two-location physiotherapy clinic in Ottawa has a 25-page English WordPress site, gets patients from Gatineau, and wants French pages that rank and a booking flow in both languages.
We would keep the English URLs at the root, add French under /fr/ with Polylang, and map 25 pages to French twins with French slugs. The booking widget supports French, so it gets a French embed on French pages; the contact form gets French labels, errors and auto-reply. The clinic's translator receives an export of about 9,000 words with notes, returns French in a week, and reviews it on staging.
At launch, the clinic has paired pages with hreflang, a “Français” link in the header, French confirmation emails and both languages in its sitemap. Staff are trained by screen share to publish news in both languages at once. The work fits within our business site plan, which starts at US$150; translation is billed by the translator.