For most of my clients, my invoice contains a section that details what I worked on during each day and how many hours I spent on it. I've had a couple of clients who specifically asked me not to include that level of detail on their invoice, and state only the total number of hours worked. I can only guess that they needed to keep my activities secret for some reason. The rest of my clients appreciate the ability to allocate costs to each of the projects I work on, as well as to see exactly what they're getting for their money.
When preparing my invoice, I imagine my client reading it — and I hope that what they're thinking is something like:
- We're getting a good value for our money here.
- Look at all the things he's accomplished.
- I'll need to give him more work.
- Is he ever going to finish that project?
- We've spent too much already — maybe we should suspend some features.
- I'm being taken for a ride.
Within the limits of my freedom to choose what I work on, this awareness of being watched by my client sometimes leads me to choose the work that includes the highest frequency of deliverables that I can easily enumerate on my invoice. That's not all bad. In general, shorter cycles are better — both for getting things done and for creating opportunity for frequent feedback. But a lot of projects need to receive days or even weeks of dedicated attention before reaching a milestone. Those projects can become discouraging enough every time I hit a snag, without worrying about what my client will think when they see an invoice that reads:
|5/07/2012||8 hrs||Begin work on phase 3|
|5/08/2012||8 hrs||Continue working on phase 3|
|5/09/2012||8 hrs||Continue working on phase 3|
|5/10/2012||8 hrs||Still working on phase 3|
|5/11/2012||8 hrs||Yes, really|
To overcome this fear and (more importantly) get these sorts of projects done, we need first and foremost to develop a relationship of trust with our client. Don't ever fudge numbers or churn. Use the time you bill diligently, and unless your client is a paranoid sociopath they will come to realize that how long you took is how long it takes.
When possible, break down these projects into smaller chunks. That not only gives you more to talk about on your invoice — it may also help you decompose the problem better. Don't be afraid to detail your work on the inevitable blind alleys. If you're always honest with your client, they'll realize that wild goose chases are often a natural part of exploring a problem domain. But you can also phrase it that way, as research — you don't need to make yourself look completely clueless.
No matter what level of detail you include in your invoice, none of it should come as a surprise to your client. You should be communicating with them on a daily basis so that the invoice is only a summary of what they already know has happened. The more open communication we have with our clients, the less we'll need to worry about how something sounds.
Chip Camden has been programming since 1978, and he's still not done. An independent consultant since 1991, Chip specializes in software development tools, languages, and migration to new technology. Besides writing for TechRepublic's IT Consultant blog, he also contributes to [Geeks Are Sexy] Technology News and his two personal blogs, Chip's Quips and Chip's Tips for Developers.