Apptension Blog

How To Write A Project Brief For Website Development

If you want to outsource website development to a software house, first you need to know how to write a project brief that describes your project, its main goals, desired features, budget, etc. Depending on how detailed your brief will be, the more accurate quotes you will get.That’s why, in order to collect meaningful proposals and estimations from software houses, you need to master your project brief.Working with different types of clients like startups, small businesses, agencies and production houses, we’ve come up with a list of best practices that clients might have while outlining their project to outsourced software vendor.Based on our experience, we’ve put together this project brief template.After reading this, you will be able to better outline:

  • Your project’s scope
  • Its main objectives
  • The complexity of it
  • Primary functionalities
  • Its timeline

But before we start, let’s quickly recap what a project brief is, and what it is not.

What is a project brief (and what is it not)?

Project brief is a document that outlines the big idea of your project.It is essential for a software house you’re about to work with to find the right people for your team, to understand what the project is about: what do you want to accomplish building it, what audience it is going to reach, what are your timeline and budget for it.This way a software house has more information about the scope of work and is able to suggest better tailored solutions.For you and your company, a good brief leads to better proposals and, as a result, saves time and money.The important thing to bear in mind is that aprojectbrief is not a technical specification. The latter will be created by the developers, to fully cover the technical requirements of your project.

1. Write a project summary

First, you need to introduce the team of developers to your project.An overview should consist of the big idea, business goals, target audience, etc. It gives a software house an idea of what you want to accomplish with your project, so they are able to find better technical solutions for you.Instead of writing that you want to build a website for your side project, explain what it is about. Let’s take teamdeck as an example. It is a SaaS tool we’ve developed at our company. If we wanted to outsource its development, we’d describe it as a resource scheduling calendar and a time tracking tool, meant for project managers to schedule and track team members throughout the multiple projects.As you can see, going from “I need a website for my side project” to a more specific summary makes a huge difference.

2. Define the complexity of your project

Websites differ when it comes to their complexity. You may want to create a static website, a CMS-backed solution, an editable and dynamic one, an ecommerce or a web application.If you don’t know yet which one is the best for you, try to answer these questions:

  • Do you want to edit the content? If yes, you may want to add a CMS (Content Management System) to your website.
  • Does your website include user interactions? Login areas or forms are an example of such a thing.
  • Do you plan to integrate it with external services? Think of things like third party integrations: e.g. using a Facebook or Gmail login option.

If you have a site map or user stories created, hand them to the developers, as they will also be helpful to estimate the complexity of your project.

3. List the features you want to implement

Now, as you’ve described the big idea of your project and the complexity of it, try to list the features that you’ve come up with.You can divide them into the “must have” and “nice to have” categories, so the developers will know which ones are crucial to you, and which are optional. Also, the estimation of the costs and time will be more accurate.It’s a good practice to create the most important modules first, to develop a Minimum Viable Product (MVP). You can test it with your beta users, show to stakeholders and clients, and perhaps pivot your initial idea if needed.If you are not able to come up with the list of features, you can write user stories instead. They are the non-technical descriptions of what you want to achieve as the user or administrator of the website you are about to build. For example, as a user you might want to be able to create custom reports and export it as PDF files.

4. What is your timeline?

Is there a clear due-date that you need the team to deliver your project?Setting a timeline will help programmers to determine what is possible to accomplish in a given time, and what is not.Another thing is setting a deadline for estimations. Remember that creating a proper and accurate estimation can take up to two or three working days and often requires a couple of people to create. Be realistic about the time any software house will need to come back to you with a proposal, and the results will be better for both sides.

5. What is your budget

Finally, make it clear how much money you are willing to spend on the project.Setting clear expectations about the budget will help everyone involved in the project to better evaluate what can be achieved.On the other hand, don’t hide your budget from a software house, as actually knowing it will help you save money. If you share your budget with the team, they won’t be able to hide an extra grand here and there (not that it is something we recommend software houses to do). Instead, they can have a realistic assessment of what they can deliver for that figure.At Apptension our estimations come with a breakdown of exact number of days, sometime hours, each feature needs to be implemented, so that you know our rates.Once we send through the quote, we offer a walkthrough call with our project manager, and Tech Lead, so together with our client team we can challenge all the assumptions and make sure we deliver the best value for the money.


Writing a project brief for website development, be specific about all these points mentioned in this article.The key is to make sure that after reading it your software vendor will understand what the project is about, what is consists of, what is the timeline and budget.The better you communicate your expectations and project outline, the better answer and estimation you get back from the software house.

Read more

How to configure your Django project for multiple environments?
Staying hungry for knowledge: Apptension’s DevTalks
Do you feel that we could be a match?

Contact us