An invoice a client cannot argue with.
A contractor’s invoice gets read by someone who did not commission the work and was not in the room. Accounts payable sees a number and a description. The vaguer the description, the longer the payment takes.
HourToBill bills from the hours you logged, so every line carries a date, a description and the rate it was charged at. There is nothing left to query.
Due 30 September 2026 · Net 30
Itemised hours are dispute prevention, not bookkeeping.
The delay on a contractor invoice is rarely refusal. It is a question. Someone in finance cannot match the figure to anything they recognise, so it sits in a pile until they ask, you reconstruct the month from memory, and two weeks have gone. That round trip costs more than the rate negotiation ever did.
The fix is unglamorous: write the line while you are doing the work. One sentence, at the moment it is fresh, attached to the client. Four weeks later those sentences are the invoice, in date order, each with its hours and its amount, adding to a total that explains itself.
The mechanics underneath matter too. Each client carries its own rate, currency, tax rate, payment terms and billing increment, so a client you agreed 15-minute blocks with is billed in 15-minute blocks without you remembering. Rounding is applied to the merged daily total for a task, not to each entry, so three short calls on a Tuesday do not quietly become three full blocks.
What contractors usually end up doing instead.
Most independent contractors run one of these three, and each has a specific failure at month end.
| What you get elsewhere | What you get here |
|---|---|
| A spreadsheet and a Word template. Free, flexible, and rebuilt from memory every month. | The lines already exist. The arithmetic and the numbering are not yours to maintain. |
| A free tracker plus a separate invoice tool, with a CSV in between. | One client record. The rate on the invoice is the rate on the entry, by construction. |
| Agency software priced per seat, most of it aimed at coordinating a team. | One person, one plan, no seats and nothing to configure before your first hour. |
| Invoice numbers kept by hand, which is where accountants find gaps. | One sequential counter with your own prefix. Numbers cannot collide or skip. |
| A rate change silently rewrites what an old invoice looks like. | Lines are snapshotted when issued. Last month’s invoice never changes. |
What this does not cover.
No expenses, no mileage, no materials, no purchase orders and no progress billing against a fixed contract value. If you invoice for parts as well as hours, or bill percentage-of-completion on a build, this is the wrong shape and will annoy you by the second invoice.
It is also not payroll, not a subcontractor management tool and not compliance software. It does not know about IR35, 1099s or CIS. It records what you did and prices it.
What it is: hourly contracting, one person, several clients, $12 a month. If that is you, the trial ends with a real invoice in your hand.
Before you buy.
Can I bill different rates to different clients?
Yes. Rate, currency, tax rate, payment terms and billing increment all live on the client, and every hour you log against them inherits all five.
Can I bill in 15 minute blocks?
Yes, per client: exact minutes, or 6, 15, 30 or 60 minute increments. Rounding applies to the merged daily total for a task rather than each entry, so several short entries in one day do not inflate into several full blocks.
What about expenses and materials?
Not supported. Every line comes from tracked time. If you bill for materials too, this will not cover your invoice and you should not subscribe on the assumption it will.
Does it handle multiple currencies?
One currency per client, chosen from eight. Each invoice is issued in that client’s currency. There is no conversion or consolidated reporting across currencies.
Can I mark an invoice as paid?
Draft, sent and paid, with overdue shown automatically once a sent invoice passes its due date. The invoices screen totals what is outstanding.
What happens if I invoice the same hours twice?
You cannot. An entry belongs to at most one invoice. Voiding an invoice releases its hours back to unbilled so they can be billed again, which is the only way they ever come back.