Making sense of quotes
Why is my Odoo upgrade quote so high?
You asked to move Odoo to a newer version and got a number that made you close the email. Before you assume you're being ripped off — or give up on upgrading — here's what usually sits inside a big quote, and how to tell what you're really paying for.
First: a big number isn't always wrong
If your Odoo runs your whole business — with years of custom features, several add-on apps, and a lot of history — a genuine upgrade is real work, and it can honestly cost tens of thousands. The goal here isn't to tell you every big quote is a scam. It's to help you see what you're being charged for, so you can judge it.
The starting point is the hourly rate. Western Odoo partners commonly bill $120–250 per hour in North America and roughly $70–200 per hour in Western Europe, and a mid-size migration can run 80–250+ hours. Multiply those out and a five-figure quote isn't surprising — but the number of hours is where quotes for similar systems diverge wildly.
What gets bundled into a big quote
Discovery and workshops
Many partners start with paid "discovery": meetings to map out your processes before anyone touches the system. For a fresh project that can make sense. For an upgrade — where the goal is simply to move what already works onto a newer version — it often adds cost without adding much.
Retainers and ongoing contracts
Some quotes aren't really for the upgrade at all — they're for signing you onto a monthly support contract, with the upgrade rolled in. If you just want to get current and carry on, you can end up paying for a relationship you didn't ask for.
Rebuilding instead of moving
Occasionally a partner will propose rebuilding your custom features from scratch, or re-implementing your whole setup, rather than carrying forward what you have. That's a much bigger project than an upgrade — sometimes justified, often not.
Padding for the unknown
If a partner hasn't looked closely at your system, they may quote high to protect themselves against surprises. The less they know about your setup, the bigger the safety margin baked into the number. In one widely-shared case, a partner proposed 34 days (~272 hours) for a v15 → v17 job with 18 modules — while others reported 40–135 hours of actual work for comparable setups. Same job, wildly different numbers.
What an upgrade actually needs
Stripped down, moving a self-hosted Odoo Community instance to a newer version is a focused job:
- Move your data onto the new version.
- Bring your custom features forward so they keep working.
- Make compatible versions of any add-on apps you rely on.
- Check that nothing changed — totals, stock, invoice numbers all still match.
- Give you a working copy to test before you commit.
That's it. No workshop required. No retainer required. If those things are in your quote and you don't want them, it's fair to ask for a price without them.
Questions worth asking your quoter
- "Is this just the upgrade, or does it include support contracts and meetings?"
- "Are you carrying my existing features forward, or rebuilding them?"
- "Have you looked at my actual system, or is this an estimate?"
- "Do I pay before or after I've confirmed the upgraded version works?"
That last one matters most. On a normal project you pay as work happens. It's fair to ask to see the result working first.
Often 50–70% less
We quote the upgrade and nothing else — no workshops, no retainer. Our fixed price commonly comes in 50–70% below the quote you were originally given; most jobs land in the $5,000–$15,000 range. You get the number in 24 hours, and you only pay once you've logged in and seen it working.
Get a second number to compare
Send us your system and we'll come back with one fixed price within 24 hours — free, and with no meeting to sit through.
Get your fixed quote