A business that needs a piece of software has three real paths to it: buy an off-the-shelf product, configure an existing platform around the specific need, or build something custom. Almost every comparison of these three starts and ends with the upfront number, and that number is the least reliable part of the decision — the real cost lives downstream, in what each path requires once it is actually running.
Buy: fast, but the constraint is real
An off-the-shelf product is the fastest path to something working, and for a genuinely standard need — accounting, scheduling, common CRM workflows — it is usually the right one. The tradeoff is that you are adopting someone else's model of how the work should happen, and when your business does something even slightly differently, you either bend the process to fit the software or you live with a workaround forever.
The hidden cost here is rarely the subscription fee. It is the accumulation of small workarounds over years — a spreadsheet next to the system to handle the one thing it doesn't, a manual step nobody remembers the reason for — that eventually cost more in quiet daily friction than a better-fitted option would have.
Configure: the middle path, and where its risk actually sits
Configuring an existing platform — a CRM, a booking system, a website builder — around your specific process sits between the other two: faster than building from nothing, closer to your actual workflow than a rigid off-the-shelf tool. This is the right choice more often than either extreme, precisely because most businesses' real needs are a specific variation on a common pattern, not something genuinely unprecedented.
The risk that gets underestimated is configuration debt: a heavily customised setup on top of someone else's platform becomes fragile in a specific way — a platform update can break a workaround nobody documented, and the person who built the configuration two years ago may no longer be reachable when it does. Configuring well means documenting what was changed and why, not just making it work today.
Build: the option everyone underestimates the cost of
Custom development is the only path that produces something that fits exactly, and it is also the path whose real cost is most consistently underestimated — not the build itself, which is usually quoted honestly, but everything that comes after launch. Software is not a project with an end date; it is a living system that needs security patches, changes when the business changes, and someone who still understands it two or three years later when the original developer has moved on.
This is the maintenance nobody quotes for, and it is the single biggest reason custom builds go wrong — not bad code at launch, but no plan for who owns the system a year in. If you are seriously considering building, the honest question is not "what does it cost to build" but "who maintains this in year two, and what does that cost."
A more useful way to decide
Rather than comparing three upfront prices, compare three total-cost trajectories over three years, including the maintenance each path actually requires:
- Buy trades low upfront cost and fast deployment for an ongoing subscription and a ceiling on how far the software will ever fit your process.
- Configure trades moderate upfront cost for a better fit, at the price of configuration debt that has to be actively managed, not ignored.
- Build trades the highest upfront cost and longest timeline for an exact fit, at the price of a genuine, ongoing maintenance commitment that does not end when the software ships.
The right choice depends less on budget than on how standard the actual need is and how much internal capacity exists to own whichever path is chosen. A business with no appetite for ongoing technical ownership should weight heavily toward buy or configure, regardless of how tempting a fully custom fit sounds — because the software that fits perfectly on day one and has nobody to maintain it by year two is worse than the imperfect tool that is still running.
This decision is also not permanent. Starting with a configured platform and only building custom for the specific piece that genuinely cannot be configured is often the most honest middle path — it defers the highest-commitment option until the specific gap is proven real, rather than guessing at it upfront. Our software team works through this tradeoff with a client before recommending a path, because the wrong choice here is expensive in a way that does not show up until year two.




