How to Upgrade Odoo Community Edition

Last updated: February 2026

Odoo S.A. provides an upgrade service for Enterprise Edition, but Community Edition users are on their own. There is no official tool, no migration wizard, and no one-click upgrade path. If you run Odoo CE and need to move to a newer version, you have three options: do it manually, use OpenUpgrade, or use an automated migration tool.

This guide covers what actually changes during an Odoo upgrade, compares your options honestly, and walks through the fastest approach step by step.

Upgrade vs update: what is the difference?

An update applies patches within the same major version (e.g. 17.0.1 to 17.0.2) — bug fixes and security patches. No database changes.

An upgrade (also called a migration) moves your database to a new major version (e.g. Odoo 17 to 18). This involves schema changes, module restructuring, field renames, and data transformation.

What changes during an Odoo upgrade

Between version 16 and 19, the cumulative scope is 805 model changes, 152 model renames, 74 module merges, 121 field renames, and 690 constraint changes.

  • Schema changes. Tables are renamed, columns are added or removed, data types change. Odoo 18 converts all company-dependent fields from the ir_property table to native JSONB columns.
  • Module merges. Standalone modules are folded into their parent. Odoo 17 merged 24 modules into core. Odoo 19 merges another 25.
  • Field and model renames. Odoo 19 alone renames 130 models — procurement.group becomes stock.reference, hr.contract becomes hr.version.
  • Constraint changes. The 18 to 19 upgrade involves 416 constraint changes, including removal of 338 legacy constraints.
  • View architecture. XML views are restructured between versions. Inherited views need to be cleared and reloaded.

Your options for upgrading Odoo CE

There are three realistic approaches:

Manual migrationOpenUpgradeOCU
EffortWrite SQL scripts yourselfSet up dev environment, run scriptsUpload backup, download result
Technical skillExpert (PostgreSQL, ORM)Intermediate (Docker, CLI)None
Multi-stepManual per stepManual per stepAutomatic chaining
CostYour timeYour timeFree test / 99 EUR production
Best forDevelopers who want full controlTeams with dev resourcesAnyone who wants it done

Step-by-step: upgrade with OCU

  1. Create a backup. Download a backup (.zip with filestore) from your Odoo database manager, or use pg_dump.
  2. Upload to OCU. Sign in and upload your backup file. OCU auto-detects your current Odoo version.
  3. Select target version. Choose where you want to go. Multi-version jumps are chained automatically.
  4. Run a test migration. Test migrations are free and unlimited. The output is neutralized.
  5. Verify the result. Restore the test output on a staging server. Check key workflows.
  6. Run the production migration. One credit, 99 EUR. Full, unmodified database.

Before you migrate: checklist

  • Back up everything. Keep a copy you do not touch during the migration process.
  • Check third-party modules. Verify compatibility with the target version.
  • Review the changelog. Check what changed between versions: 16 to 17, 17 to 18, 18 to 19.
  • Plan your downtime window. Run a test migration first to know how long it takes.
  • Test on staging first. Always restore on a staging server before going to production.

Supported migration paths

Frequently asked questions

Is there an official Odoo upgrade service for Community Edition?
No. Odoo S.A. only offers their upgrade service for Enterprise Edition. Community Edition users must use OpenUpgrade or a third-party tool like OCU.
Can I upgrade Odoo Community Edition without losing data?
Yes. A proper migration tool preserves all business data — customers, invoices, products, stock moves, and transactional records.
How long does an Odoo CE upgrade take?
A typical database under 1 GB completes a single-step migration in 5–15 minutes. Multi-step migrations take 15–45 minutes.
Can I skip versions when upgrading Odoo?
You cannot skip intermediate versions, but tools like OCU chain the steps automatically.
What happens to third-party modules during an upgrade?
Third-party modules are kept installed with their data tables preserved, but their views are disabled. After migration, install updated versions compatible with the target version.

Start your free test migration