Give every first-time visitor your language, not their browser’s.

Pin a fixed default language for new website visitors, protect it with bot exclusion and geolocation fallback, and prove the fix works with a built-in language-mismatch dashboard — without breaking /xx/ URLs or search indexing.

The problem

Odoo serves first-time visitors whatever language their browser reports, fragmenting multilingual sites and diluting local SEO. A Vietnamese business’s English-configured visitors land on a half-finished English page, search engines index every language variant with equal weight, and owners have no way to see how often it happens or prove a fix would help.

The solution

Pin one fixed default language per website for new visitors, while explicit /xx/ URLs and returning-visitor cookies stay untouched. Search-engine bots are excluded automatically so every language version keeps indexing, an optional country map picks a sensible fallback, and a live mismatch dashboard shows exactly how much fragmentation the fix removes.

Capabilities

Everything you need to pin the right language

Every capability below is implemented in the module.

01

Fixed default language switch

Turn on Force default language per website and pick the language new visitors should see, no matter what their browser reports.

02

First-time visitors only

The override applies only to new visitors. Anyone who already chose a language, or arrived on an explicit /xx/ URL, keeps seeing exactly what they expect.

03

Search-engine bot exclusion

Crawlers are detected and skipped automatically, so every localized page keeps its normal per-language route and stays fully indexable — the override never gets in the way of search engines.

04

Geolocation fallback map

Map countries to languages in a simple list — scoped per website or applied globally — so visitors get a sensible language even when the fixed default doesn’t fit their region.

05

Explicit choices always win

A visitor who picks a different language keeps that choice through their whole session; the fixed default never overrides an action a visitor already took.

06

Language-mismatch dashboard

A stacked bar chart shows served language against browser language for every recorded visit, so you can see — and prove — how much fragmentation the fix removes.

07

Mismatch statistics with one-click reset

Browse every tracked visit by website, browser language, served language and country, then clear the sample with a single Reset Statistics button.

08

Per-website multisite configuration

Every setting — the fixed language, bot exclusion, geo fallback and tracking — is scoped per website, so agencies running several client domains from one database configure each independently.

Workflow

How it works

1

Enable the switch

Open Website Settings, turn on Force default language, and pick the language new visitors should land on.

2

Add safeguards

Keep bot exclusion on so crawlers keep indexing every language, and optionally add country rows for a geolocation fallback.

3

Let visitors browse

New visitors land on your chosen language automatically; explicit /xx/ URLs and language choices are always respected.

4

Watch the dashboard

Check the Language Mismatch report to see served-versus-browser language mismatch drop as the fix takes effect.

Questions

Frequently asked

No sales fog. If your question isn't here, email us and we'll answer it the same way.

No. Any request whose path already starts with a known language code is left alone — the fixed default only applies when no language is specified in the URL.

Get the app

Buy it on the Odoo App Store

Purchase, download and install directly from the official Odoo Apps Store — you'll always get the latest supported build.

Website Fixed Default Language

Pin a fixed default language for first-time visitors, with search-engine bot exclusion and a geolocation fallback map — and a mismatch dashboard that shows how often it matters.

Buy on Odoo App Store