Odoo Migration Pricing
Simple, transparent pricing. No surprises.
OCU migrates Odoo Community Edition databases between major versions. The pricing is straightforward: test migrations are free, production migrations cost one credit. One credit is 99€ at launch pricing (normally 199€). No subscription, no per-module fees, no surprises.
A single credit covers the entire migration regardless of database size or how many version steps are involved. Migrating from Odoo 16 to 19 chains three steps internally (16→17→18→19) but still costs one credit.
Three options, no complexity
Test migration
No credit card required
- Full migration, same engine
- All version paths (15 → 19)
- Unlimited test runs
- Real-time progress tracking
Neutralized output — outgoing emails disabled, scheduled actions turned off. Ideal for verifying the migration before committing.
Production migration
Launch pricing — increases to 199€
- Same quality as test
- Full, unmodified database
- Production-ready output
- All emails & crons active
Offline migration
Launch pricing — increases to 1990€
Same migration engine packaged as Docker images you run on your own hardware. Your database never leaves your machine. Ideal for compliance requirements or organizations migrating multiple databases.
- Runs on your machine
- Data never leaves your network
- All versions, unlimited runs
- Updates via docker pull
Docker required. Same engine as online.
What “neutralized” means
Test migrations are for evaluation only. The output is deliberately degraded at the database level to prevent production use. Emails are watermarked, PDF reports carry a test banner, and the neutralization cannot be removed through the Odoo UI. Using a test migration in production is not permitted under our terms of service.
The migration itself is identical — same engine, same schema changes, same integrity checks. You get a realistic preview of the result to verify your data before purchasing a production credit.
What every migration includes
- Automatic version detection. Upload your backup and OCU identifies whether it is Odoo 15, 16, 17, 18, or 19. No manual configuration required.
- Multi-step chaining. Jumping from 16 to 19? OCU runs 16→17, then 17→18, then 18→19 automatically in a single operation. You upload once and download a fully migrated result.
- Filestore handling. If your backup includes a filestore (the standard .zip format from Odoo’s database manager), it is preserved and included in the output. Attachments, images, and documents carry over.
- Integrity checks. After each migration step, OCU runs sanity checks on the upgraded database to catch structural issues before they become problems in production.
- 72-hour auto-delete. Your uploaded backup and the migration result are permanently deleted 72 hours after the migration completes. No data lingers on our servers.
- Real-time progress. Watch the migration as it runs. WebSocket-based log streaming shows you exactly what is happening at each step.
What OCU does not migrate
OCU handles the standard Odoo Community Edition database. Some things require manual work after the migration:
- Custom module code. If you have custom Python modules, their code needs updating separately to match the new Odoo API. The database tables and data from custom modules are preserved, but the module code itself must be compatible with the target version.
- Third-party OCA modules. Modules from the Odoo Community Association are handled similarly to custom modules — data is preserved, but you need updated module versions for the target Odoo release. Check the OCA GitHub for updated branches.
- Server configuration. Your odoo.conf, Nginx config, systemd services, and other server-level settings need manual updates for the new Odoo version. OCU only handles the database — not your server environment.
- External integrations. API endpoints, webhook URLs, and third-party service integrations (payment gateways, shipping providers, etc.) may need reconfiguration if they depend on Odoo-version-specific endpoints or field names.
How the cost compares
There are not many options for migrating an Odoo Community Edition database. Here is how OCU fits in:
| Cost | Trade-off | |
|---|---|---|
| Odoo S.A. upgrade | Free (for Enterprise) | Enterprise Edition only. Not available for Community Edition. |
| OpenUpgrade (DIY) | Free | Requires dev environment setup, PostgreSQL knowledge, manual execution per version step. |
| Odoo consultant | €2,000–5,000+ | Full service, but expensive. Typical for complex setups with heavy customization. |
| OCU | €99 | Automated, no technical skill needed. Does not migrate custom module code. |
Odoo S.A. offers a free upgrade service at upgrade.odoo.com, but it is exclusively for Enterprise Edition customers. If you run Community Edition, this option does not exist for you.
OpenUpgrade is free and open-source, maintained by the OCA. It is a solid option if you have developers comfortable with PostgreSQL, Docker, and Odoo’s internals. The real cost is time: setting up the environment, running each version step separately, and debugging issues can take days. Our detailed comparison covers the trade-offs in depth.
Hiring a consultant makes sense for organizations with heavily customized Odoo installations, dozens of third-party modules, and complex integrations. Typical quotes for a migration project range from €2,000 to €5,000 or more depending on scope. For a standard Odoo CE database with mostly built-in modules, that is often more than necessary.
OCU at 99€ sits between free-but-technical and expensive-but-hands-off. You do not need Odoo development skills, and the result is ready in minutes. The main limitation: OCU handles the standard Odoo modules automatically but does not migrate custom module code. After migration, you install updated versions of any third-party or custom modules yourself.
Supported migration paths
Every path below costs one credit (99€) regardless of how many intermediate steps are involved:
| Path | Steps | Models added or removed |
|---|---|---|
| Odoo 15 → 16 | 1 | 147 |
| Odoo 16 → 17 | 1 | 134 |
| Odoo 17 → 18 | 1 | 155 |
| Odoo 18 → 19 | 1 | 129 |
| Odoo 19 → 20 | 1 | 186 |
| Odoo 16 → 18 | 2 | 289 |
| Odoo 16 → 19 | 3 | 418 |
| Odoo 17 → 19 | 2 | 284 |
| Odoo 15 → 17 | 2 | 281 |
| Odoo 15 → 18 | 3 | 436 |
| Odoo 15 → 19 | 4 | 565 |
| Odoo 18 → 20 | 2 | 315 |
| Odoo 17 → 20 | 3 | 470 |
| Odoo 16 → 20 | 4 | 604 |
| Odoo 15 → 20 | 5 | 751 |
Counted from the Odoo source of each version and from the OCU migration mappings, step by step; Odoo’s internal test modules are left out because they never exist in a production database. Multi-step paths add up their steps.
Pricing FAQ
- What exactly do I get for 99 EUR?
- One production migration credit. Upload your Odoo CE database backup, select your target version, and download a fully migrated, production-ready backup file. The output is unmodified — all emails, crons, and integrations remain active. Multi-step migrations (e.g. 16→19) use a single credit regardless of how many intermediate steps are involved.
- Is there a refund if the migration fails?
- Production credits are only consumed when the migration completes successfully. If the migration fails, your credit is not spent. Test migrations stay free and unlimited: your first 3 successful test runs require no purchase at all, and after that holding a single credit keeps testing unlimited — the credit itself is only spent by a successful production migration.
- Do you offer bulk pricing or volume discounts?
- Not currently. Each production migration costs one credit (99€). If you are a consultancy or hosting provider migrating many databases, consider the offline license (990€ one-time for unlimited migrations on your own machine). For other volume arrangements, contact us.
- How long is the 99 EUR launch pricing available?
- The standard price is 199€ per credit. The 99€ launch price is available while we are in the early access phase. We will give advance notice before the price increases. Credits purchased at the launch price remain valid indefinitely.
- What happens to my data after 72 hours?
- All uploaded backups and migration results are automatically and permanently deleted 72 hours after the migration completes. We do not retain your database, filestore, or any business data beyond this window. Download your result promptly.
- Can I migrate from Odoo Enterprise Edition?
- No. OCU supports Odoo Community Edition only. Odoo S.A. provides their own upgrade service for Enterprise Edition at upgrade.odoo.com.
- What file formats can I upload?
- OCU accepts .zip (Odoo database manager format, recommended), .sql (plain SQL dump), and .dump (pg_dump custom format). The .zip format is preferred because it includes the filestore (attachments, images). If you upload a .sql or .dump, the filestore is not included in the output.
- Do I need technical skills to use OCU?
- No. The entire process is upload, wait, download. You do not need to install anything, set up PostgreSQL, or run command-line tools. The only technical step is creating a database backup from your Odoo instance, which is a standard operation in Odoo’s database manager.
- What Odoo versions are supported?
- OCU supports Odoo Community Edition versions 15 through 20. You can migrate between any combination: 15→16, 16→17, 17→18, 18→19, 19→20, or multi-step paths like 15→20. The source version is auto-detected from your backup.
- How is my data protected during the migration?
- Your database is processed on isolated Docker containers in our EU data center (Finland). Each migration runs in its own environment with no shared state. All files are encrypted at rest and permanently deleted 72 hours after completion. We do not access, read, or retain your business data.
Learn more
- How to Upgrade Odoo Community Edition — Step-by-step guide to the migration process.
- Odoo Migration Checklist — Everything to prepare before, during, and after your upgrade.
- Odoo CE vs Enterprise: Migration Options — How Community and Enterprise upgrade paths and pricing differ.
- All articles and version guides — Browse migration guides, tool comparisons, and version-specific references.
See for yourself — test migrations are free
Upload your Odoo CE backup and run a full migration at no cost. Same engine, unlimited runs, no credit card.
Start your free test migration