When Odoo 20 was released on 24 September 2026, it did not just add a version — it retired one. Odoo supports its three most recent major versions, so the arrival of Odoo 20 moved the supported set to 18, 19, and 20, and standard support for Odoo 17 ended in September 2026. If your business still runs Odoo 17, nothing stopped working on the day support ended. Your database opens, your invoices post, your warehouse ships. What changed is everything around the software: who fixes it, who patches it, and what your contract says about staying. This article lays out what ended, what it costs to ignore, and the four realistic options — with the trade-offs of each stated plainly.
What “support ended” actually means
Odoo gives each major version roughly three years of standard support. Odoo 17 was released in November 2023, and its three years ran out as Odoo 20 launched. Standard support is a bundle of three things, and all three stop together:
- Helpdesk support from Odoo for the version — questions and issues on Odoo 17 are no longer covered the way they were.
- Bug fixes — defects found in Odoo 17 from now on are fixed in supported versions, not backported to yours.
- Security updates — the item that should drive your timeline. A vulnerability disclosed next year will be patched in 18, 19, and 20. On 17, it stays open unless you patch it yourself.
The calendar now reads: Odoo 18 supported until September 2027, Odoo 19 until September 2028, Odoo 20 until September 2029. Every September, the oldest supported version falls off. Being one version behind the window is a position you will be in again — the question is whether you manage it as a planned migration or as an emergency.
The contract side: covered versions and the older-version fee
There is also a commercial clock. Odoo's Enterprise Subscription Agreement works with the idea of Covered Versions — the three most recently released major versions, currently 20, 19, and 18. For a database running a version older than the covered set, the agreement allows Odoo to charge an additional fee of up to 25% of the annualised subscription price, calculated on your current user count. Two limits soften it: the charge may be applied at most once a year, and not earlier than six months after a new major version is released. For Odoo 17, which fell out of the covered set on 24 September 2026, that makes 24 March 2027 the earliest date such a fee could apply — and whether and when it is applied depends on your contract. Read this as a deadline with a grace period, not a fine that has already landed: you have months to plan, but “we'll stay on 17 indefinitely at today's price” is not a position the contract guarantees.
Option 1: Upgrade to Odoo 20
The direct route, and the right default for most companies. An upgrade request moves an Enterprise database through each intermediate version — 17 to 18 to 19 to 20 — on Odoo's upgrade platform, so you do not have to stage three separate projects. You land on the version with the longest runway: supported until September 2029, with the AI agents, the new accounting rules, and the redesigned mobile app all included. The work is not the upgrade mechanics; it is testing. Three versions of change arrive at once, custom modules must be reviewed against all three, and your team has to learn the differences in one sitting. Odoo offers a free Odoo 20 test environment (test databases are deleted weekly) for a first look, and the serious version of that step is a full test migration on a copy of your database: upgrade the copy, run your critical flows — quote to invoice, purchase to receipt, stock counts, payroll-adjacent HR — and only then schedule the production move.
Option 2: Upgrade to Odoo 19 as a stepping stone
Deliberately landing one version short sounds odd, but it has a logic. Odoo 19 has had a year of fixes, its third-party module ecosystem is more complete than Odoo 20's still-porting one, and it remains supported until September 2028 — two full years of cover. For a heavily customised 17 database, 19 can be the lower-risk landing zone, with 20 planned once your key modules are ready there. The cost is obvious: you are buying a second upgrade project within two years, and you skip a year of new features in the meantime. Treat it as a risk decision, not a saving.
Option 3: Buy extended support
Odoo offers extended support for versions past their standard window, for an additional fee. It is available on-premise for any version, and on Odoo.sh only for some versions — and during extended support, fixes are provided only where technically feasible, which is a weaker promise than standard support makes. This option makes sense as a bridge: a business mid-implementation elsewhere, a seasonal operation that cannot migrate before its peak, or a regulated setup whose validation cycle is measured in quarters. What it is not is a destination. You pay extra to stand still, the gap to the current version keeps widening, and every year of delay makes the eventual upgrade larger.
Option 4: Stay on Odoo 17 and support yourself
Staying put is a real option, with strict conditions. It is only really available if you self-host or run on Odoo.sh — Odoo Online databases live on Odoo's upgrade cadence and cannot simply opt out of versions forever. If you stay, understand what you have accepted:
- Security becomes your job. No patches arrive. You monitor disclosures, assess whether they touch your setup, and fix or mitigate them yourself.
- The ecosystem moves on. Third-party app developers publish for supported versions; the modules you rely on will stop releasing Odoo 17 updates, then stop working around you.
- Costs may still rise. The older-version fee described above can apply from March 2027, so “free” staying is not guaranteed even commercially.
- The eventual upgrade gets harder. Custom code frozen on 17 must eventually jump four or five versions instead of three.
On the Community edition, this calculus is different in kind rather than degree: you never had Odoo's helpdesk or fixes to lose, but you also have no extended-support option to buy, and community maintenance attention follows the same supported versions. Either way, staying is defensible only as a conscious, time-boxed decision with an owner and an exit date — not as the absence of one.
What a three-version jump actually involves
Whichever supported version you choose, a 17-to-current migration crosses changes your testing must cover. A few of the largest, from the release notes of the versions in between and Odoo 20 itself:
- Access rights are rebuilt. In Odoo 20, record rules are replaced by a domain defined on each access right — custom security setups need re-testing, not just re-checking.
- XML-RPC is deprecated — its db service is removed in 20, and the remaining common and object services are scheduled for removal in Odoo 22. Integrations still using the removed XML-RPC db service must move before or during the upgrade, and the rest should be planned onto the JSON-2 API; external API access itself is a Custom-plan feature.
- Apps moved. The standalone Field Service app is discontinued, its features now in Planning; the Employee Expenses menu is removed and approved expenses generate draft bills.
- Accounting tightened. Every journal entry touching a bank account must originate from a bank transaction — manual entries on bank accounts are no longer allowed — and parent accounts replace account groups, with account codes now optional.
- The interface changed. The frontend is now OWL 3, Material Symbols replace the old icons, and push notifications run on Odoo's own service rather than Firebase.
Deciding: a short checklist
- Where are you hosted? Online points to upgrading soonest; on-premise or Odoo.sh gives you the full menu of options.
- How customised is the database? Mostly standard: go straight to 20. Deeply customised: price 19 versus 20 with your partner, honestly.
- What is your hard deadline? March 2027 is the earliest older-version fee date; September 2027 is when 18 leaves support — do not plan to land there.
- Who owns security in the meantime? If the answer is nobody, staying put is already costing you risk.
- Have you run a test migration? Until a copy of your database has survived the upgrade and your team has run its real flows on it, every date in the plan is a guess.
Odoo 17 served three years and served them well. The businesses that handle its end-of-support badly are not the ones that upgrade late — they are the ones that never decided. Pick the option, set the date, and run the test migration; the clock is generous, but it is running.
Further reading
- Odoo 20 Release Notes — what the current version adds across all 50-plus apps, and the changes a migration must absorb.
- Odoo Pricing — current plans and licensing, including the Light User, for modelling the subscription after an upgrade.
