From scratchDay 0
- Type
- Web application
- State
- Nothing built yet
- Features
- Moderate
- Design
- Custom
Estimated range
$64,000 – $87,000
- Hours 377 hrs
- Width −15/+15%
Estimator
Five questions about what you are building — and, if something already exists, four more about the shape it is in. A range comes back with the hours behind it, and with an honest width: the less anyone has read your code, the wider it gets.
Configure
Nothing here is sent anywhere and nothing is stored. Change an answer and the readout moves with it — including how sure it is.
01RequiredWaiting
Everything below this changes depending on the answer. It is the only question that does.
02RequiredWaiting
This sets the baseline hours everything else is applied to.
If two of these sound right, choose the one carrying the most weight and tell us the rest on the call. Roughly: a website explains something to visitors, a web application does work for people who log in, an API is plumbing that other software talks to, an internal tool is what your own staff run the business on, and an AI integration puts a model inside one of those rather than beside it. If none of them fit — a shop, a game, a desktop app, a browser extension, a data pipeline — say so below. We price it from the middle of the ladder and widen the range rather than pretending to know.
03OptionalNot set
Context for the conversation, not a price input — none of these change the number.
Front end
The part people see and click — what runs inside the browser. These are the usual tools for building it. If you do not know which one you have, or nothing is built yet, leave this whole step blank: none of it changes your number.
Back end
The part nobody sees: the rules and logic running on a server. Where an order is actually placed, a permission is checked, an invoice is generated. Different languages, same job — which one you have rarely changes the cost.
Data
Where your information is kept: customers, orders, files, history. Some of these suit neat, related records and others suit looser documents. If you have no idea which you have, that is genuinely fine — it is a question for the call, not for you tonight.
InfrastructureOr something not listed — tell us on the call
The machines your software runs on, and how new versions get onto them — usually rented from Amazon or Google rather than owned. If this means nothing to you, skip it. It is the least important answer on this page.
04RequiredWaiting
Four questions, each one compounding on the baseline. This is where most of the number is decided.
FeaturesHow much there is to build
A feature is one thing a person can do — sign up, upload a file, run a report, pay an invoice. Count the verbs, not the screens: one screen often holds three features, and one feature can span three screens. If you are stuck, list what you would demo. Each distinct thing you would show off is roughly one feature.
User rolesWho may do what
A role is a kind of user who is allowed to do different things. A blog has one — everyone reads the same page. A shop has two: customers and staff. If you can imagine saying “only managers should see this”, you have more than one role, and every one of those rules has to be built, tested and kept honest as the product grows.
IntegrationsWhat it has to talk to
Anything your software has to talk to that you did not build: taking card payments, sending email, a CRM, accounting, a shipping courier, the login your staff already use at work. Each one belongs to somebody else, so it can change or go down without warning — which is why they cost more to build against than their size suggests.
DesignHow much of it is drawn
How much of the interface is drawn from scratch. Template-based means we assemble it from components that already exist and put your colours on it — fast, and perfectly respectable. Custom means it is designed around your brand and the way your people actually work. Advanced adds research, prototypes and motion, and is the right answer when the interface is the product rather than a way into it.
05RequiredWaiting
Urgency is a premium on the whole figure. Add-ons are flat, and their prices are printed beside them.
Delivery pace
Rush does not mean we type faster. It means we move other clients’ work aside to clear the calendar for yours, and the premium covers that. If your date has real money attached to it — a funding round, a season, a contract — it is worth paying for. If it does not, standard buys you a fuller test and review cycle for exactly the same hours.
StartScheduling only
Add-onsFlat, added after the multipliers
These are flat prices added at the very end, so they are never multiplied up by anything above them. Take maintenance if nobody on your side will own the software after launch. Take migration if you have data in an old system that has to come across intact. Take training if your own team will be running it day to day.
Estimated range—
See the detailMethod
Seven stages, in this order, every time. The same answers always return the same range — there is no adjustment behind the screen for who is asking or how the enquiry arrived. One stage is new, and it only runs when code already exists.
Same inputs, same output — nothing is randomised and nothing is remembered between visits
Worked examples
Every figure below is this page’s own engine, run on the answers printed beside it — not a rounded number chosen because it looked approachable. Note the last two: the same project, the same midpoint, and a very different width.
From scratchDay 0
Estimated range
$64,000 – $87,000
AI prototypeWeeks
Estimated range
$37,000 – $71,000
StalledMonths
Estimated range
$59,000 – $115,000
Outgrowing itself2–5 yrs
Estimated range
$40,000 – $77,000
Legacy10–30 yrs
Estimated range
$42,000 – $94,000
Legacy, nothing knownNot sure
Estimated range
$32,000 – $105,000
Before you ask
The estimator is a planning instrument. It is deliberately honest about its own limits, because a range you cannot trust is worse than no range at all.
Close enough to budget against, not close enough to sign — and the width tells you which. A new build with every question answered comes back at ±15%. A legacy system nobody has opened comes back far wider, because that is the honest uncertainty before anyone has read a line of it. After a scoping conversation, or an assessment, we replace the band with a fixed price.
Because that is what not knowing actually costs — and it should land on the range, not on you. Saying “not sure” never raises your price. It moves the answer to the middle of what is plausible and widens the band around it, and the readout lists exactly which unknowns did that. A tool that punished honesty would just teach everyone to guess optimistically.
Yes, where it earns credit. If the data model is sound and the code is navigable, most of it survives and the number drops well below a fresh build. If the schema is wrong, very little above it survives — and the estimate goes up, because we still have to read the prototype to learn what it was trying to do. Both outcomes are common. The four condition questions are what separate them.
Because reading is work. Recovering intent from undocumented code carries a published penalty of up to 50% on top of the build, and nobody who wrote it is left to ask. You are not paying for the age; you are paying for the archaeology — which is also why the assessment exists, and why it is cheaper than guessing.
Discovery, architecture, implementation, code review, tests, deployment and documentation — the same list as every engagement on the pricing page. Not inside them: hosting, third-party licences and API fees, which are billed through at cost and never marked up.
Because gating a number behind an email address is a way of collecting leads, not a way of helping you plan. Nothing you choose here leaves your browser, nothing is stored, and closing the tab discards it.
Then it has done its job early rather than late. The estimator prices senior engineering with the testing, security and documentation in it, and it does not quote a version of the work that would need rebuilding. If the range is wrong for the budget, tell us what the budget is — a smaller first phase is usually the answer, and we would rather scope one than decline the whole thing.
Thirty minutes with the two people who would do the work. We go through the estimate, say where we think it is wrong, and give you an honest answer on fit. There is no obligation and no proposal deck — if we are the wrong people for it, we will say so on that call.
You have a number
Thirty minutes with the two people who would build it. Bring the estimate and we will tell you which parts of it we think are wrong.