Time and Materials vs Fixed Price: What is the best contract model for your software project?

Michał Pierzchlewicz
TeaCode.io
Published in
4 min readJul 26, 2019

Planning on creating a new mobile application? Want to hire a development company to help you build a new product? Not sure what is the best option for the form of the outsourcing agreement? In this article, I try to provide a simple comparison of Time and Materials vs Fixed Price models and talk about my conclusions after working in both models for several years in TeaCode.io.

Time and Materials (T&M)

In short, the T&M model involves regularly paying for work that has been completed — usually on a monthly bases. As a client you should be receiving regular reports of the work that has been done, the time it took to complete these tasks, plus any other extra costs that might have been generated. The client has the freedom to regularly change the specifications of the project or add new components.

Pros:

  • Flexible requirements. This is the big one! Work is divided into short sprints and it is very easy to modify it. It perfectly fits into the agile methodologies of project management.
  • Predictable rates. Clients usually agree on the hourly rate and the number of developers that will be involved. This makes it easy to predict the monthly cost.
  • Product quality. The product is well-tested and brought to near-perfection thanks to multiple iterations, resulting in high-quality software.
  • Transparency. The T&M model allows clients to freely monitor progress as well as who is working on the project.
  • Easy to start. Less upfront work is required to start developing and moving forward as no detailed scope and complex agreements are required.

Cons:

  • Uncertain deadlines. You do not receive any written guaranty that your product will be completed in a specific time. This, however, does not mean that you will have problems with meeting your deadlines. Thanks to full control over the development process, you can freely cut down on initial features to speed up the development process.
  • Undefined budget. The price is approximate, so you do not know for sure how much money you will spend since the timeframe for designing and implementing features is flexible. That does not mean you do not have control over how much money you will pay.
  • Need to manage the process. You will have to be more involved in the development and management process.
  • Hard decisions. Since market conditions can change unpredictably, it may become clear that some features or design elements that were originally planned are no longer relevant. In this case, you must act immediately to adjust development to better meet current conditions.

Fixed Price (FP)

The FP model is based on an estimate of the amount of work that will need to be done. A detailed scope, wireframes and project requirements need to be prepared beforehand. In this model, it’s important to discuss everything before the actual development in order to estimate the cost of the software product.

Pros:

  • Finalized pricing. After the contract is signed, you will know the budget. The company cannot overcharge without notice. That does not mean you will not have to pay more if changes show up during the process.
  • Strict deadlines. When the customer understands what features they want in an app, the developers can come up with a clear plan and definite deadlines. Everybody knows what work will be done at any given point in time.
  • Predictability. When everything has been discussed and planned beforehand, it’s easy to monitor the status of software development and predict if the work will be completed on time.
  • Less management. All project details are defined in the contract, so project management can be passed down to the project manager. No excessive supervision is required on the part of the client.

Cons:

  • Rigid terms. After starting the project, it is hard to make any adjustments during the course of implementation. If market conditions change and your feature list need to be modified, implementation of this new feature has to be negotiated independently. This contract model requires more paperwork and negotiation time.
  • Long planning. More in-depth planning will be required. There are a lot of details that need to be discussed and thought upfront and missing out any can lead to an increase in cost.
  • Miscommunication risks. There’s always a risk that miscommunication at the beginning may lead to delivering a product that doesn’t exactly meet with your expectations.
  • Complexity: Software development is a very complex process and in reality, it is very hard to perfectly plan out the whole product upfront. Some modifications always have to be made and they will increase the final price.

Conclusion

Personally, I have worked on projects in both models and for both cases, I have examples of products that ended up being successful and not so much. The key factor that best determines what model to use is the size of the project:

  • Small projects (up to a few hundred hours of development): It is sensible to go with the FP model, as it is straight forward to prepare a detailed specification. Also, the development time should be short enough that your requirements and features should not change during the process.
  • Big projects: My personal recommendation would be to go with the T&M model, as it is a more scalable solution. With the increase in project size, the FP model does not scale and its disadvantages grow as well. This will lead to an increase in the final project price or decrease in product quality.

--

--