For Business Owners

Every Odoo quote you receive will be wrong

Not dishonest — wrong. Implementation quotes are estimates built on assumptions that rarely survive month two. Here's how to read them.

Every Odoo quote you receive will be wrong. Not dishonest — wrong. The partner writing it cannot know what you will change your mind about in month four, which of your processes will turn out to not survive contact with the software, or whether your accountant will quietly block go-live for six weeks because the localisation doesn’t do exactly what she expected. This post is about what to do with that fact.

The three buckets a quote actually contains

Every partner quote, regardless of how it’s formatted, breaks down into three buckets. They get mixed together in the PDF, which is why comparing quotes feels like comparing cars described only by their weight.

Bucket one: configuration. Switching modules on, setting up company data, loading the chart of accounts, assigning user permissions, enabling the Indian GST module or the Saudi ZATCA connector. This work is highly predictable. A good partner can quote this to within 10% of reality. If a quote is 80% configuration, it is mostly trustworthy.

Bucket two: customisation. Changes to how Odoo works — new fields, custom reports, modified workflows, integrations with your existing tools. This is where estimates break. The partner is guessing at scope based on a two-hour discovery call. You are describing processes you half-remember and approvals that “usually happen” but sometimes don’t. Every customisation item in the quote should be read as a range, not a number, with the top of the range being about 2.5× the quoted figure.

Bucket three: data migration. The bucket nobody respects. Pulling data out of Tally, or a legacy CRM, or a dozen spreadsheets maintained by a dozen people, and getting it into Odoo cleanly. Partners systematically underquote this because you, the client, systematically under-describe how messy your data is. I have never seen a data migration come in at quote. Not once. Budget 2× whatever the partner says, and if it comes in cheaper, treat the savings as a gift.

What to ask for, not what they give you

A quote titled “Odoo Implementation — ₹18,50,000” is not a quote. It is a wish. Before signing anything, ask the partner to break it out like this:

  1. Software licensing for three years, line-itemed by module and user count
  2. Configuration effort in hours or days, with a list of what it includes
  3. Customisation effort, broken down by deliverable, with a named owner for each item
  4. Data migration effort, split by source system and entity type (customers, products, invoices, opening balances)
  5. Training, by role and by hour
  6. Project management and post-go-live support, as a monthly figure for the first three months

If a partner won’t provide this breakdown, that’s the answer. They’re not hiding numbers; they genuinely haven’t thought that hard about your project, and you’ll pay for that later.

The two numbers that matter most

Of those six line items, two matter more than the others put together:

Customisation days. A 20-user deployment with 5 customisation days is a configure-and-go project with clear scope. A 20-user deployment with 40 customisation days is a small software engineering project dressed up as an ERP rollout. These are priced similarly at the top line and run nothing like each other. If your number is closer to 40, ask the partner what their process is for change orders, because you will generate many.

Post-go-live support retainer. The first 90 days after go-live are when your team finds everything that’s wrong. If the partner has you on a support retainer for those 90 days with fast response and a named person, the whole deployment risk curve flattens out. If the support is an ad-hoc ticket queue that takes three days per response, you will experience the project as a disaster even if the configuration was perfect.

The quiet cost nobody quotes: your people’s time

Every quote omits the single largest cost: what your team spends on the project while doing their regular jobs. For a typical 25-person company implementing Odoo across sales, inventory, and accounting, plan for:

  • The project owner (usually a CFO or COO) losing 25–40% of their capacity for four months
  • The functional leads in each area losing 15–20% for three months each
  • Every user losing two to three full days of productivity during go-live week

At standard salary costs, this is often 40–60% the size of the partner quote. It never appears on the partner quote because the partner isn’t paying it, but you are, and if you don’t plan for it, the project feels more expensive than budgeted even when the partner comes in at cost.

What a good quote conversation sounds like

The best partners, in my experience, push back on their own quotes before you sign. They will say something like: “We’ve estimated 18 days for the sales customisation, but I want to flag that your process around multi-level approvals is complex enough that I wouldn’t be surprised to see it go to 25. Let’s agree a change order process now for anything past 22 so we’re not surprised.”

If nobody on the partner team ever says anything like that, the quote has been sales-optimised rather than delivery-optimised. You will feel the difference in month three.

So what do you do

Treat the quote as a conversation starter, not a contract. Break it into the six items above. Apply 1.5× to configuration, 2.5× to customisation, 2× to data migration, and add 50% of the total again for your own team’s time. That’s your real budget.

If that total still makes the business case work, sign the quote. If it doesn’t, the honest answer isn’t to negotiate the partner’s number down. It’s that the project as scoped won’t pay back, and you need to scope it smaller or walk away.

The Odoo implementations I’ve seen succeed are the ones where the client went in with their eyes open on these numbers. The ones that went sideways are almost always the ones where the client believed the quote.

implementation-costpartner-selectionbudgeting