← All posts

How to write an app or website brief a developer can actually quote

What to prepare before you contact a developer: the problem, the users, the key flows, content, integrations, constraints and what is out of scope, with a template you can copy.

Author
Elie Chaaban
Published
Reading time
5 min
Topics
Planning, Hiring, Mobile Apps, Websites

Most first messages I receive about a project are one line long: "We want an app like X, how much?" That is a natural way to start, but no developer can give you a meaningful answer to it. The same sentence can describe a project of a few weeks or of many months.

A good brief changes that. It does not need to be technical or long. Two or three pages written in plain language let a developer understand what you need, ask the right questions and give you a realistic plan. It also forces you to make decisions early, when they are cheap.

Here is what to put in it, and a template at the end.

1. The problem, in two sentences

Start with the problem the app or website solves, and for whom. Not the features.

"Our customers book cleanings by calling or messaging us on WhatsApp. We lose track of slots, double book staff and spend hours every evening confirming tomorrow's schedule."

This tells a developer more than a list of screens would. Every later decision can be checked against it.

2. Who the users are

List each type of user and what they need to do:

Mention who is not a user, too. If staff will keep using a shared tablet rather than their own phones, say so.

3. How things work today

Describe the current process honestly, including the workarounds: the spreadsheet, the WhatsApp group, the paper form. Attach examples if you can. The current process often contains business rules that nobody thinks to mention, such as "we never book the same team in two different areas on the same morning", and these rules are exactly what the developer needs to know.

4. The key flows

Pick the three to five most important journeys and describe them step by step from the user's point of view:

  1. Customer opens the app, chooses a service and the size of the home.
  2. Sees the price and the available slots for the next two weeks.
  3. Picks a slot, adds the address and notes, confirms.
  4. Gets a confirmation, and a reminder the day before.

You do not need to design screens. Steps in plain words are enough. The developer will turn them into wireframes.

5. Must-have versus later

Split your wishes into two lists:

Be strict. Most projects launch faster and better with a short must-have list. I go deeper into this in scoping your MVP.

6. Platforms and languages

7. Content and data

Who will provide texts, service lists, prices, product data and photos, in every language? Is there existing data to import, such as a customer list or a product catalogue? Content that arrives late is one of the most common causes of delay.

8. Integrations

List the outside services involved: payment methods, SMS or WhatsApp notifications, maps, email, accounting software, an existing system. For each, say whether you already have an account. For payment specifics in Lebanon, see accepting payments in your app or website.

9. Design references

Share two or three apps or sites you like, and say what you like about each: the simplicity of the booking flow, the colours, the way the menu works. Share your logo and brand guidelines if you have them. Also share what you dislike; it is just as useful.

10. Constraints

11. Ownership and after launch

State that you will own the code, accounts and servers. Mention whether you expect the developer to maintain the product after launch and how quickly issues need fixing. See app maintenance after launch.

12. Out of scope

Write down what you are deliberately not building. "No in-app payments in the first version." "No staff app; staff use the web admin." This avoids misunderstandings later and is often the most valuable part of a brief.

A template you can copy

Project name:
The problem (2 sentences):
Users and what each needs to do:
How it works today:
Key flows (3 to 5, step by step):
Must have for launch:
Later:
Platforms (iOS / Android / web) and languages:
Content and data (who provides what):
Integrations:
Design references (liked / disliked, and why):
Deadline and why:
Budget range (optional):
Ownership and maintenance expectations:
Out of scope:
Contact person and availability for questions:

What happens next

With a brief like this, a good developer can come back with clarifying questions, a proposed scope, a technical approach and a realistic estimate. Expect questions. A developer who asks none probably has not thought about your problem in enough detail.

Some developers offer a short paid discovery phase to turn your brief into a full specification and plan. For larger projects that is worth it, because it gives you a document you can use with anyone.

How long should it be?

Long enough to answer the questions above, and no longer. Two to four pages is typical for a business app or website. Bullet points are fine. Screenshots of your current spreadsheet or forms are often more useful than paragraphs. If you find yourself writing pages about a feature that is on the "later" list, stop and move on; that detail can wait until it is actually being built.

Common mistakes in briefs

If you have a project in mind, put together what you can using the template and get in touch. It does not need to be perfect; it just needs to be honest about what you know and what you do not. You can also see my work for examples of what this process produces.

More from the blog

Let's work
together