Grow your CSS skills. Land your dream job.

Estimating Projects

Published by Chris Coyier

I like the way that we estimate projects1 at Chatman Design2. I think it epitomizes "real world" web design. We do our best to streamline the process and have a methods to the madness. But a lot of the time, estimates come down to educated guesses. Most importantly, we try and make things as clear, understandable, and fair for both the potential customers and us.

The Final Product

The final product of our estimating process is a PDF file that we email back to the potential client. It is on formal letterhead and recaps the major points that have been discussed thus far as well as the different major components of the project and what we will charge. The cost isn't broken down by every little individual task, but into major groups. For example, if it would make sense to break up development of the site into phases, each phase is described and quoted. We also encourage clients to opt in to monthly maintenance, so we can nurture the site over time. Monthly maintenance is typical optional, and so is quoted separately.

Estimates are sent via Email generally within a few weeks of a formal exploratory meeting. These meetings are typically face to face, but not always (I typically attend via audio/video chat).

Before it all begins...

We don't send a formal estimate in reply to every single email we get asking about projects. The harsh truth is that a good percentage of email inquiries about work don't make it past the first email. If the email is poorly worded or otherwise awkward, it probably gets deleted. The client/designer relationship is a long term and important relationship. Communication needs to flow smoothly and words need to be understood clearly so the corresponding actions can be clear. If the first email throws up red flags, imagine the quagmire 100 emails later.

Stick To It

We prefer to quote projects by the job. This is mostly for the clients benefit. They can see a number and know exactly what they are getting in to. If it's on target, they can agree and we're on our way. If it's way off base, that can be discussed before any more unnecessary time is spent on either side. The quoted number will be the final billed number in most cases, although not always (read on).

Hourly

Even though we tend to quote by the job, we still have an hourly rate in mind when coming up with the numbers. There is a base, but it can vary up and down depending on things like:

  • Have we worked with you before?
  • What is the nature of the work?
  • How many of us will need to be involved?

Some folks would say that hourly rates are bad. One reason mentioned is that it encourages an agency to take longer since that would be more profitable. Definitely not the case with us since 1) the hourly rate mostly just helps estimate and 2) we just don't dilly dally around to bloat bills, that's ridiculous.

Depending on the situation, and especially with web-only projects, we may specially present how many hours we are estimating for different parts of the projects. This is for the explicit purpose of defining scope of the project. Web projects have a much higher tendency to have "scope creep", or end up consuming a lot more time than originally estimated. When the hours are specified, we will likely include language like "If the completed project ends up taking anywhere near the estimated hours, the final bill will be what is estimated. If we find that the project is significantly exceeding those hours, we will be in touch to discuss options."

After all, we are talking about estimates. How firmly we stick to that number in final billing is another matter. Whether we include hours or not, we do mention that should the final bill exceed this price more than 25%, client approval is needed first.

Fixed Costs

These are easy. Do they need you to buy the domain name? Twenty bucks. Hosting for a year? Hundred bucks. These are just examples (services as well as pricing).

An Educated Guess

Sometimes, as much logic as you try and throw at estimating a project, you end up with the feeling that you just don't know. You just don't know how long it's going to take. You just can't forsee what kind of roadblocks you are going to come across. You just don't know how well these new clients are going to communicate with you.

At this point you'll need to do a little reflection on previous projects and then perhaps, pull a rabbit out of a hat. Uhm, let's say $8,500, that sounds about right. That might read as unprofessional, but I'll bet you a dollar the majority of agencies do a little rabbit-pulling in their estimates. It's not unprofessional at all; In fact, I think it's the definition of professionalism. Professionals are people educated, trained, and skilled in a field of work. That's what we are, and a part of those skills are making good estimations at what to charge for our services.

Terms

The terms of the final billing should be in the estimate as well. When the client agrees to an estimate, they are then fully aware of how the billing will go down. Projects will be billed within 30 days of the projects completion are are due NET 30 DAYS upon receipt of the bill. Past due invoices are charged a late fee percentage. Payment may be submitted via check, money order, etc.

You may wish to to have a client sign an agreement of the estimate and terms before beginning the project. We generally don't, but probably would if it was a large project for a brand new client. It's not rude, it's business. Personally, I don't know enough about this to give advice. Since the goal here is a legally binding contract, you should consult a lawyer.

RFP

Also known as a "request for proposal," is an approach I really like that many bigger agencies take. We aren't a big agency, but we've been throwing around the idea of putting something like this together. In essence, instead of having a simple contact form where someone can type in their name, phone number, and message regarding their project (and you'll get back to them), an RFP is a much more robust form. It asks about budget and timeframe and goals and related websites and all kinds of other stuff. It might feel like a lot of hoops to jump through as a client, but this is how I see it: We're going to be serious about your project, so we expect you to be serious about it too, and part of that is being able to clearly explain the project, yourself, your goals, your budget, and anything else we think is vital to giving you a fair estimate.

For an example, download the Project Planner from Happy Cog. That's probably a lot bigger and more detailed than we would need to be. We also take projects with a lower budget than $100,000. Although we don't really mess around with budgets any lower than a few grand.


1If you are interested in having a project estimated, your best bet is to fill out our simple contact form with as many details about yourself and your project as possible.

2I will actually be leaving my job at Chatman Design in May. I just need a break from the daily grind of the same sites I've been working on for 3 years. Chatman Design was the first web job I ever had and played huge role in shaping me into the designer I am today. I think it will be good for the clients too, as they will get a fresh set of eyes looking over their sites which I think is an undervalued thing in this industry. Carpe diem!

Comments

  1. Very accurate advice Chris.

    • I love this post, your tone is so down to Earth and friendly. Ultimately if you can stay level headed quotes, tenders and client relationships go so much easier. Sadly it’s difficult to stay clear and calm when deadlines have to be met. Like you say if you do your job, do not dilly dally on the way then really these headaches can be avoided as much as poss.

      Agencies grr, some of them are great others (one i worked with left a very bitter taste) do things like this and charge ridiculous prices that clearly don’t quantify business overheads and running costs. Estimated hours and transparent pricing where possible to me is the only way.

      Also like you mentioned with the rabbit pulling, this does need to happen sometimes. If you believe that the core work will be a typical month to month job in itself and on top of that you have bespoke features to provide it’s impossibly difficult to price this. Contingency will need to be factored into pulling rabbits or teeth when working with client.

      Great post Chris.

      Scotland loves you.

  2. I just checkout the job scope and say my estimated time and price, but usually i underestimate it. :)

  3. Thanks for the insight into your process. I love when my own processes somewhat align with others because I feel that maybe I’m doing something right.

    Do you have any big plans after you leave Chatman? Freelancing? More personal projects? Good luck with the transition and I hope all goes well!

  4. Fredrik Lind
    Permalink to comment#

    Great article!

    As always, very timely. I had this discussion just yesterday about how it’s hard not to estimate projects for clients based on the company size.

    If a company asks for a simple corporate website, you estimate a price. The site is made and all is well.

    Then later a company twice as big as the first comes along and asks for the same kind of website. Then there’s a little voice somewhere saying you could be charging this client more, it’s not going to matter to them all that much if the price is 20% higher.

    On the other hand you know that the second website is going to take just as much time to make. I feel like charging for the actual work done is always best, but it’s hard, sometimes. What do you think?

    • Agreed. Even worse when they openly state what their budget is, and you realise what they’ve asked for will cost nowhere near that if you charge them fairly.

    • That’s an interesting situation. It’s one where you’ll need to reflect on past experiences and make a good guess. Because of the size of the bigger company, there is a good chance there is going to be more people involved in the project, more red tape, more insane upper management making the logo bigger. Maybe 20% isn’t you being greedy, it’s you knowing your business.

    • Permalink to comment#

      I agree 100% on this. The way I explain it is bigger companies need require more things like competition research. You need to know how other companies do things and then you do them better. If I’m building something for a small shoe store down the road, there is much less involvement.

      The real question I pose to a larger client is: a mom and pop shop can afford not to take these things into consideration. Ask yourself if you feel like you would even want me to skip it being that your website is directly tied to your success.

    • Firstly, great article – nicely written.

      We had a situation recently where a budget was given for a site that was twice as much as we would usually charge. I then realised that there’s not much difference in the amount of work we put in to a site we build with something like WordPress than if we had built it ourselves from our own system.

      It was a bigger company and they had a reasonable budget – it was the rest of the small organisations that we worked with that had unrealistic expectations based on the perception that the system was free and we were only tweaking it for them.

    • Mike
      Permalink to comment#

      I also had a case like this. I get a good portion of work from a marketing firm to do the web sites they get. They have gotten to know my pricing and one day they ask me to do a site for 5x more than I normally charge (because they knew the client’s budget).

      I did it for their price but I felt guilty about it. I didn’t complain once when there tons of revisions…

      BTW – great post Chris – comes at a good time for me too. ~ mind reader…

  5. Permalink to comment#

    Great article as always, Chris. Can you give any examples of how you handle contract, particularly hosting agreements? For example, what do you say about potential downtime when providing hosting through a 3rd party hosting service?

    That might be a totally separate post but anyway, thanks for the insight.

    By the way, I’m impressed by the class you show in this post about leaving Chatman Design. Says a lot about you and probably says a lot about them too.

  6. Jon H
    Permalink to comment#

    Great article. I really like your approach to quoting projects by the job but adding a paragraph in about scope creep.

  7. Ken N
    Permalink to comment#

    This was an exceptionally helpful article, as I’m in the tough predicament of pricing out my first job… thanks!

  8. I keep my estimate and contract in one; when they pay the deposit, they accept the billing terms and it’s binding. I also require 50% up front and 50% before anything is launched or files are handed over. It ensures the client doesn’t “forget” to pay ;)

  9. This is a great article and for an upcoming freelance web designer this gives me ideas on how to be professional with my estimates and throughout the design phase. Great article and I do not blame you for wanting a break from the same sites! I have been working on one site for a company for almost 2 years, it is all customized php to match what the customer wanted and they keep adding things to it and it gets old at times, but it is a great place to start learning!

  10. Permalink to comment#

    Chris, can I ask about you leaving Chatman? Have you found that you’ve slowly found yourself is a spot where you can afford to quit and now focus on your own projects? Or are you going to immediately pursue another gig maybe part time?

    • I don’t have any solid plans yet, which is nice and a big reason for doing it in the first place. I’m very lucky to be able to be to have this kind of freedom.

    • Permalink to comment#

      Gotcha… for me I’m kind of trying to gauge how I might look at my own journey from 8 to 5 to having my own projects and business support me. So each perspective helps :)

  11. Permalink to comment#

    Great post, Chris. It looks like we agree on the basic process and it has worked well for me so far.

    I have a quote form (http://bigbuddymedia.com/quote) that I make potential clients fill out before I have any major discussions with them. This accomplishes two things:

    1. If they take 10 minutes to fill it out, I know they are serious and not just kicking tires.

    2. I have a really good idea (in writing) of what they want/need and after discussing the results with them, can give them a very accurate quote.

    Quoting by the project is definitely an art and a science, but it’s like anything, with experience, I am getting better and better at estimating correctly.

    By the way, anyone reading this can feel free to “steal” any questions from my quote form that they want to.

    • Permalink to comment#

      Buddy,

      I have something similar, and have been looking to update mine. I may take you up on offer to steal some questions. But what I am really curious about is feedback from your report? Have you had many comments positive/negative about using the form?

      I have edited some of my questions a few times, based on client comments, but mostly it’s for me- so I have the info I need to accurately estimate the project…

      Sometimes I want to ask more, but am torn between how many questions is too many- where they just give up and don’t fill it out… I am considering changing to a multi-page format, where all the answers are recorded, no matter if they complete to end or not…

      I suspect your business and mine are similar sizes, and this format is working pretty well but it’s so great to see what others do- I hope more people post their methods like you did.

      Here’s mine: http://www.tmpstyle.com/webquestionnaire.html

    • Donna
      Permalink to comment#

      Buddy,
      Thanks for sharing this very useful questionaire. It’s one of the best I’ve seen. I also love your site — nice design and very clean.

    • Permalink to comment#

      Joel,

      I haven’t had much feedback on it – positive or negative. I realize it can look pretty daunting, just because of the layout, but it was something I did using MachForm from appNitro and I just needed something that worked well, but that I could put up quickly.

      I usually tell clients something like this, “If you can take just 10 minutes to fill out the form…bla bla bla” which hopefully kind of reassures them that it won’t take very long at all.

      My philosophy is that if they can’t take 10 minutes to fill out a questionnaire about what they would like their website to feature, then they are probably not serious about needing a website in the first place.

  12. Chris will you post an example PDF?

  13. Recently we have completely changed how we handle our project estimates at 518 Designs. Even despite our best efforts to get as much information on a project from a potential client we realize they might know know all of their options.

    To compensate for that we have been writing out a document that is part quote/estimate and part education on what there options are. We break down all the tiers of services we can provide, from just the basics to full bell and whistle site.

    We draw on past projects and show examples where appropriate or draw parallels to their competitors. We don’t try to up sell services that won’t be needed but use it as a measuring stick for them to decide where in their industry they want to reside. A mom an pop shop might approach us an informational postcard style site but after they realize that they can also get a CRM or inventory tracking solution that will save them hours of wasted time in excel.

    So far these changes have been very well received by our customers and we have been told that the extra effort helped push us over the competition. But we also have lost a few bids to people who said they would rather settle for a $700 template site.

    At the end of the day we are happy with putting in the extra effort and know that it will all pay off in the end.

  14. Permalink to comment#

    good read!

  15. Nice article. I’ll grab some quotes for future f2f estimation workshops.

  16. noahgelman
    Permalink to comment#

    What kind of slider do they have on chatman.com? Is it from scratch or a modified version of a standard slider.

  17. Always interesting to read an article on estimating jobs. This is one of the hardest things to do for any creative. As we all know creativeness is not a science and can vary in amounts of time and energy in coming up with the right solution for the task in hand.

    The more jobs you do the better understanding you can get on how best to put an estimate together. Whilst this may be true in some cases there will always be a client or project who throws a spanner in the works. This is were having a plan in place for “scope creep” is necessary and is worth noting to any prospective client.

    Thanks Chris for an other great article.

  18. Permalink to comment#

    Estimating jobs has been very difficult for me. There is a kind of chicken-and-egg problem– many jobs include functional elements that I haven’t built before, so they are pretty much complete guesses. So, I’ve ended up underestimating a lot (despite padding) which has been a problem.

    One thing that I hope will help is I am tracking my actual hours on each project phase (discovery, design, coding, etc). That way I’ll start to build a body of knowledge about how long it actually takes to build sites with specific types of features. My hope is to be able to come up with a simple metric of number of site pages, complexity level and resulting cost estimate based on prior projects (finger crossed :)

    As for a standard contract, I read a great article on plain English contracts at 24 Ways. This is what I used as a basis for my contract.

    • I did this for the first 6 months of going freelance. On as many projects as possible, it really helped guage future tender pricing.

      http://collabtive.dyn i think is the url for a fairly decent self hosted Time Tracker… similar to Basecamp in a few ways.

  19. WallPaperDude
    Permalink to comment#

    The “before it all begins” is the story of my life. Back between 2005 and 2006, when Myspace was huge, I was into making insanely custom profiles. Flash comments, custom music players, rollovers, you name it. A lot of stuff the average user probably didn’t even think was possible.

    A few contests and groups later and the requests came pouring in. Unfortunately, I never finished a whole lot of projects. I’d say about 90% of those first emails were nothing but red flags. And the few times I ignored the signs and replied, they usually freaked out when they realized I wouldn’t do it all for free, or they would disappear mid-negotiations without a word.

    By mid 2007 I couldn’t count the number of bogus requests I was getting a week. By late 2008 I could count on one hand how many requests I got every two months. I haven’t don’t a paid profiles in almost a years.

    I honestly don’t know how places like bandspaces[dot]com made the supposed tens of thousands of dollars per month they did at one point.

  20. Guessing the estimate time is one of the difficult tasks for me, thanks for the great post.

  21. Permalink to comment#

    Excellent writeup with some really good info here.

    Do you break down your projects into “sections” so they can see how much each part could cost or do you give a collective proposal?

  22. Wow – great article.

    I also wonder, how do you account for your clerical time:

    *time writing/answering emails with the client
    *writing the proposal/invoice/logging-time
    *meetings, phone calls

    Each of this things might only take a few minutes a day – but add it up and that can be about 5 hours a week! Do you just blend it into the time? Or specify it so they can see? (or just “eat it”)

    • That’s exactly what I was wondering also. I am struggling with these tasks every day, but often find it too little time to charge the client. But indeed it can add up to a lot of time in a week.

      Any advice on this?

  23. Pretty good post. Covering old ground but always helpful to know. I think as time goes by you begin to hone in an intuitive way of pricing projects.

    I’ve just finished a huge e-commerce job that I didn’t make a penny on. All because of one little oversight – the importing of their catalogue of 700+ products!! Doing that took all the time I’d allocated for the whole project as a whole. Huge mistake. And I couldn’t just turn around and saw – “opps i underquoted you slightly because i forgot to factor in uploading your catalogue, would you mind paying double?” You live and learn!

  24. Permalink to comment#

    Nice post.
    I actually prefer a per project basis estimate as well, rather than a per hour basis even though I still base the per project price on a rough hourly estimate.

    I also wish you all the best for your future endeavors.

    I would have been interesting to see a sample .pdf (for a imaginary client/site), not sure if you have permission to post that here though.

  25. Awesome article. It was a pleasure to read this. And very useful too, especially for a new designer like me. Thanks!

  26. My question is similar to Chris’s. Do you build project management into your development quote or include it as a separate line item?

    I always send a potential client a RFP. It really helps you price it more appropriate and it weeds out the undesirables.

    Nice article and happy Easter!

  27. Great article. Thanks for sharing your progress in your jobs.

  28. Great info! Thanks a lot!

    I prefer to estimate a project cost using Excel. I have a special template. I divide all work into 5 stages (planning, design, coding and integration) and describe them in detail. Then I note number of templates and plugins and the like, working hours for each item and cost of each project’s part and total cost.

    Then I can use this document as a part of commercial offer and also as part of agreement. My clients are always satisfied.

  29. Permalink to comment#

    I think the best way is to use hourly rates with small clients, while use a per-job rate with established clients. Giving a per job rate to small/cheap clients will result in a project that is way over-budget (and not on the client’s expense) and behind schedule, essentially due to scope creep.

  30. The Happy Cogs planner was my inspiration for my current project planner that I developed back in the Fall. Its amazing.

    How do you feel about charging for putting together an estimate, right or wrong? I know some places charge a $30 processing fee thats applied directly to the overall balance due if the proposal is accepted.

Leave a Comment

Current day month ye@r *

*May or may not contain any actual "CSS" or "Tricks".