The verdict in three sentences
A well-built requirements document shrinks the spread between quotes from 1 to 3 down to 1 to 1.4, because every vendor finally prices the same scope. For a business application worth 40,000 to 80,000 EUR (about 43,000 to 86,000 USD), it runs 15 to 25 pages, takes 2 to 4 weeks to write and must contain MoSCoW-prioritized user stories with testable acceptance criteria. What sinks most tenders is forgotten non-functional requirements: performance, GDPR and hosting often represent 15 to 25% of the final budget.
The 12 essential sections
This is the outline we recommend to any client-side project manager in an English-speaking company. Each section answers a question the vendor will ask anyway; if you leave it open, each vendor makes its own assumption.
| No. | Section | Expected content | Suggested length |
|---|---|---|---|
| 1 | Context and goals | Business problem, quantified success metrics | 1 page |
| 2 | Users and roles | Profiles, user count, permissions | 1 page |
| 3 | Current processes | As-is diagram, pain points | 1 to 2 pages |
| 4 | MoSCoW user stories | 30 to 80 prioritized stories | 5 to 10 pages |
| 5 | Acceptance criteria | Testable conditions per story | included in 4 |
| 6 | Data and migration | Volumes, sources, quality, import | 1 page |
| 7 | Integrations | ERP, CRM, SSO, third-party APIs | 1 page |
| 8 | Non-functional requirements | Performance, availability, security, GDPR | 1 to 2 pages |
| 9 | Hosting and operations | Cloud, data location, backups, SLA | 1 page |
| 10 | Constraints and budget | Budget range, target date | 0.5 page |
| 11 | Deliverables and warranties | Source code, documentation, acceptance testing, warranty | 0.5 page |
| 12 | Response guidelines | Quote format, timeline, selection criteria | 0.5 page |
Stating a budget range (section 10) is not a weakness: it lets vendors propose the best scope for 60,000 EUR instead of guessing.
MoSCoW user stories and acceptance criteria
Each feature is written as "As a [role], I want [action] so that [benefit]", then gets a MoSCoW priority:
- Must: without it, the app is useless in production (60% of the budget at most).
- Should: important, but can be worked around for a few months.
- Could: nice to have, built if budget allows.
- Won't: explicitly out of scope for this release.
Example: "As a purchasing manager, I want to approve a purchase request from my phone so that orders are not blocked." Acceptance criteria: approval takes 2 taps, the requester is notified in under one minute, every approval is logged with date and author.
Quote comparison grid
With a clear document, you can score responses on a shared grid. Here is an anonymized real example of three responses for a field service management app:
| Criterion (weight) | Vendor A | Vendor B | Vendor C |
|---|---|---|---|
| Price excl. VAT | 38,000 EUR | 61,000 EUR | 112,000 EUR |
| Must coverage (30%) | 80% | 100% | 100% |
| Business understanding (20%) | 12/20 | 17/20 | 16/20 |
| Non-functional requirements priced (15%) | no | yes | yes |
| Stated timeline | 3 months | 4.5 months | 6 months |
| Annual maintenance | 4,000 EUR | 7,500 EUR | 18,000 EUR |
| Source code ownership | partial | full | full |
| Final score /100 | 58 | 84 | 71 |
The initial 1-to-3 price gap is explained here by Vendor A ignoring 20% of the Musts and Vendor C staffing an oversized team. The requirements document makes these differences visible.
Mini case study
Need a professional website?
Kolonell builds websites that attract clients, optimized for the Sénégalese market. Free quote in 2 minutes.
Claire, project manager at an industrial SME in Lyon, needs to replace an Access-based quality tracking tool. Her first tender, without a requirements document, produced three quotes: 32,000, 54,000 and 96,000 EUR excl. VAT.
- She spends 12 days writing a 22-page document with 48 user stories (28 Must, 12 Should, 8 Could). Estimated internal cost: 12 × 450 EUR = 5,400 EUR.
- Second tender: 52,000, 58,000 and 71,000 EUR, a spread of 1 to 1.37.
- She picks the 58,000 EUR quote covering 100% of the Musts. Change requests during the project stay at 3,500 EUR, versus the usual 15 to 20% overrun, roughly 8,000 EUR avoided.
- The document pays for itself before development is even finished.
FAQ
How long does it take to write a requirements document for a business app?
Allow 2 to 4 weeks for 15 to 25 pages, including user workshops. External support costs an estimated 3,000 to 8,000 EUR depending on complexity.
How many vendors should I consult?
Three is the right balance: beyond that, analysis time explodes for little gain. Give them 3 weeks to respond and plan a 1-hour Q&A session with each.
Should I state my budget in the document?
Yes, a range (for example 50,000 to 70,000 EUR) improves the relevance of responses. Without it, the spread between quotes often stays at 1 to 3.
What goes into non-functional requirements?
Target response time (under 2 seconds per page), availability (99.5% or higher), data location in Europe or your region, GDPR compliance, daily backups. These items weigh 15 to 25% of the budget.
Is the document frozen once signed?
No, in an agile setup it is the reference: Musts are contractual, Shoulds and Coulds are arbitrated sprint by sprint. Keep a 10% budget reserve for adjustments.
Let's scope your project. Send us your requirements document or even a two-page brief, and we will return a MoSCoW-based estimate, a range between 40,000 and 80,000 EUR and a realistic schedule. Detailed quote within 48 h. WhatsApp +221 77 596 93 33.
Mohamed Bah
Fondateur, Kolonell
Passionate about digital and entrepreneurship in Africa, Mohamed has been helping Sénégalese businesses with their digital transformation since 2020. Founder of Kolonell, he believes every SME deserves a professional and accessible online présence.
