Charging by the Hour Sucks!

Billing your web design projects by the hour sucks!  You know what I mean.

“How many hours do I have left on my website project? Can you itemize that? What? Why did it take you so long to do this? My friend who made a website once says it should have only taken about 30 minutes, and you claim it took 2 hours?”

Does this sound like a conversation you have had before? Squabbling over hours and minutes with a client can be enough to make anyone second guess their decision to become a web designer. There is a simple solution though…

Don’t charge by the hour.

Which of course raises the question, “what do I charge by”? Rather than selling your time, sell your services, or call it a product, if you like. Each project must have a set, well-defined criteria before you begin. The devil is in the details. Keep in mind that whatever you do not define and explicitly lay out for your client, it is likely that they will take it to the extreme.

If a client asks for a contact form, and you don’t ask any more questions, you are likely to put up a basic five-field form that emails them upon submit. After invoicing them, receiving payment and adding it to their site, you are likely to find out that what they really wanted was a full-fledged lead generation form with 30 different fields. What you charged for one hour is going to take three. Or worse, they want the data all stored in a database so they can log in and search through the data. Add another five hours.

It’s okay, you didn’t have anything better to do, right?


If you give a mouse a cookie… he is going to want a glass of milk


Obviously there was a vast difference between what they meant and what you thought they meant. Clients are not always the best at communicating what they need, and web designers are even worse at asking them to clarify. If you don’t dig deeper, you won’t uncover the buried landmines until it is too late; you will have wasted your time, and now you have to either give away free work or risk hurting your relationship with your client by asking for more money.

Had you asked them to send a list of each field they wanted in the form before quoting them, you could have accurately invoiced them in the first place.

Having to correct an invoice or send an additional invoice for work that the client thought you had already agreed upon and that they had already paid for will never go well. It is better to learn from the mistake, suck it up, and do the work for free. Next time get more details.

Lead Your Clients

In fact, better than asking the client what fields they want, suggest what fields they might want. Start simple with what you would expect, and then ask them if they would want anything else and quote them accordingly. Make sure they are okay with the results being emailed to them. Don’t just assume that is what they expect, you know what assuming does…

I find that making suggestions to clients when they are unsure or vague about what they want works miracles. Give it a try! I wrote more about how to lead a client here.


Clients are not always the best at communicating what they need, and web designers are even worse at asking them to clarify.


There is a plumbing company in my city that has a unique billing method. Every service they have has a set cost. Unclogging a drain, $80; installing a new toilet, $125; etc. Now I am sure they hope to make a certain dollar amount each hour, and they have based these prices accordingly. Sometimes they may go over time, and sometimes they may go under. But the buyer always knows what they are getting and what they are paying for it. In the end it should even out for the plumbing business.

The Advantages Of Charging By The Project

The advantage for the plumbing business is that they never have to haggle prices with customers, and in general they have a much better relationship with their clients.

Another advantage is consistency. Have you ever quoted a customer for a project, and then months later, when they finally decide they want to do it, you accidentally give them a different quote? Or maybe you find yourself searching through old emails to find what you originally told them, so that you don’t look stupid.

Having set, well-defined prices eliminates the ambiguity of a project, adds consistency to your quotes, and helps build trust between your client and you.

What billing nightmares have you had with any of your clients? Leave your story or comment below.

Download My Web Design Quality Control Made Easy Guide

Get a jump start on being more than just a web designer by taking the quality of your websites to the next level with this easy to follow guide and checklist. No risk, no spam, just help from one web developer to another.

I need your help!

I lost all of my social stats when I changed my URL from to

Please "Like" and share generously! :-)


  1. I’ve found the complete opposite is true for me. Charging by the hour means that I only bill for the work I have done. I ask for a deposit for the project, but all other costs are variable.

    This way my clients feel that they are getting the true best value for their money (versus a fixed-price scenario). I have never got the ‘How many hours do I have left on my website project?’ because the client ahs as many hours as they like, they just have to pay for them!

    I find it makes my time seem more valuable, and clients get a better idea of how long things typically take.

    If I am confronted with a situation where the client doesn’t believe a task should take as long as I have quoted, I just need to be confident by my estimation, and defend it with details of why a task takes that amount of time.

    Again, if I quote incorrectly, the client won’t have to pay, so clients feel more secure in accepting my quotes for exactly what they are, an estimate.

    It also means scope creep can be handled much more seamlessly (“if you would like that, I can add it to the invoice, it would probably take about x hours.”)

    I have found a fixed-price contract has left me with a client trying to squeeze too much for the price, perhaps because they don’t understand the time required to complete certain tasks.

    Anyway, those are just my thoughts.

    • I’m with Daniel on this. I charged by the project for years and continued to lose money as the inevitable scope creep ate away profits.

      I’ve found that charging by the hour, while giving the client a solid estimate of hours/cost has worked out in everyones best interest.

    • Ultimately I wouldn’t lock myself into any one method. Some larger clients are completely content with handing you work and paying whatever you invoice them. They are perfect to charge by the hour.

      I like to reuse code, so the first time to build something from scratch may take 5 hours, and it is worth that to the client, but I may implement the same thing on someone else’s site and the second time around will only take me an hour. Charging by the hour means the first client pays 5 times more than the second client, even though they both received the same value, and in the case of the second client it is probably better because I improved it and the turnover was faster. If I charge by the project, both clients can pay the same, or the second client may pay more since I have improved on it and they receive even more value.

      • This is a *fantastic* point. Daniel and Bryan offered solid perspectives, too… but for myself — at least re-starting yet another website creation & marketing business — I very much prefer fixed price for most things. (For some, like maintenance, updates, or other such things where giving a time/cost estimate would be more ambiguous, hourly is great.)

        Although scope creep (even on hourly estimations) is a very real problem for any designer, I’d think, Heath’s point of code reuse is a determining factor for me. In my various industries, I’m okay losing a little money on the front end the first time I do a certain customization for someone, as I know I’ll have my price set and my hour estimation already good to go for subsequent clients.

    • Great points….really great points.

  2. I’ve been on both sides of this proverbial coin (though mostly sticking to project/flat-fee billing) and I hate to say it, but it all depends… on the client, on what you’re comfortable with, the market, etc.

    For example, we have a client that we’ve been working with for about 7 years. All our billing with him started out as project based, but now he prefers the hourly route as it gives us both a lot of freedom. He expressed not too long ago that the hourly is nice because he feels that we’re getting paid what we deserve, he’s not paying more than he should.

    On the flip-side we have another client who was very wary of hourly billing (probably because our rate as a studio was so much higher than the freelancer he was considering) due to budgeting constraints. So we went flat-fee and it’s gone well so far.

    I like and see pros/cons to both methods. Charging by the hour puts a lot of the risk on the client (how do they know that you aren’t working slow? are they getting billed more when you or your team are stumped on something?). But charging by the hour means we as designers/developers/principals really have to know how to estimate time very, very well. And the fact of the matter is, no one is *that* good at it. We’re essentially trying to predict the future.

    Anyway, my 2 cents and change. 🙂

    • Great points…being new to the industry but not new to being self employed I would agree. It seems the key is communicating value for provided service. Yes market dictates price but, we are in business to make money not loose it. I like your 2 cents lol

  3. I typically find that it’s too difficult to come up with a single project price for most of the work I do. My customers like the freedom and flexibility to change their minds in midstream and it doesn’t box either of us into a set price.

    I agree that having a fixed price takes away the ambiguity but it also puts a ceiling on every job. If a customer wants more or something different, I would have to give them another quote and create a new job for this add-on.

    I’ve been asked about retainers by many of my customers and I’ve never come up with an amount that’s equitable for both parties. I think a price range (or hourly range) always works best for everyone.

    My 2¢…

  4. Completely disagree…

    • Thanks for the thoughtful insights, Zach, but I would have to say that I completely disagree with you. 🙂

  5. Completely agree with this. I did hourly work for years and charging for a “product” or “package” is definitely the way to go. After the initial package is complete though, you should charge hourly.

    • Yes, it depends on the client. Some clients will be fine to charge hourly after the initial project is finished, some clients you may want to keep a tighter reign on.

  6. I completely disagree with this. Whenever you start a project you ask for their budget and a project brief. A bad client typically can’t answer those questions. There are exceptions and we treat them each differently, even offering to create the brief with them (paid, of course)

    Once you know the budget and project brief you break down the project in small parts (modules). For each of those modules you can estimate the number of hours needed for development of each one.

    You sum it up, add a few variables and that’s your estimate for the project. If it exceeds the budget you walk trough the estimation with the client and reduce functionality (modules).

    They understand the effort that’s made for developing each of their features (seeing the number of hours estimated for it), and also can plan their development in stages.

    Having a flat rate makes it harder to explain and the clients feel ripped off. Most clients do want a breakdown to see where their money is going. You can’t really do that without hourly charging.

    The client also understands that if he has a request that was not originally planned, we must charge accordingly.

    You also assume that the client knows what web developing means … most of them do not understand the complexity beneath functionality they require.

    Hourly payment makes the client more responsible and also makes you as a developer paid according to your work. I have tried both ways, and this is what worked out best for me.

    • Zeno thanks for the detailed comment but I don’t think we are far off from each other. I am not talking about one flat rate for every client. I build out each project very much like you describe, only I don’t mention hours. A website has a certain value to it and that is what matters, of course on the back-end I figure out the quote based on how much time it will take me, I just don’t mention the time estimate to the client, I just quote them a price.

  7. I prefer the hourly method because I don’t like to gamble and lose – ha ha. But I think either way it is all about setting expectations from the onset – “if you are a person who changes your mind a lot … It will cost more.”
    I completely agree about asking all the questions of their wants and needs before you quote.

  8. “If you give a mouse a cookie… he is going to want a glass of milk” nice quote 🙂

  9. Charging by the hour is good for maintenance work, updates to designs, copywriting and other ad hoc work. For all my web projects I charge a project fee that actually covers all the hours I anticipate I’ll need to execute the brief. If the scope starts to blow out, that’s fine – I let the client know that what they are asking for is outside the brief and it will be charged for on top of the project fee. Keeps people aware of what they’re asking for and that it costs money.

    • I completely agree Sofia, thanks for sharing.

  10. The way I charge is 100% dependent on what the client needs, their timeframes, budget, etc. I typically set up the initial project by a flat fee but sometimes I set retainers for a project. This way the client is always seeing and getting something for their money throughout the process. Rather then forking over $xxxx for a deposit at the beginning and then another $xxxx once fully developed and ready to launch weeks down the road – they can simply pay x amount for the commencement(deposit) of their website, x amount for the design once completed, x amount for graphics once completed, x amount for SEO once completed, x amount for social media integration, x amount for a shopping cart, etc, etc…

    Any maintenance is definitely hourly based!

    • Great idea Zack. I haven’t ever tried that but I could see some advantages to help move a project forward and get paid on time.

  11. I prefer the hourly method because I don’t like to gamble and lose – ha ha. But I think either way it is all about setting expectations from the onset –

Leave a Reply

Your email address will not be published. Required fields are marked *