All tools
/fun · tools for work
How long will your software project take?
Eight short questions about what you want to build. The answer is a range, not a promise, shown with every assumption behind it.
- Everything is worked out in your browser
- About a minute
- A range, not a price
How we work it out
Every number on this page comes from this list. There are no hidden ones.
- Effort (person-weeks) = the base for the kind of product + the features chosen + connections to other systems + data migration.
- From the fourth feature on, each one adds 2% to the effort (up to 20%), because features meet each other and bugs live in the seams.
- The effort is then multiplied by (1 + the data-sensitivity uplift).
- Pace: 2 engineers at 75% useful focus (the rest of the week is review, meetings and switching), which is 1.5 person-weeks of progress per calendar week. A job under 8 person-weeks cannot be split between two people and runs at one person’s pace (0.75).
- Build time = effort ÷ pace. Fixing and acceptance add 20% of the build time.
- Waiting for your feedback is a share of build and fixing time (table below).
- On top come discovery, a part of the design (60% of the designer’s weeks land on the calendar; the rest overlaps with discovery and set-up) and launch (1 week, or 2 with a lot of data). The total is the middle estimate.
- The range = the middle × a low factor and a high factor, which come from how clear the requirements are (table below). The high factor gains 0.1 for each risky answer, up to 0.3: an old system, a lot of data to move, formal requirements, slow feedback.
Base for the kind of product (person-weeks)
- An internal tool for staff
- 5
- A public site your team can edit
- 4
- A web app for customers
- 8
- A mobile app and the API behind it
- 14
- A reporting dashboard over existing data
- 4
- Connecting systems you already run
- 3
Each feature (person-weeks)
- Roles and permissions
- 1.5
- Online payments
- 2
- SMS and email notifications
- 1.5
- Reports and Excel or PDF export
- 2
- File and media upload
- 1
- Search and filters over a lot of data
- 1.5
- An admin panel
- 2
- More than one language
- 1.5
- Workflow and multi-step approvals
- 3
- Real-time features
- 3
Connections to other systems (person-weeks)
- No, it stands alone
- 0
- One system, with a clear API and documentation
- 2
- One older or undocumented system
- 4.5
- Several systems, all with a clear API
- 5
- Several systems, some old or undocumented
- 10
Data migration (person-weeks)
- No, we start fresh
- 0
- Not much, and tidy
- 1
- A lot, or messy
- 4
Design (designer-weeks)
- The final design is ready
- 0
- Standard components are fine
- 1
- It needs a custom design
- 3
Clarity of requirements: discovery weeks and the width of the range
- Written down and specific
- 1 week of discovery · Range 0.8× to 1.3×
- A general idea, not the detail
- 2 weeks of discovery · Range 0.65× to 1.6×
- Just the problem
- 3 weeks of discovery · Range 0.5× to 2×
Data sensitivity: uplift on effort
- Ordinary
- +0%
- Customers’ personal or financial details
- +15%
- Formal requirements
- +35%
Speed of feedback: uplift on build time
- Within two working days
- +0%
- Within a week
- +15%
- Sometimes two weeks or more
- +40%
Basis: a simple bottom-up model in the spirit of reference-class estimating, and the well-known idea that an early estimate is inherently wide and narrows as the requirements become clear. These figures are working assumptions, not measurements: they have not been fitted to any particular team’s records. Read them as a starting point for a conversation.