---
title: "Build vs Buy ERP: Decision Framework"
description: "When building a custom ERP beats licensing one, when it does not, and the seat count below which we say buy. A scored five-axis rubric plus 3-year TCO bands."
canonical: https://erpstack.io/compare/build-vs-buy-erp
markdown_url: https://erpstack.io/compare/build-vs-buy-erp.md
publisher: ERPStack
---

# Build vs. Buy ERP: A Scored Decision Framework and Its Disqualifiers

## Quick answer

Building beats buying when process fit, seat growth and integration count all point the same way and you have a named engineering owner. Buying wins when your finance processes are close to textbook, when you file statutory returns in many countries, or when you are below roughly 25 seats. Score the five axes on this page; a middling total means hybrid, not build.

Buy when your processes are standard and your seat count is small; build when two or three workflows are the thing that makes you money; run a hybrid — licence the core, build the differentiator — for most cases in between. Below roughly 25 seats a licensed suite is usually cheaper across three years, and that is the threshold at which this page argues against building. The rubric below is scored, not rhetorical.

## Total cost of ownership

| Cost line, 3-year horizon | Buy: Oracle NetSuite | Buy: SAP S/4HANA | Build: ERPStack custom |
| --- | --- | --- | --- |
| Year-1 implementation | $80,000 - $250,000+ | $150,000 - $500,000+ | $25,000 – $250,000+ one-time |
| Annual licensing (indicative band) | $25,000 - $150,000+ / year | $100,000 - $1,000,000+ / year | $0 — no seat licences at any headcount |
| Cost of 50 more users in year 2 | Priced by seat count; the band above was collected for mid-market seat deployments | Priced by deployment size; the band above reflects mid-market contract values | $0 — headcount is not a licensing event |
| 3-year total (year 1 + 3 years of licence) | $155,000 - $700,000+ | $450,000 - $3,500,000+ | $25,000 – $250,000+ plus hosting and maintenance |
| What you hold at the end of year 3 | A renewal quote | A renewal quote | Source code, the PostgreSQL database and the IP, under a perpetual licence granted at kickoff |

## Implementation timeline

- **1. Score the five axes, then stop or continue** (Week 0): Score process non-standardness, 36-month seat growth, integration count, regulatory surface and in-house engineering capacity from 0 to 4 each, then add them. A total of 7 or below means buy the licence, and the honest end of the engagement is here rather than at a proposal.
- **2. Price both routes on one horizon** (Weeks 0–1): Put the licence quote you are holding beside the 3-year table above, then run your own seat count through the ROI calculator on this site. A build has to beat the licence stream across three years, not win on every line in year one.
- **3. Pilot the single module the score points at** (Weeks 1–8): Build the one workflow that scored highest while the incumbent stays the system of record. A single-module build is the cheapest way to falsify the score before the full scope, the data migration and the cutover are committed.

## Hidden costs

### The licence line compounds with headcount, not with usage

A licensed mid-market suite bills $37–$165 per user per month — ERPStack’s own observed list-price range across comparable mid-market SaaS suites, not a rate published by any single vendor. At 25 seats that is $11,100 to $49,500 a year, and three years of it is $33,300 to $148,500. Hiring is what moves that number, so the cost of the system is set by a decision the finance team does not make.

### A custom build moves statutory maintenance onto your own backlog

SAP S/4HANA ships vendor-maintained statutory localisation packs and updates them as the law changes. That work does not disappear when you stop paying for it — it becomes a permanent line on your own roadmap. Budget it as recurring engineering rather than as a project cost, and price it before the build, not after.

### The hybrid has a seam, and the seam has a cost

Licensing the core ledger and building the differentiator is the right answer more often than either pure route, and it is not free: you own an integration, a reconciliation job and a failure mode neither vendor supports. Price the seam explicitly. A nightly sync that silently drops rows costs more than either pure answer.

### A build with no named owner is the most expensive option on this page

Source code you cannot staff is worse than software you rent, because the maintenance obligation arrives whether or not anyone is there to meet it. If no named person will own schema changes, releases and dependency upgrades after handover, the answer is buy — whatever the other four axes score.

## Where the named platform wins

### Speed to a compliant general ledger

Oracle NetSuite reaches a working, audit-familiar general ledger faster than any custom build cycle, and it arrives with an auditor population that already knows the system. If your constraint is a filing date rather than process fit, that gap settles the question on its own and no rubric total should be allowed to override it.

### Vendor-maintained statutory localisation

SAP S/4HANA ships country-specific tax, payroll and statutory reporting packs and maintains them as the law changes. A custom ERP has to build each one and then keep maintaining it. Filing in many jurisdictions is the most reliable reason on this page to buy rather than build.

### The hybrid beats both pure answers more often than either

Licence the ledger, build the differentiator. Re-deriving a general ledger you could rent is waste; renting the two or three workflows that actually make you money is worse. Most totals land in the middle band and resolve to a hybrid, and a page that concluded "build" at every score would be exactly as useful as the vendor pages that conclude "buy".

## When a custom build is the wrong answer

- Seat growth: fewer than roughly 25 users and no compounding headcount plan. At the low end of observed per-seat pricing a licence stream that small does not repay a build across three years — the same threshold this site publishes on its pricing page.
- Process fit: a mid-market suite already runs your process without modification. Configuration beats code every time configuration is genuinely available.
- Regulatory surface: statutory filings across many countries. Vendor-maintained localisation is worth more than source-code ownership when the obligation changes without notice.
- Engineering capacity: no named internal owner for schema, releases and dependency upgrades after handover. This is a hard gate and it overrides every other axis.
- Integration count: one or two integrations, each with a vendor that publishes a supported connector for the suite you are already considering.
- Timeline: a hard statutory or contractual go-live inside two months for a full multi-module finance suite. Nothing in our published delivery window makes that safe.

## Verdict

Score the five axes and act on the total rather than on the preference you walked in with. Seven or below: buy the licence, and this page is telling you not to hire us. Eight to thirteen: hybrid — licence the core ledger, build the two or three workflows a template cannot express. Fourteen or above, with a named engineering owner already in place: build, and expect the licence stream you avoid to be the line that repays it. If the engineering-capacity axis scores zero the total is irrelevant and the answer is buy, because owning source code you cannot staff is the most expensive outcome on this page.

## Frequently asked questions

### How do we score build vs buy without guessing?

Score five axes from 0 to 4 and add them. Process non-standardness: 0 if a template fits, 4 if the workflow is the product. Seat growth: 0 below roughly 25 users over 36 months, 4 if headcount compounds. Integration count: 0 for one or two supported connectors, 4 for many bespoke systems. Regulatory surface: 0 for statutory filings across many countries, 4 for one jurisdiction with unusual internal controls. In-house engineering capacity: 0 with no named owner, 4 with a team that already ships. Seven or below, buy. Eight to thirteen, hybrid. Fourteen or above, build.

### What disqualifies a custom build whatever the total says?

Two hard gates. If in-house engineering capacity scores zero — no named person owning schema changes, releases and dependency upgrades after handover — buy, because source code you cannot staff is worse than software you rent. If your seat count is below roughly 25 and not compounding, buy: three years of licences at 25 seats is $33,300 to $148,500 — ERPStack’s own observed list-price range across comparable mid-market SaaS suites, not a rate published by any single vendor — against a build starting at $25,000 before hosting and maintenance. At the bottom of that range the avoided licences barely clear the bare build and fall short once hosting and maintenance are added, which is why the threshold is published as roughly 25 seats rather than as an exact crossover.

### When is the hybrid right rather than build or buy?

Whenever the total lands between eight and thirteen, which is most mid-market operations. Licence the general ledger, accounts payable and payroll — the places where being different is a liability — and build the two or three workflows a template cannot express. What you accept in exchange is an integration seam: a sync job, a reconciliation and a failure mode neither vendor supports. Price that seam before you commit, because it is the line that decides whether the hybrid actually beats the pure route it replaced.

### Does a custom build ever cost less than the licence in year one?

It can, depending on the implementation fee attached to the licence, and it is the wrong question. Year one loads the build and lightly loads the licence, so the comparison only becomes meaningful across three years — which is how the table on this page is drawn: implementation once, licences three times. What decides it is whether your licence line compounds with headcount. If it does, a crossover arrives; if headcount is flat and small, it never does. Run your own seat count through the ROI calculator on this site rather than trusting either column here.

## Related reading

- [Pricing, and the seat count where custom loses](https://erpstack.io/pricing)
- [ERP ROI calculator — model your own seat count](https://erpstack.io/tools/erp-roi-calculator)
- [SAP vs NetSuite vs Custom ERP — the 3-year TCO](https://erpstack.io/compare/sap-vs-netsuite-vs-custom-erp)
- [Custom ERP development on Next.js and PostgreSQL](https://erpstack.io/services/custom-erp)
