A new Odoo version arrives every year with tempting features. The businesses that enjoy it are the ones who treated the upgrade like moving house; the ones who treated it like a light switch have stories. Here is the moving-house plan.
Odoo releases a new major version every year, and each one genuinely improves things — faster screens, better apps, new features. The trap is the word 'upgrade' itself, which sounds like a phone update. Between major versions, Odoo changes database structures, renames fields, moves menus and retires old behaviour. Your data must be migrated, not just opened. On the free Community edition, that migration is your job (or a partner's); Enterprise subscriptions include an upgrade service from Odoo. Either way, the safe sequence is the same, and this page lays it out — what actually breaks, the weekend-sized plan that works, and the equally valid decision to not upgrade yet.
Be clear-eyed about the casualty list. Custom modules — anything a developer added for you — are the first to break, because they were written against the old version's internals. Reports and templates you customised may shift layout or fail. Third-party apps from the app store need their own new-version editions, which sometimes lag months behind the release. Even your team's habits break: menus move, buttons rename, and the first week after an upgrade includes a chorus of 'where did it go'. What does not break, when the migration is done properly: your actual data. Customers, products, invoices and stock history are designed to travel. The upgrade endangers your decorations and your routines far more than your records.
The whole safety doctrine fits in one line: the production database is upgraded last, never first. Take a full backup (database plus filestore — our backup guide shows why both halves matter), restore it onto a test setup, and perform the entire upgrade there. Your live business keeps running on the old version while the new one is being proven. Every disaster story in the Odoo world begins with someone upgrading the only copy on a Friday evening. Every success story begins with a test copy and a notebook. This rule costs one spare PC and one restore — the cheapest planning you will do all year.
On the test copy, work this order:
Only when the copy passes does the real database get its turn — over a quiet weekend, from a fresh backup, with the old system kept intact to fall back on.
On Enterprise, Odoo's own upgrade service performs the database migration for subscribers: you submit the database, they return it migrated, and your job is the testing in section 3. On Community, there is no such desk to write to. Your options are a competent partner or freelancer who has done Odoo migrations before, or the community's own migration tooling maintained by the Odoo Community Association — real, but a technician's tool, not a wizard. Price this honestly when you choose editions (our comparison guide does): a business that upgrades every year on Community should budget the migration help as a yearly cost of 'free' software. It is still often cheaper. It is never zero.
Do not confuse the two rhythms. Within your version, Odoo receives fixes and security corrections — installing those is routine maintenance, low-risk, and you should keep reasonably current, with a backup first as always. The jump between versions is the project this page describes. A related trap: staying put forever is also a decision with a cost. Very old versions stop receiving fixes, community answers dry up, and the eventual jump grows from one version to five. The comfortable pattern for a small business is to upgrade every one to two years, skipping the day-one rush and letting each new version settle for its first months while others find its sharp edges.
End with permission: you are allowed to skip a version. If the current system runs the business well, the new features are decorative for you, or the team is mid-season and cannot absorb a week of 'where did it go', staying is a professional decision, not laziness. Make it a decision, though — write down when you will revisit it, keep taking backups, and keep the security fixes flowing. The businesses that suffer are never the ones who upgraded a year late. They are the ones who upgraded untested on a Friday, or who woke up five versions behind with nobody left who remembers the system. Plan beats panic, in both directions.
Watch the Odoo server setup video for the clean install your upgrade plan starts from — and keep the backup habit from day one so upgrades stay boring.
▶️ Watch Full VideoOdoo releases a new major version roughly every year. Within a version you also receive smaller fixes and security corrections, which are routine to install. The yearly version jump is the significant one — it migrates your database structure and should be planned and tested like a project.
The software is free, but the migration work is yours. Enterprise subscriptions include an upgrade service from Odoo; Community users either hire a partner or use community migration tooling with technical help. Budget that help as a real yearly cost when comparing editions.
Custom modules and customised reports break first, followed by third-party apps that have not yet released editions for the new version. Core data — customers, products, invoices, stock history — is designed to migrate safely when the upgrade is performed and tested on a copy first.