Why Hourly Billing Gets Harder
When an agent writes most of the code, your own hours on a feature drop. The client gets the same result, often sooner, and an hourly invoice charges them less for it. The value of the work stayed the same; the hours it took from you went down.
Your time still matters: you scope the work, direct the agents, review and test what they produce, and stand behind it. The question is how to bill for the result and the judgment, as well as the hours.
Three Ways to Bill
1. By Your Time
Bill the hours you spent prompting, reviewing, testing and supervising, at your rate. It's familiar and easy to explain. Count the time you attend the work, agents running included, and leave out breaks. As agents get faster, raise your rate to reflect what an hour of yours now delivers.
2. By the Deliverable
Agree on what each piece of work is worth up front, as an estimate in hours or a fixed price, and bill that amount when it's done, however long it took. This is sometimes called delivered effort. Faster work means a higher return on each hour of yours, and the client pays what they agreed to.
3. A Hybrid
Bill your time, capped at the estimate for each item, or bill exploratory work by the hour and well-defined features by the deliverable. Retainers work too: a monthly amount for a set of outcomes, with what the work took shown alongside.
An Example
A password reset flow, estimated at 6 hours. You work on it for 1.4 hours with agents running alongside you for 2.6 hours, at $120 per hour:
| Billed | Per hour of yours | |
|---|---|---|
| By your time: 1.40 h × $120 | $168.00 | $120 |
| By the deliverable: 6.00 h × $120 | $720.00 | $514 |
Both are legitimate. The deliverable price is what the client agreed the feature was worth; the hourly price is what it took you. Choose per client, and say which one you use before the work starts.
What to Do About Compute
AI tools cost money: a subscription, or usage billed by the token. Most developers treat it like any other tool and build it into their rate. Some pass large usage through at cost, the way they would a cloud bill. Whichever you choose, put it in the agreement.
Showing compute on the invoice as information, without charging for it, helps clients see the effort behind a quick turnaround.
What to Tell Clients
- Say that you use AI coding agents, and how you review and test their work.
- State how you bill: by your time, by the deliverable or a mix, and how compute is handled.
- Ask whether the client has a policy on AI. Some don't allow it on their code; respect that and keep their work separate.
- Confirm that the client owns the result, as with any other work you deliver.
A short paragraph in your agreement covers all four, and avoids surprises at invoice time.
What to Keep a Record Of
- Your time, from your first prompt to the end of the work, without breaks.
- Agent time, kept separate from yours and never added to it: three agents running for an hour is still one hour of yours.
- Compute: the model, tokens and cost.
- What shipped: the commits and pull requests behind each piece of work.
Together they let you show a client what a deliverable took, check your estimates against reality, and price the next project well. They also answer the question clients increasingly ask: how much of this was AI?
Doing It in per.hr
per.hr's AI-assisted development beta records each Claude Code session (your time, agent time, compute and commits) on the right client and Plan item. You confirm each session, then bill each client by your time or by delivered effort, with a receipt under each line and a page showing the work behind the invoice. The Claude Code guide covers setup.