Skip to Content

Tech · 12 mai 2026 · 11 min read

My Odoo site is slow.

A slow Odoo site is almost never Odoo's fault. In the vast majority of audits, the cause lies elsewhere: uncompressed images, misplaced lazy loading, a poorly configured cache, third-party scripts, a bloated theme. The first step is always to measure with Lighthouse before touching anything.

Lighthouse at 42, LCP at 4 seconds, visitors bouncing. If your Odoo site is slow, Odoo itself is almost never to blame. Here are the 10 real causes we find during audits, ranked by frequency, with the fix for each one. All measurable, all fixable.

Updated on

A sluggish Odoo site, the real causes.

Contents

  1. Measure first
  2. The 10 causes
  3. Hosting
  4. What to check yourself
  5. When to call an agency

A slow Odoo site is probably the number one reason people call us for an audit. The client has tried to optimise on their own, has already paid another agency for an “optimisation plan” that achieved nothing, and arrives frustrated. The good news: in 9 cases out of 10, Odoo is not what's slowing things down. It's what has been added on top. Here are the 10 causes we come across, and how to fix each one.

Measure before you touch anything.

The golden rule of optimisation: no changes without a baseline measurement. Otherwise you're tinkering blindly. Three free tools are enough to measure an Odoo site properly:

PageSpeed Insights (pagespeed.web.dev): Google's official test. It gives you the Core Web Vitals (LCP, INP, CLS) measured on real visitors, plus a synthetic Lighthouse audit. This is the tool to use first.

GTmetrix: gives a detailed breakdown of the loading sequence (waterfall), so you can pinpoint exactly which resource is blocking rendering.

WebPageTest: for in-depth audits. It lets you test from several geographic locations and browsers, and compare multiple runs.

Benchmark target

On a well-built Odoo site, we aim for an LCP under 1.8 seconds on mobile, a Lighthouse performance score above 90, and a CLS below 0.1. If you're far from these figures, one of the 10 causes below is almost always involved.

For context: Google rates a page as good from an LCP under 2.5 seconds, an INP under 200 milliseconds and a CLS under 0.1, measured at the 75th percentile of page loads. Source: Google, Core Web Vitals, accessed in August 2026. Our internal targets are deliberately stricter.

The 10 most common causes.

01

Unoptimised images

By far the number one cause. 2 MB PNGs, full-resolution JPEGs displayed 400px wide. Fix: recompress to WebP, resize to display dimensions, and add the loading="lazy" attribute to images below the fold.

−40% LCP on average
02

Piled-up native Odoo snippets

When you build a site with the builder, every snippet adds its own CSS and JS. After 30 snippets, the bundle gets heavy. Fix: cut down the snippets you use or replace them with a lighter custom QWeb template.

−15% page weight
03

Unnecessary Odoo modules enabled

eCommerce, blog, events and recruitment modules enabled but not used. Each module adds its assets to the frontend bundle. Fix: disable unused modules in Apps. Measure before and after.

−10% bundle size
04

Poorly loaded web fonts

Several Google Fonts loaded all at once, sometimes with every weight and the full Latin character set. Fix: only load the weights you use, use font-display: swap, and preload the critical hero font.

−300ms FCP
05

Unoptimised autoplay videos

A heavy MP4 video autoplaying in the hero, with no poster and no controlled preload. Fix: compress the video, host it externally (Cloudflare Stream, Mux), or replace it with a CSS animation where possible.

−2s LCP
06

Third-party scripts (chat, analytics, pixel)

Google Tag Manager, Crisp Chat, Meta Pixel, Hotjar: stacked together, they block rendering. Fix: load these scripts with defer, delay their execution until the user scrolls, and remove the ones you don't need.

−25% INP
07

Unminified custom CSS / JS

Custom CSS added as plain text in the back office, with no minification or concatenation. Fix: use Odoo's native stylesheets, which are automatically minified and concatenated into the bundle.

−12% CSS weight
08

Developer mode left on in production

A classic mistake: developer mode stays on after go-live. Odoo then disables asset concatenation and everything slows down. Fix: check the asset URLs in the network console. If they contain nonce, dev mode is on. Switch it off.

−50% requests
09

Poorly configured browser cache

On Odoo Online, caching is usually set up correctly. On Odoo SH or self-hosted, the Cache-Control headers are sometimes forgotten. Fix: make sure your assets (CSS, JS, images, fonts) have a long cache lifetime (1 year minimum).

+30% cached visits
10

Undersized hosting

If every other cause has been ruled out and the site is still slow, it's the hosting. Fix: upgrade to a more powerful Odoo SH plan, or move from standard Odoo Online to a higher plan.

Depends on the plan

Optimising an Odoo site means taking things away, not adding them. Performance comes from restraint.

Charlotte Moonen · WebNest

Odoo Online vs Odoo SH.

Hosting is an area where we often see confusion. Here are the real ballpark figures for 2026.

Odoo Online and Odoo SH compared, 2026 ballpark figures.
CriterionOdoo OnlineOdoo SH
Hosting typeTurnkey, managed by OdooManaged, on isolated infrastructure
Use caseBrochure site or online shop up to 1,000 visitors a dayFrom 2,000 visitors a day, or if you need staging, Git and dev branches
Monthly cost€24 to €80 depending on the plan€50 to €200 depending on the plan
LCP on a well-optimised site1.2 to 1.8 secondsSimilar on the frontend
Technical controlStandardExtended

Odoo Online is enough for 80% of projects.

The trap: choosing SH when Online would do. It costs more and adds complexity. Conversely, staying on Online when traffic takes off and the site struggles at peak times: that's when you need to upgrade.

What you can check yourself.

Before calling in an agency for an audit (and paying €800 to €1,500), you can run these 4 checks yourself in 30 minutes:

1. Run PageSpeed Insights on your homepage and on a product page (if you have an online shop). Note the mobile and desktop scores.

2. Open Chrome DevTools (F12), go to the Network tab and reload the page. Sort by size. Look for resources over 500 KB. That's often where the problem hides.

3. Check developer mode. If an asset URL contains nonce or the network loads 50 separate CSS files, dev mode has been left on.

4. List the modules enabled in Apps. Uninstall the ones you don't use (take a backup first).

Quick win

On 60% of the Odoo sites we audit, causes 1, 7 and 8 (images, custom CSS, dev mode) already solve two thirds of the problem. Before paying for heavy optimisation work, check those three.

When to call in an agency.

If you've done the 4 checks above and your LCP is still above 3 seconds, the problem is probably structural. Four situations justify a professional audit:

1. You're using a purchased theme or a heavy builder. The structural weight is too great to fix at the margins. Some key pages need rebuilding.

2. Your site has built up 3 to 5 years of changes without a clean-up. CSS and JS added bit by bit, and nobody remembers what they're for. An audit plus clean-up pays for itself.

3. You run an online shop with a large catalogue. Product pages need particular care (lazy loading, schema, responsive images). A specialist developer makes the difference.

4. Your SEO is slipping for no obvious reason. Google gives Core Web Vitals more and more weight. A gradual slowdown can explain an otherwise unexplained drop in rankings.

At WebNest, we offer a free Odoo performance audit for public websites. We send you the report within 48 hours, with the measured figures and our recommendations. If you'd like us to handle the work afterwards, we'll quote for it. If you'd rather do it yourself, the report is all you need.

Frequently asked questions

Is Odoo a slow CMS?
No, and that is the whole point of this article. In the vast majority of audits, the slowness comes from uncompressed images, a poorly configured cache, third-party scripts or a bloated theme, not from Odoo.
What score should you aim for?
Google rates a page as good from an LCP under 2.5 seconds, an INP under 200 milliseconds and a CLS under 0.1. On a well-built Odoo site we aim higher: an LCP under 1.8 seconds on mobile.
Should you move to Odoo SH to speed things up?
Rarely. Odoo Online is enough for around 80% of projects, up to 1,000 visitors a day. Odoo SH makes sense from 2,000 visitors a day, or if you need staging, Git and development branches.
Where should you start?
With a measurement, before you touch anything. A Lighthouse report across several runs shows you where the real weight is. Optimising blindly only moves the problem around.

Planning an Odoo website?

We hand-code Odoo websites in Belgium. No templates, no drag-and-drop.

Let's talk about your project

Moonen Charlotte, Founder and CEO at WebNest. Hand-coded Odoo websites.