How to budget successful software projects in 2021

1xINTERNET has been lucky enough to be able to continue to grow, even when considering the challenges faced by many companies in 2020. One of the reasons is that we have built long lasting relationships with many of our customers, and we were able to adjust our plans with them when needed.

For 2021, we have already agreed on budgets with most of our clients, and have planned the ongoing delivery of their projects.

However, one of the things that we noticed over the past years is that when we start to work with new clients, the project budgets are often planned as one-time investments, and future development is sometimes overlooked.

Based on our experience, we always try to recommend an iterative approach for delivery, in order to collect client feedback early, and to be flexible with ever changing requirements. This approach has proven to be successful, so we decided to dig deeper and analyse our most successful projects in more detail, to benchmark our recommendation against real budget spending.

Traditional vs. iterative software projects

To understand the mechanism from a budget perspective, we assume two example projects. Both have a budget of roughly 200.000 € available over a period of 12 months.

Project 1 is a more traditional software project. It is specified and implemented with all the initially desired features. After intensive testing the software is rolled out, and then maintained at a very low cost, with minimum investments after initial go-live.

Project 2 is a project with an ongoing budget and regular releases. The first version of the software has a much smaller feature set, is developed and released much faster, and has a lower budget. Naturally, development does not stop after the first release. Planned features as well as new features derived from user feedback are implemented iteratively throughout the year.

As an example, the following graphic represents the budget spending per month for these projects.

chart showing budget allocation for two different projects
Hypothetical Budget Distribution

As mentioned, the total budget spent is the same over a period of 12 months for both projects.

At first glance, it might seen that Project 1 actually achieved all their goals in a shorter period of time. But what we normally observe is that once a website is in production, real client feedback normally confirms that changes are needed, and not all requirements were met or new requirements emerge, for example, because market conditions have changed. In such cases the challenge is that the budget was mostly exhausted in a short period of time, and then enhancements or improvements are delayed, sometimes until the following budget cycle.

Our data from the real world

For this study we analysed the revenue streams of 10 successful projects we worked on in the last 2 years. For each project we calculated the monthly revenue as a percentage of the total revenue per year.

Graph showing revenue distribution of different software projects over 12 months in 2019
Normalized budgets of 10 most successful projects in 2019
Graph showing revenue distribution of different software projects
Normalized budgets of 10 most successful projects in 2020

The graphics above show the budget expenditure of our 10 most successful client engagements in the past two years. For most of them, the budget was distributed rather evenly across the year, with occasional peaks when larger features were implemented.

No client spent more than around 30% of their yearly budget in a month, or more than 75% of their budget in a period of 1-3 months. Instead, all clients broke the budget down into smaller chunks and used it over the year, adapting to different market situations, and changing customer behavior.

Ongoing development is  usually planned for the full year, and the monthly spending lies within a monthly budget range.

Why do we recommend this iterative approach?

Firstly, working with an ongoing budget reduces the risk. If requirements change or the initial project estimation was too small, these challenges can be dealt with earlier.

Secondly, when software is released earlier and in smaller chunks, feedback from users can be collected sooner and be incorporated in the next releases. The same is true for integrations with other systems. The earlier APIs are tested on live systems, the sooner potential shortcomings can be uncovered.

Lastly, technology is constantly evolving. This is especially true for digital solutions. With a budget reserved for longer periods, valuable innovations can be implemented without first having to secure additional budget, or having to wait until the next budget cycle.

Conclusion

In summary, our recommendation is to plan to make the first release as small as possible. This leaves room to improve the functionality later with enough budget at hand. The distribution of the budget should be planned by the client and the service provider together for a period of at least 12 months.

Working like this reduces the risk for both clients and service providers and provides better conditions for creating long lasting and successful relationships.

See our projects

E-commerce solution Multisite solution

Transgourmet - multisite and headless e-commerce

Transgourmet food trucks next to the warehouse

Developing a multisite CMS platform with Drupal and Commercetools to offer customers and suppliers the latest digital convenience.

CMS solution

SENEC GmbH - Corporate website

Field of solar panels

SENEC is a provider for innovative solar energy solutions. The main challenge of this long-term project is to build a strong online presence with an...