In every company we walk into, the same question comes up sooner or later: "should we build it ourselves or buy something off the shelf?" "It depends" is true, but useless. This article shows what it should actually depend on — and the traps waiting on both sides if you run a 10–50 person company rather than a corporation with its own dev team.
In practice, most SMEs fall into one of two extremes. The first is "let's buy it ready-made, the vendor says it covers 90% of our needs" — and a year later it turns out to cover 55%, with the rest being expensive customizations that can't be safely updated. The second is "let's build our own because nothing on the market fits us" — and two years later the company has an app that only one developer understands, who just resigned.
Both can be avoided. You just need to think, twice a week, about something boring: is the thing we're choosing now the core of our business, or just a tool sitting next to it?
Default to Buy. Why off-the-shelf usually wins
If the process you want to support is the same one a thousand other companies run — accounting, payroll, warehouse, invoicing, basic CRM — then with 95% probability a ready-made system will be cheaper, safer, and better maintained than anything you commission to order.
Why? Because the cost of writing it is just the tip of the iceberg. Underneath sit:
- Maintenance — updates for new tax formats (in Poland: JPK, KSeF), new e-invoicing standards, VAT changes, GDPR adjustments. The vendor of Comarch Optima, enova365, or Subiekt GT does this for all clients at once. In a custom app, you fund every single change.
- Security — patches, audits, password policies, MFA integration. A solid SaaS bundles all of this in the license.
- Domain knowledge — a ready ERP already knows about split payment, reverse charge VAT, agricultural flat-rate invoices. Your developer will learn all of that on your time.
- Continuity — when the company grows from 15 to 35 people, an off-the-shelf system just scales licenses. Custom often needs to be rewritten.
Short version: don't build your own accounting system, don't build your own payroll, don't build your own CRM from scratch. These are areas where product competition is dense and you have no competitive edge there.
When custom software actually makes sense
There are, however, situations where off-the-shelf fundamentally does not fit, and trying to bend it through customization ends worse than starting from scratch. The signals:
- A core business process where you're different from everyone else. You have your own pricing method, your own product configurator, your own production planning logic that competitors don't have. That's your edge — and it won't fit inside a generic ERP box.
- A repetitive, high-volume process no ready module covers. Most often this is a variant configurator, quote calculator, technical document generator, or operational dashboard for shop-floor supervisors.
- An integration the market doesn't have. Your supplier wants data in an unusual format, a regulator demands a specific report, a corporate client imposes their own EDI. Everyone will quote that as a "customization" — a small purpose-built tool comes out cheaper.
- A relatively narrow scope. An app built around one specific pain point (quoting, costing, production reporting) has 80% less scope than a "comprehensive ERP" — and is therefore realistically buildable in 2–4 months, not 2 years.
Rule of thumb: build what is your competitive edge. Buy everything else.
A real example — when a custom app pays back in six months
At one of our clients — a 28-person manufacturer of steel structures — the situation looked like this. They used enova365 for accounting, warehouse, and sales. The off-the-shelf system worked perfectly. But quoting was a nightmare: each quote was 30–120 minutes of work for a design engineer in Excel with macros — calculating steel usage, paint cost, transport, margin. There was one engineer, and 40 inquiries came in per week. Half of them never got a quote on time, and customers were walking away.
The enova vendor offered a "dedicated quoting module" for around 90,000 PLN plus maintenance. Reviewing the scope, it turned out it wouldn't cover 40% of the engineer's logic and would still require a parallel Excel. We built a separate web application in .NET instead, integrated with enova via REST API: the product catalog syncs from enova, accepted quotes drop into enova as a sales document, the invoice then follows the standard path.
Cost: around 65,000 PLN, 3 months of work. Result: quote turnaround dropped from 30–120 minutes to 6–8 minutes. The engineer stopped being the bottleneck. Quotes issued per month grew from about 90 to over 250. The project paid for itself within 5 months purely from the higher quote-to-order conversion. The app is small (one calculator screen, one list screen), the documentation fits on 12 pages, and a new developer can onboard in one day.
This wasn't "a custom ERP". It was one small tool that does one job better than any product on the market. That's why it worked.
The "customization" trap of off-the-shelf systems
The worst of both worlds is the middle: buying an off-the-shelf ERP and then reshaping it to fit. Each modification sounds reasonable in the proposal ("we add a field, change a workflow, build a custom printout"), but after three years you end up with a system that:
- can't be updated without rewriting your changes
- is more expensive to maintain than a custom app would be
- still doesn't do exactly what you wanted
- is locked to one specific implementation partner
We've seen projects where the cumulative "small changes" billed against an off-the-shelf ERP over three years exceeded the cost of building a dedicated application from zero. And the license still ran, because "the accounting is in there".
Rule: if, already at the implementation stage, the vendor proposes more than three code-level customizations, that's a red flag. Either you've picked the wrong system, or what you're trying to do should be a separate application integrated via API.
A short decision test
Before you sign anything, answer these five questions honestly:
- Is the process this software supports at the core of your competitive edge, or just back-office plumbing?
- Does a ready-made system exist that covers at least 80% of needs without code modifications? (Not "with customizations". Without them.)
- Is your process stable enough that you won't significantly change it for the next 3 years?
- Do you have someone who will be the business owner of the project — not IT, but a person who knows the process inside out?
- Have you budgeted for maintenance after go-live? (A custom app with no maintenance budget dies within 2 years.)
Three or more "yes" on questions 2 and 3 — buy off-the-shelf. Three or more "yes" on 1, 4 and 5, with "no" on 2 — consider building. "No" on question 4 — don't build anything until you find that person.
What to do next
The Build vs Buy decision is rarely a clean either-or. In practice, most of the SMEs we work with run a hybrid setup: an off-the-shelf ERP for accounting, warehouse, and HR (Comarch Optima, enova365, or Subiekt) plus one or two custom point applications around the truly core processes, integrated via API. That's what a healthy IT stack looks like for a 20–40 person company.
If you're weighing a specific project and don't know which side of the line it falls on — we're happy to break it down with you. The first conversation is free and takes half an hour.
Build what is your competitive edge. Buy everything else. The rest is detail.