> The only thing I would add is: Never reduce your hourly rate for any client. ... Never devalue your time.
I generally agree with this, but there are some exceptions:
1. For large, repeat clients that have demonstrated loyalty, it's okay to offer a modest discount, no more than 10%. You still cite your rack rate on the invoice, but at the end add a "Loyalty Discount" so they know they are getting this discount for a reason.
2. While you should not reduce your rate, it can be okay to write off your time. If it takes you 20 hours to do something, but you're afraid the client will balk at the bill and run away, rather than lowering your rate, invoice them for 10 hours, or whatever seems reasonable.
3. When you're just starting out, and have limited understanding of the value of your skills compared to the competition, you may not know what your rate should be. In these cases, you may want to consider flat rate arrangements.
> While you should not reduce your rate, it can be okay to write off your time.
Strongly disagree. This is a failure of communication. If you're billing by the hour, your client should have a general idea of how long something will take. A lower bound and an upper bound. Time-box all tasks.
As soon as you know you're going to break through the upper bound, stop work, inform the client, provide a new estimate, and let them make the call.
Eating the difference defeats the purpose of working hourly.
> you may not know what your rate should be. In these cases, you may want to consider flat rate arrangements.
Disagree with this as well. If you don't know what your rate should be, how can you name a flat rate? You should know what your competition is asking for and ask for slightly more, because you're better.
> If you're billing by the hour, your client should have a general idea of how long something will take. A lower bound and an upper bound. Time-box all tasks.
In a world with perfect information, you'd be right. Unfortunately, people have to make decisions with incomplete and potentially misleading information all the time. Demanding perfect time-boxing ahead of time is a recipe for disaster.
> Demanding perfect time-boxing ahead of time is a recipe for disaster.
Dear client, this task will take 2 to 6 hours. If I find out it will take longer than this, I will reach out.
Dear client, I am 1.5 hours into this task. Based on my experience, it look like it will take 7 to 10 hours instead. Should I continue?
For all of this to work well, you need to have experience in estimating well and also understand that whatever number pops into your head, multiply it by 2 and tell the client that. I have never had a client be pissed at me because I finished something for less time/money than they were expecting.
That said, this sort of thing should really be used for highly indeterminate tasks, like fixing bugs.
Only when you do the wrong things will you learn what's right.
There's something to keep in mind about the nature of time. It's possible to make a billion dollars in a day, but it's not possible to spend more than 24 hours in a day.
I generally agree with this, but there are some exceptions:
1. For large, repeat clients that have demonstrated loyalty, it's okay to offer a modest discount, no more than 10%. You still cite your rack rate on the invoice, but at the end add a "Loyalty Discount" so they know they are getting this discount for a reason.
2. While you should not reduce your rate, it can be okay to write off your time. If it takes you 20 hours to do something, but you're afraid the client will balk at the bill and run away, rather than lowering your rate, invoice them for 10 hours, or whatever seems reasonable.
3. When you're just starting out, and have limited understanding of the value of your skills compared to the competition, you may not know what your rate should be. In these cases, you may want to consider flat rate arrangements.