Which OCA modules actually run on which Odoo version
We install every public OCA module into a clean database of every Odoo series and publish what happened — the install log, with a date. Not vendor claims.
16.0 17.0 18.0 19.0
The unit here is a module×series pair, not a module: the same module on each series is a separate result. 9 423 pairs are indexed, 9 361 of them already have a real install run behind them — 4 549 distinct OCA modules on Odoo 16.0–19.0.
Why this exists
Odoo ships a major version every year. Third-party and custom modules are not covered by Odoo's own upgrade service, and nobody publishes whether a given module actually installs on a given version. So partners find out during the upgrade, by hand.
Why now
Odoo 20.0 is unveiled on 24 September 2026. As of today, 1 811 of the 2 968 modules available on 18.0 have never been ported to 19.0 — 12 months after 19.0 shipped. Zero repositories have a 20.0 branch yet.
Who it's for
Odoo partners scoping an upgrade, OCA maintainers, and anyone choosing which modules to build on.
What this is not
An install check, not a functional test — a module can install and still misbehave. Paid Apps Store modules are outside this index entirely: we neither run nor list them. Failures caused by a missing Python package in the image are reported as environment problems, never as version incompatibility.
Install status by series
16.0 · 3108 verified of 3108 runnable (3115 in this series)
17.0 · 1943 verified of 1943 runnable (1958 in this series)
18.0 · 2961 verified of 2963 runnable (2968 in this series)
19.0 · 1349 verified of 1351 runnable (1382 in this series)
1331 of 1349 tested modules on 19.0 install cleanly (99%). Runnable: 1351 of 1382 — 31 not installable by manifest, 2 still pending.
Odoo 20.0 dev — the development line
A different statement from the table above. There: the module as published, on a series that has been released. Here: the code of the 19.0 branch with its manifest version mechanically raised, on a platform that is not released and changes daily. Hence a separate block rather than one more column.
442 of 1 290 (34.3%) modules of the 19.0 branch start on the development line with no change to the code beyond the version string. Of 848 that did not pass, 558 (65.8%) are one and the same platform change: the merge of ir.model.access and ir.rule into the new ir.access.
The denominator is the pool snapshot of 2026-09-10 06:16 UTC: 1 290 modules, the very set the run was made over. The 19.0 branch now holds 1 351: 61 are not in the snapshot and are not measured here. The manifest version is raised mechanically (19.0.x → 19.5.x); the code is unchanged. Bench: modidx/odoo:master-deps-20260910 · odoo 19.5a1.20260910 · 2026-09-11.
How this is measured · migration tracker · devline.csv
Measured again on the real 20.0 branch, 2026-09-18: 432 of 1 290 (33.5%) install there — the run above used the development line before the branch existed. both runs side by side
Modules
Category: any
Vendor: any
State: any
Series: any
| Module | Vendor | Category | 16.0 | 17.0 | 18.0 | 19.0 |
|---|
Full list also in the dataset. This selection is a link — copy the address bar to share it.