Implementing ERP software is not a one size fits all process. There are many variables that you should consider and a fair amount of difficult questions you should ask before starting. In the past few years I've built probably 40-50 Odoo implementation quotes. Each estimate is a little different based on the project but I will try to outline the metrics that I use.
Building a Custom HomeBefore discussing how we come up with our estimates, I want to share a story.
If you have ever been involved in a home construction project, you should be able to relate to my favorite Odoo implementation analogy. In 2017 my wife and I started the process of building a home for our family. For years, I told anyone that would listen that I would never build a house and anyone that did was crazy. After surveying the market, we couldn't find what we wanted and we set out to build our own, and I ate the humble pie.
The first step in that process was to meet with an architect who asked the basic questions about number of baths, beds, and square feet. We discussed our overall style, and any restrictions that the house might be subject to for the neighborhood. After several meetings and revisions we had a set of plans and it was time to start shopping for a contractor. We had a short list of names and I approached that selection much like most people would shop for an implementation partner.
I was blown away at the variances in price that I received from different builders for the same set of plans. Only after really digging into the details of their estimates did I really understand why they could come up with such different prices for the same project. The actual construction on all of the bids was largely the same. The house would after all take the same number of 2x4's and the same number of square feet of concrete.
As you can expect, the bids varied based on the finishes, and the allowances. Each contractor gave us an allowance in the budget for different rooms that were designed to let us decide what kind of tile, counter tops, trim, door knobs, etc. that we would choose. Next, we took these different allowances and started to shop the finishes. It was really clear that some of the builders had listened to our tastes, and the plans and gave us appropriate allowances. Others on the other hand were way to big of allowances that we could never afford. The worst, were the allowances that were far too low and unrealistic.
The question you have to ask is, Do you want the spec house, or the custom home?
Implementing Odoo is very much like building a home. You can hand the same set of requirements to different partners and get back vastly different estimates. The question you have to ask, is do you want the spec house or the custom home when the projects over? The truth is, even some of the wildly low implementation quotes I've seen are given in good faith, but it's up to you to understand what you are getting when one partner quotes 50 hours and the other quotes 300 hours for the same project. The difference in those is the amount of discovery, training, and care you will receive along the way. Both of the projects will likely end up with a "working" version of Odoo with your data and generally working concepts. The difference is in the finishes.
Our Estimation Method
I've developed an estimating tool in excel that allows me to plugin a few pieces of information and it helps me to come up with a starting point. From there, the math has to be interpreted into a quote based on conversations with the prospect and their requirements that are less simple to estimate. These pieces are really the finishes that I discussed in my home construction analogy.
Here is the information I use to build a quote:
5. Go-Live Date
The Apps List
The first thing we want to know when building an implementation estimate is the apps that you intend to use in Odoo. This simple piece of information of course opens a world of other questions but its a critical first step. By just seeing this list, I am able to understand the level of complexity of your business.
In my quote tool, I have a list of nearly every out of the box setting in each app. I have some pre-assigned values based on historical results for each setting in the system and we set hours for documentation & training as a percentage of the discovery and configuration. For example, if you intend to use TaxCloud for fetching customer tax rates, I am automatically expecting about 5.2 hours of labor, broken out into the following categories:
I can then pivot the number of hours for each module / feature into a master estimated number of hours per module that is the basis for our estimate.
Number of Users
After we know the list of apps, another critical piece of information is the number of users. There is little difference in implementing Odoo for 20 users versus 30; but there is a big difference between implementing for 20 vs. 100. Some of the additional implementation expense on a 100 user system can be offset by the clients internal resources. For example, a client who adopts a "train the trainer" mentality can typically implement Odoo for much less than one that expects their partner to do all training.
Number of Systems Replacing
Due to Odoo's breadth of functionality, we typically replace at least two, and as many as six systems during implementation. This could be things like core accounting, project management, expense reporting, access databases, enterprise chat, quoting systems, etc.
If we are replacing multiple systems, you can generally expect the data conversion to be more complex. On a recent project we were given customer data from two systems and had to manually merge it before importing to Odoo. This is not an un-common scenario and we are happy to do it but if you do not have the team to do the data cleanup before handing it to us, expect to pay extra for that effort. Contrast that example with another recent project where the customer left SAP for Odoo. This customer, while one of our larger projects, was very efficient because the users expected a single data source and understood ERP concepts. This made the project easier and the data migration was all from a single location to a single location.
During our initial conversations about how you intend to use Odoo, I can usually ask enough questions to understand where the gaps might come into the project. This can reveal itself in demos and in depth conversations during the pre-sale. When providing an estimate for implementation we always outline and estimate the known gaps up front. Obviously, things can come up during the project that were not known in advance but it's helpful to put as much on paper up front as possible.
Setting a date on the calendar is a good way to generate a favorable estimate, because time can often be a great motivator. We have completed implementations in just a few weeks when clients were up against a software renewal, sale of a business, or other circumstances. In these cases, the amount of time available is a large driver in the cost. Clients that are non-committal to a go-live date tend to spend more because they want to hold out on going live until they get everything just perfect, which is certainly the "custom home" route.
In the end, the final number is subjective to my overall impression of the clients readiness for change, willingness to take advice or take no for an answer, and their capacity to do some of the heavy lifting. No two projects are the same, and you should reject any partner who gives that impression during the quoting process.
Every client has their strengths and weaknesses that they bring to the project. In some cases we can leverage experts on their staff to export, format, or normalize data. In other cases, we know from the first meeting that there are key players on their staff that are going to fight the project from day one. These variables just go into the experience column when quoting an implementation.