Estimating a Website Project

By Patty J. Ayers

There’s no getting around it – almost every website client will want a cost estimate before work begins.

If the prospect makes you anxious, you’re not alone. Estimating a web project is not easy to do, even for pros. In fact, some very skilled web developers I know use systems of estimating which have more in common with consulting a Magic 8-Ball than with detailing time and costs – basically, they make wild guesses. Although this may get the unpleasant task over with quickly, it’s not helpful for keeping clients happy or for running a viable business.

WordPress Freelancer Forms

01A_Short Questionnaire
01B_Long Questionnaire
02_Website Specification
03_Estimate Worksheet

But with some preparation and organization, estimating can be done with reasonable accuracy, and without any permanent damage to your mental health.

Free estimates? Some web developers offer free estimates as a matter of policy, but I don’t think this is always reasonable.

After all, developing a website is not the same as painting the living room or fixing a leaky faucet. Free estimates and convenient price-shopping may be commonplace in a lot of industries, but they aren’t necessarily appropriate for complex creative and technical work.

Estimating well takes time, and not every estimate will net you a contract. Depending upon your market and the tone you set with your business, you may get a lot of “shoppers”. Shoppers are looking to get estimates from several companies and compare them, and you may very well be only a pawn in their process of finding the supposedly “best deal” – or worse still, in driving the price down with someone who they’ve already decided to work with.

If this turns out to be the case, it’s not the end of the world, of course – but how many times a month do you want to spend several hours (or more) working for someone for no pay?

In any case, it’s not possible to estimate work accurately until you have a clear idea as to what that work will consist of. In web development, that clear idea put into writing is often referred to as a website specification, a document describing the details of the planned site.

So, for certain estimate requests — those which are large and/or complex and/or vague — I offer to spend several hours consulting with the client and then several more hours writing a detailed specification and cost estimate, for a reasonable fee. She can then either hire me, or take that specification elsewhere. For this, I use my Long Questionnaire. (Please note that the Long Questionnaire is not to be given to the client to fill out himself, but rather used as a tool in a conversation between the developer and the client.)

But I still use the Short Questionnaire; it’s typically my response to each new inquiry about producing a website. It accomplishes several useful things:

  • It requires the potential client to actually do something, which weeds out a certain number of non-serious inquiries
  • It gathers a lot of important data, including the client’s contact information and the basics of the planned website
  • It establishes, at least in a subtle way, that I am not just one of a list of web developers waiting and hoping that the client picks me – but rather, I am also making a decision as to whether the project is a good fit for me or not. I believe that this helps to set the right tone for the relationship right from the start.

But whether or not you’re being paid for providing an estimate, the process should be much the same.

Estimating: A Five-Step Process

Estimating is essentially a five-step process:

1. Determine what the specifications are for the site

2. Break these specifications down into as many smaller tasks as possible

3. Figure as accurately as possible the amount of time each task will take

4. Add up the total hours and multiply by your hourly rate

5. Add a percentage for contingencies, add expenses, and total it all up

1. Determine what the specifications are for the site (discussed in some detail above.) This is the most difficult part of the process. Clients often don’t have a clear idea of what they want; they need your help to clarify and articulate what kind of website they have in mind. This can be done through in-person or telephone meetings and emails, but you have to take the wheel, and you often have to persevere through a certain amount of uncertainty, hesitance, and outright fogginess.

Whether you provide a specification and estimate for free, or charge for this service, your conversations need to cover many aspects of the proposed website. The two Questionnaires are designed to help do exactly that; see above for more on this.

Listening really is crucial during the specification-development phase. But again, be sure that your questions are answered, and that an unfocused or overly chatty client doesn’t waste everybody’s time.

Always take notes when conversing with a client. Even if they are just scrawled notes, make sure you commit the crucial points of the conversation to writing, and be sure to date it.

Even if you are very thorough, website clients are famous for figuring out what they really need and want only after a contract is signed and work has begun. This is so common that it’s almost guaranteed that the specifications will change at least a little once the project is in progress. No problem – but make it clear to your client that when the specifications change, the cost estimate will change as well. State this more than once during this phase: “This specification is only a current snapshot, so that I can provide an estimate. If you add or subtract significant content or features, the cost estimate will definitely change. When that happens, I’ll provide you with a written description of the change and the difference in cost.” If the client has heard this in advance, he’ll likely receive the Change Order and its cost estimate more easily.

Most of all, don’t rush this process. Be sure that you have enough information before you commit to an estimated cost total.

2. Break the specifications down. Now, take each part of the specification document and break it down into as many actual tasks as possible. For instance, “Gallery of 30 photos of 6 different houses” might involve:

1. Receiving and sorting out client’s photos

2. Cropping, sizing, optimizing, and renaming photos

3. Working with client to figure out how to present photos

4. Creating thumbnails

5. Building pages

6. Receiving client’s feedback, correcting and refining gallery page design

3. Figure how much time each task will take. This part of the process requires a little brow-furrowing. For each task in your list, make your most honest estimate of the time it will require. Be realistic. You may want it to take one hour to build an entire page draft, but the reality is probably going to be closer to three or four hours. Give yourself enough time to do a good job! And remember – this type of time estimate is almost always short. Be generous!

4. Add up the total hours and multiply by your hourly rate. Even if you don’t plan to charge the client by the hour, but rather by the project, figuring by the hour is the only reasonable way to go, as it’s the only real available objective measure of “how much work”. The client doesn’t need to know anything about the hours you’re estimating it will take you, but you should know this.

Figuring your hourly rate is a separate process, and a very important one. We’ve provided guidance on that in the article What Rate Should I Charge? Finding Your Own Right Answer.

5. Add a percentage for contingencies, add expenses, and total it all up. The “contingency allowance” is something that experienced web and graphic designers don’t even question. Underestimating is so universal that providing a cushion against your own probable inaccuracy is highly advisable. Between 10-20% is typical. Expenses, of course, are any out-of-pocket costs such as the price of stock photography, WordPress themes and plugins purchased, etc. Add it all up, and there’s your total!

The Stand Your Ground Law. You may be tempted to shrink the total estimate down, fearing that your potential client will find it too high, but resist that urge. You came up with as accurate an estimate as possible, and it makes no sense to lower it. The client may or may not like your price, but if you offer to do the job for less than what is fair for you, no good can come of it. Stand your ground! You won’t get every job, but the ones you do get will go much smoother if your estimate was accurate and fair.