Whether you bill clients hourly or on a per project basis, a necessary step of all projects is estimating the time it will take. Not only does the client want to have an idea of how much money they will be spending, but they also need to plan around an estimated timeline. And you need to be able to ensure you have the time and resources necessary to complete the project.
Depending on a number of factors, including how much experience you have with the type of work you’re doing, if you are using subcontractors, and the information you have from the client, estimating the time for a project can be difficult. Here is the process I use when scoping the time commitment for a new project.
The first step is to identify the main project (i.e. Website Redesign), and then pinpoint the specific deliverables associated with the project. For example, upon completion of the redesign, you will be providing the client with a newly designed website by FTPing the site files and sending the client a CD or USB drive with the working files.
Break It Down
Next, I take the project and break it down into simple tasks separated by component – the more specific the better – that will get us to the deliverables. Here is an example of what the tasks may look like:
- Initial meeting with client to gauge scope of project
- Provide client with project information sheet to get more information about what they like/don’t like about their existing site
- Review/analyze existing site and client form
- Develop list of areas site changes to be made
- Get approval from client
- Design site mockup
- Get approval from client
- Code pages
- Create new navigation
- Reorganize content into new pages
- Optimize for SEs
- Cross-browser testing
- Validate code
- Check links
- Test forms
Add It Up
The next step is to estimate time for each task, rounding up. If you are using subcontractors, you will need to get their time estimates first and work them into your time. Then take the total time for all of the tasks and add in a buffer. The buffer can be anything, although I usually stick with a 10-25% addition. This allows for any unexpected situations or challenges that arise.
Things to Keep in Mind
The more time estimates you do, the more accurate you will be. As you create your own formula, some other factors you may want to consider include:
- Project management time
- Time to review work of subcontractors
- Holidays or days off that occur during the project
- Client turnaround time
How do you ensure your time estimates are as accurate as possible?
Image credit: Federico Belloli
Jump Start Git, 2nd Edition
Visual Studio Code: End-to-End Editing and Debugging Tools for Web Developers