Project Managers and product owners can easily estimate how much time and money will a standard development project require. However, estimating the time of delivery and internal cost of an Artificial Intelligence (AI) based feature might be tricky. There are a lot more variables influencing the time of delivery and price of such project in comparison with standard software development. Below you will find an information on how to price an AI project.
Naturally in this guide we do not talk about creating another Siri. Most AI projects consist of adding a small AI powered feature on top of existing software with a simple goal of maximizing the impact of the collected data. Nonetheless, it is important to plan costs and undersatnd how to price AI project before starting working even on small features.
Some of the aspects that complicate the whole thing include:
- The estimation of lines of code is no anchor.
- The fact that you built a model, does not mean you are any closer to finishing the job — sometimes you will have to iterate several times before you reach a satisfactory level of accuracy.
- There is a huge diversification of skills within the field and many times you will spend an unusual amount of time on learning new methods, before you approach the problem itself.
- When approaching a problem you need full understanding of the business logic at hand, otherwise you won’t be able to make a case for the necessary input and output.
- The quality and size of your training set changes everything.
- Seemingly similar tasks might require an order of magnitude more work.
- The cost of servers needed for training the model might be a substantial part of the valuation.
- There is usually lots of unscheduled work with data preprocessing
- In most cases you have to connect data from multiple unorchestrated systems
The key point is this — you kind of have to forget all that you know about pricing an IT project before you approach an estimate (price) for an AI task or whole project. In this article we will go through the entire process step by step.
Step 1 — Define the scope of the project befor pricing it
Let’s start with the basics and ask the 4 basic questions that will allow you to move forward with clarity over what you want to achieve. Thoose questions will help you to price an AI project.
- What data am I going to use for training?
- How exactly will the output look like?
- How will I measure the quality of the model?
- What accuracy is acceptable?
- Am I sure of that the input is truly connected with output?
Having clear answers to those questions gives you a more realistic scope of the entire project. Now it’s time to strip the price estimation of all the non-AI stuff.
Step 2 — Separate AI-tasks from non-AI tasks
When someone in the company says “let’s create AI feature that detects this or that” there is quite a lot to unpack. In most cases the job require lots of work not directly related to AI.
In this step you have to find all the aspects of the project that do not require AI related skills and thus are easy to estimate yourself.
Some questions to ask yourself to find out which parts of the project are actually not AI related:
- Am I able to easily retrieve the data? How will I feed data to the AI model?
- Is the data format ready to use? Is there a lot of work with transforming the feeds?
- How will the end user interact with the output? Do I need to create some API or reporting dashboards?
- How will I host the model, do I need to prepare servers for that?
- Are there any external data sources I’ll have to use? How will I connect them?
After a while you will have the full list of things that are basically simple software development or business intelligence development. Those tasks will be easy for you to estimate leaving as little space for the unknown as possible.
Step 3 — Choosing development approach
Evaluating the AI part of the project is simple, only when you have a skilled professional on board who has worked with similar problems before. In case you don’t (which is the majority of companies) you have to choose your approach and each will have a different price/time/risk ratios.
Ready to use tools and high level APIs
Many companies decide to have their programmers without data science background do the job using high level APIs and ready to use tools. This approach saves a lot of time and might be the best choice in some most popular problems. However it’s highly unpredictable if the API will be a good fit and there is a significant risk of simply losing a lot of time without achieving anything because there is not much you can tweak in a model you haven’t created yourself.
- Pros: Quick and cheap
- Cons: Unpredictable results Risk of running into a dead end — not being able to tweak the badly performing model High probability of not finding the right API/tool
- Recommendation: Good for simple projects based on popular AI problems
Have the analyst do a custom model
Unskilled analysts without strict Machine Learning and AI experience usually spend weeks on research and try different approaches but finally end up with a model of questionable accuracy and concerning structure. We strongly advise against this scenario.
- Pros: Unless your analyst is a genius, there are none
- Cons: Ends with a disaster in 80% of cases due to malfunctioning models High probability of delays Usually extremely low quality of the model
- Recommendation: Just don’t do this
Hiring a skilled expert
In case you strategically think about developing multitude of different models and you look at AI as your future key selling point, it might be the best policy to hire a skilled expert who will later hire junior data scientists.
The time and money are obviously a problem. Hiring an AI expert in US takes on average 3 months (Glassdoor) and you’ll have to expect at least $120.000 /y in compensation. You risk a bad hire too, as evaluating the work of an AI expert without having any expertise in the matter yourself is really hard.
- Pros: Keeping support of the project Being able to grow your team Being semi-independent (the guy can always be poached)
- Cons: Long hiring process Hard to evaluate work High wage
- Recommendation: A good move if you want to slowly change into a completely AI based company.
If your project is a simple black box and is not a crucial part of your software, it might be the best way to simply hire an experienced professional who will be able to deal with the task really fast.
Naturally those are not cheap especially in the current US market of AI experts which is a subject of a bidding war among the global corporations.
On the other hand however, you will have full confidence that the job will be finished quickly and you can expect satisfactory accuracy (if your training data is right). In many cases having an expert like this tackle the problem quickly can turn out to be cheaper than having your team member learn the entire art from scratch.
- Pros: Relatively quick High probability of having the job done well
- Cons: Expensive Rarely any support
- Recommendation: Good if you have a single task that has to be dealt with quickly.
AI consulting company
Naturally take my words with a grain of salt as we are an AI software house ourselves.
A nice thing about them is that they can provide a semi-accurate price estimate upfront based on their experience. This might work as a benchmark for future discussion inside the company.
If you’d like to know estimation for your project, let us know using project estimation form and we will do our best to help.
In case of specialised software houses, the job is usually finished really fast because there is a high level of specialisation within such organisation. There is a separate guy for computer vision, for natural text understanding, for predictive methods and so on. Assigning someone who did several similar projects before, results in an extremely rapid development and lowers the risk of failure at the same time and lower pricing for such AI project.
As AI projects can easily be contracted to a company abroad, you can look forward to lower menday prices. At the same time you have a partner that will be able to gradually increase model’s accuracy on daily basis or take up another project if that’s needed, so the risk of losing “the guy who wrote this” is really low.
- Pros: Really quick High quality Support In case of foreign software houses — price will be an advantage
- Cons: Still not many of them Establishing the relationship takes a while In most cases those will be remote experts
- Recommendation: Perfect for companies that want to add AI as a part of their software or operations quickly.
Training some AI models takes a Macbook Air and a couple of hours. It might be taken as an oversimplification on my part but usually, training a model based on numerical data weighting less than 100 mb is not an issue.
The whole thing changes when you approach analysing huge amounts of sound, image or video files. It’s best to consult a professional to estimate the price of training such models. Bear in mind that having the model go through the training set does not mean it will work properly. If not badly designed, you might have to start again.
AI projects are tought to estimate (price) but having a clear analysis of all the non-AI tasks actually clarifies a lot.
The price of development of strictly AI related features and projects varies a lot depending on your approach to the whole thing. Each approach has a different ratios of cost/time/failure probability.
One of the best ways to get a clear picture is to contact a specialised AI consulting company and ask how many hours of each type of expert would that take (how price will looks like). That will allow you to discuss the matter internally and find the way that best suits your needs.
Planning a project? Get an Estimate of your BI or AI project within 1 business day for free. Delivered straight to your inbox AI project pricing.