Software Development Cost Estimation in 2026: Methods, Ranges and a Three-Point Calculator

In this article
- Realistic 2026 ranges with a Central/Eastern European or Latin American vendor: $40k–90k for a simple product, $90k–250k mid-size, $250k–750k+ complex or regulated. US onshore agencies charge roughly 2.5–3× for the same hours.
- Every estimate is engineering hours plus QA, design and PM overhead, plus a buffer for uncertainty, times a blended rate. Ask to see each of those layers separately.
- Use the method that fits your stage: analogous ranges at the idea stage, a bottom-up WBS with three-point estimates after discovery, story points and velocity once a team is running.
- A single number is a red flag. A good estimate gives a range with a confidence level (P50, P80), a list of assumptions and the risks that would push it up.
Jump to
- The anatomy of an estimate
- Five estimation methods and when each one works
- Three-point estimate calculator
- Why the confidence level matters more than the number
- Which estimate can you get right now?
- How a vendor actually builds your estimate
- Fixed price, time and materials and what each does to the estimate
- Hidden costs most estimates leave out
- How to reduce the cost without breaking the product
- Is this estimate trustworthy? A quick check
- Where Gilzor fits
Those ranges assume a blended rate of $45–80 an hour and include design, QA and project management. They are what a finished estimate tends to look like. This article is about how you get from "we want to build X" to a number like that, and how much you can trust it. For the full list of cost drivers, see our pillar guide to software development cost. For how the total splits across phases and roles once it exists, see the software development cost breakdown.
The anatomy of an estimate
Strip away the formatting and every software estimate has the same four layers:
- Engineering hours. Backend, frontend, mobile and DevOps time to build the features. This is where estimation methods differ.
- Overhead roles. QA, UI/UX design, project management and business analysis. Usually expressed as a percentage of engineering: QA 20–35%, PM and BA 10–20%, design 8–15% depending on how custom the interface is.
- Contingency. A buffer that reflects how much is still unknown. Honest estimates show it. Many hide it in inflated task numbers, which makes it impossible to discuss.
- Rate. A blended hourly rate across the team, driven by region and seniority.
Here is how those layers stack up for a typical mid-size product where engineers estimated 1,000 hours of build work.
When a client shows us two competing quotes that differ by 2×, the gap is almost never in the engineering bar. One vendor included QA at 25% and a 20% buffer; the other quoted developer hours and planned to bill the rest as "change requests". Compare layer by layer and the mystery usually disappears.
Five estimation methods and when each one works
There is no single correct method. Each one fits a stage of the project and a level of detail. A good vendor uses two of them and checks one against the other.
| Method | When it fits | Typical accuracy | Effort to produce | Weak spot |
|---|---|---|---|---|
| Analogous (top-down) | Idea stage, first call, budgeting a go/no-go decision | −50% to +100% | Hours | Only as good as the comparison project |
| Parametric (function points, COCOMO II, per-module rates) | Early scope with a feature list; enterprise and public tenders | ±30–50% | A day or two | Needs calibrated historical data; misses integration surprises |
| Bottom-up WBS | After discovery, when screens and flows exist | ±15–25% | Several days | Forgets work nobody listed (migrations, environments, edge cases) |
| Three-point / PERT | On top of a WBS, to turn task guesses into a range with a confidence level | Makes the uncertainty explicit | +20–30% on top of WBS | Garbage in, garbage out on the pessimistic values |
| Story points and velocity | A running agile team with a groomed backlog | ±10–20% after 3–5 sprints | Continuous | Useless before the team has a measured velocity |
1. Analogous estimation: "a similar project took X"
The estimator picks one or more finished projects that look like yours and adjusts: "the last marketplace was 3,800 hours; this one has no mobile app but has two extra integrations, so call it 3,000–4,500." It is fast and, from an experienced team with real history, surprisingly useful for a first decision. It goes wrong when the comparison is superficial. A "booking app" can mean a two-screen appointment form or a multi-location scheduling engine with payments, waitlists and staff payroll.
Use it to decide whether the project is a $60k problem or a $400k problem. Do not sign a fixed price based on it.
2. Parametric estimation: size times a calibrated rate
Parametric models measure the size of the software and multiply it by a productivity factor. The classic size measure is function points (counted under the IFPUG standard from inputs, outputs, inquiries, files and interfaces). Barry Boehm's COCOMO II model turns size into effort and adjusts it with cost drivers such as team experience, product complexity and required reliability. Agencies use a lighter version of the same idea: hours per screen, per feature module or per integration, calibrated on their own history.
The strength is consistency, which is why government and enterprise tenders still ask for function point counts. The weakness is that the productivity factor hides huge variation. A standard login module and an integration with a 15-year-old ERP can count as similar "size" and differ by 10× in effort.
Typical module sizes from our own estimates look like this (engineering hours for one platform, before QA and PM):
3. Bottom-up estimation with a work breakdown structure
A work breakdown structure (WBS) splits the product into epics, features and tasks small enough to estimate with some confidence, usually 4–24 hours each. The engineers who will do the work estimate each task, and the totals roll up. This is the method behind most fixed-price quotes and serious time-and-materials budgets.
A WBS line for a payments feature might read: "Stripe Checkout session, backend, 12 h. Webhook handling and idempotency, 10 h. Subscription upgrade and downgrade, 16 h. Failed payment retries and emails, 10 h. Refunds from admin, 8 h. Tests, 12 h." Each line is checkable. You can ask "do we need upgrade and downgrade in the first release?" and watch 16 hours disappear.
The classic failure is omission, not miscalculation. Tasks that never made it into the breakdown are estimated at zero: environment setup, CI/CD, data migration, accessibility, analytics events, app store submission, error states, the admin tools support staff will need. In our reviews of other vendors' estimates, the missing lines usually add up to 15–25% of the total.
4. Three-point estimation (PERT): turning guesses into a range
Single-number task estimates are almost always optimistic. People estimate the path where nothing goes wrong. Three-point estimation asks for three values per task: optimistic (O), most likely (M) and pessimistic (P). The PERT formula weights them:
Expected effort E = (O + 4M + P) / 6. Standard deviation σ ≈ (P − O) / 6. Add 0.84σ for 80% confidence (P80) and 1.28σ for 90% (P90).
A worked example: the payments feature above has O = 60 h, M = 100 h, P = 220 h. The expected value is (60 + 400 + 220) / 6 = 113 hours, not 100. The long pessimistic tail (a payment provider's sandbox that behaves differently from production, a tax requirement nobody mentioned) pulls the expectation up. That is the point: the method captures the asymmetry that single numbers hide.
For a whole project, summing per-task variances gives a narrower range than applying the formula to project totals, because not every task goes badly at once. The calculator below uses project-level totals, which is cautious and fine for budgeting.
5. Story points and velocity: estimating as you go
Agile teams estimate backlog items in story points (relative size, often on a Fibonacci scale, set in planning poker sessions), then measure how many points the team completes per sprint. After three to five sprints the velocity stabilizes, and the cost math becomes simple:
- Sprint cost: 5 people × 80 hours × $58 = $23,200 per two-week sprint.
- Velocity: 40 points per sprint, so cost per point ≈ $580.
- Remaining backlog: 400 points ≈ 10 sprints ≈ $232,000, before the scope the team discovers along the way.
Story points are excellent for forecasting a running project and poor for pricing one that has not started, because a point means nothing until a specific team has delivered some. Be wary of a vendor that quotes a fixed price "per story point" before the team exists.
Three-point estimate calculator
Enter your engineering hours as a range (from a WBS, a vendor's estimate or your own team's gut feel), choose the overhead your project needs and the confidence level you want to budget at. The result is a budget with an explicit buffer, which is easier to defend to a CFO than a single number.
Software cost estimate at a chosen confidence level
A planning tool, not a quote. Overhead percentages are typical ranges from our estimates. If your pessimistic number is more than three times the optimistic one, the scope is not defined enough to budget: a discovery phase will be cheaper than the buffer.
Try moving only the confidence level. On the default inputs, the difference between P50 and P90 is roughly $30k. That gap is the price of the unknowns in your scope. You can pay it as contingency, or you can spend a fraction of it on discovery to shrink the unknowns themselves.
Why the confidence level matters more than the number
Software effort is not symmetric. A task can finish a little early, but it can finish very late. That skew is why the "most likely" number, the one people instinctively quote, sits to the left of the average.
Research on large projects shows how fat that tail is. Bent Flyvbjerg and Alexander Budzier analyzed 1,471 IT projects for Harvard Business Review in 2011: the average cost overrun was 27%, but one project in six overran by 200% on average, with schedules almost 70% late. McKinsey and the University of Oxford, looking at more than 5,400 IT projects, found that large ones ran 45% over budget and 7% over time on average while delivering 56% less value than predicted. The Standish Group's 2020 CHAOS report counted 31% of projects as successful (on time, on budget, full scope), 50% as challenged and 19% as failed.
None of this means estimating is pointless. It means a single number without a confidence level is a guess dressed as a commitment.
Which estimate can you get right now?
Six questions about where your project stands. The result tells you which kind of estimate is realistic today and what to do to get a better one.
What kind of estimate does your project support?
Built by Gilzor
Results we’ve shipped




Talk to the people who build it. Tell us about your project and get a free estimate of scope, timeline and cost.
How a vendor actually builds your estimate
This is roughly the process we follow when a request comes in, and what a careful vendor should be doing on its side. If the estimate you receive skipped most of these steps, it was produced by a salesperson with a spreadsheet.
- Read everything, then ask questionsThe first deliverable is a list of questions, not a number. Who are the users and roles? Which systems does it talk to? What happens when a payment fails? Is there data to migrate? The quality of these questions tells you more about a vendor than its portfolio.
- Agree what is out of scopeA written "not included" list prevents more disputes than any contract clause. Typical candidates: native tablet layouts, multi-language support, offline mode, admin reporting beyond basic tables.
- Break down and estimate by the people who will build itEngineers estimate their own areas, in ranges. A lead reviews for missing tasks: environments, CI/CD, migrations, analytics, accessibility, store submission.
- Add overhead roles explicitlyQA, design, PM and BA appear as separate lines with their own hours, so you can see and discuss them.
- Build a risk list and size the bufferEach major unknown gets a line: "partner API has no sandbox, +40–80 h if we need to mock it". The contingency comes from this list, not from a gut-feel percentage.
- Present a range with assumptionsA P50 and a P80, the assumptions both rely on, and what would change them. Then a proposal for the cheapest way to narrow the range.
What we see in estimates and first calls
- The scope in the founder's head is bigger than the document. A "simple admin panel" in the brief often turns into roles, audit logs, CSV exports and refunds by the end of the first call. It is normal. It is also why we estimate after questions, not before.
- Integrations carry the most variance. When we put a range on each feature, integrations with systems the client doesn't control are consistently the widest lines. One phone call with the partner's technical contact narrows them more than any estimation technique.
- Data migration gets estimated at zero. "We'll import the old data" can be a week or a project of its own, depending on how clean ten years of records are.
- QA is the first line people try to cut. It comes back as bugs in production, which cost more to fix after release than before it. Our own QA process returns only 5% of "to QA" tasks to developers, and that number is a result of testing being planned into the estimate, not added at the end.
- Pessimistic values are too optimistic. When engineers give three-point estimates for the first time, their "pessimistic" case is usually what a normal week with a few surprises looks like. We calibrate them against how similar tasks actually went.
Fixed price, time and materials and what each does to the estimate
The contract model changes how the same estimate turns into a price.
- Fixed price converts the vendor's P80 or P90 into a single number. You pay the buffer whether or not the risks happen, typically 15–30% above the expected cost, and every change becomes a change request. It suits small, well-specified work.
- Time and materials bills actual hours. You pay closer to the expected cost when things go well and more when they don't. It suits products whose scope will evolve, provided you see hours weekly and set a cap.
- Capped T&M or phased fixed price is often the best compromise: fixed price for discovery, then T&M with a not-to-exceed budget per release.
If you are comparing models for an outsourced build, our guides on pricing models and the software outsourcing contract cover the clauses that protect the budget.
Hidden costs most estimates leave out
An estimate prices the build. These costs arrive anyway, and a good estimate at least names them:
| Cost | Typical size | Note |
|---|---|---|
| Maintenance and updates | 15–20% of build cost per year | Bug fixes, OS and framework updates, security patches. New features are extra. |
| Hosting and infrastructure | $100–3,000+ a month | Grows with users, data and environments (staging, QA, production). |
| Third-party services | $50–2,000+ a month | Email, SMS, maps, error monitoring, analytics, search, LLM API usage. |
| Payment and app store fees | Per transaction | Card processing fees on payments; Apple and Google take 15–30% of digital in-app purchases. |
| Compliance | $10k–100k+ upfront, plus yearly | HIPAA risk assessments, PCI DSS validation, SOC 2 audits, penetration tests. |
| Your own team's time | Often 10–20% of a person per vendor team | Product owner decisions, reviews, acceptance testing. Not on the invoice, still a cost. |
| Data migration and content | From days to months | Cleaning, mapping and importing legacy data; writing and loading content. |
As a rule of thumb, three years of running a product costs half to two-thirds of building it. Put that into the business case at the same time as the build estimate, not after launch.
How to reduce the cost without breaking the product
The estimate is a tool for cutting cost, not just predicting it. The cuts that work target hours and uncertainty. The ones that backfire target quality.
- Trim the first release by feature, using the WBS. With hours per line, you can see that subscription downgrades cost 16 hours and that nobody will downgrade in month one. Moving lines to "version two" is the largest saving available.
- Buy the commodity parts. Auth, payments, search, notifications and admin scaffolding have good services and libraries. Custom-build only what makes your product different.
- Pay for discovery to shrink the buffer. A few weeks of business analysis that removes the biggest unknowns can cut the contingency on the build by more than it costs.
- Choose cross-platform where it fits. One React Native or Flutter codebase instead of two native apps usually saves 30–40% of the mobile budget. See mobile app development cost for when it doesn't fit.
- Pick the region for the right reasons. The hours barely change between regions; the rate does. A CEE team like ours is offshore for a US company, with two to four shared hours with the East Coast. Latin America gives more overlap at similar rates. Our nearshore software development rates guide compares them fairly.
- Keep QA in, and keep it early. Cutting QA lowers the estimate and raises the total cost. Defects caught in testing are cheaper than defects caught by customers.
Is this estimate trustworthy? A quick check
Score the estimate you received
FAQ
How do you estimate the cost of software development?
How accurate are software development cost estimates?
What is the PERT formula for software estimation?
How much contingency should a software estimate include?
Should I pay for a discovery phase before getting an estimate?
How do story points translate into cost?
Where Gilzor fits
We write estimates the way this article describes: questions first, hours by feature and role, a range with its assumptions and risks. When the scope is too open for that, we say so and propose a short discovery phase that ends in a backlog any team can estimate, ours or someone else's. Over 70 projects launched, 85% of our clients come back, and 98% of our work has been delivered on time, which says less about luck than about estimates that included the boring lines.
If you already have a quote and want a second opinion on the hours, the calculator and the checklist above are a good start, and the form below is the next step.
No sales pitch
Get a straight answer for your project
Tell us what you’re building. We’ll reply with options, a rough cost and timeline. If we’re not the right fit, we’ll say so.

Co-Founder of Gilzor. Works with founders and product companies on how to staff and run engineering: team extension, dedicated teams, and getting stalled projects moving again.
Gilzor · Business Analysis partner
Need a team for your product?
Services
Business AnalysisRequirements, scope and roadmap before development.→By company type
Selected projects






The team behind them





