Skip to content

Billing client expenses without losing money

A plain way to bill client expenses, choose markup or pass-through honestly, and use receipt-backed lines to stop billing disputes early.

6 min read
A desk with an invoice, a paper receipt, and a laptop beside a calculator
Photo by https://kaboompics.com/ on Pexels.

Billing client expenses well means choosing between markup and pass-through, then writing the line so it matches the deal. If you want the simplest honest answer: pass through the cost when you are only rebilling it, and add markup only when you are selling handling, risk, or convenience. In both cases, attach the receipt to the line, because billing client expenses becomes much less contentious when the evidence is right there.

The mistake most small firms make is not charging enough. It is charging in a way that sounds vague or opportunistic. A client will accept an expense more easily when the invoice shows what was bought, why it was needed, and what part of it is yours.

Billing client expenses starts with a rule, not a hunch

There are two honest ways to handle billing client expenses. The first is pass-through, where the client pays the actual cost and you do not hide a margin inside it. The second is markup, where you add a clear fee because you are doing more than paying the supplier on the client’s behalf.

That distinction matters because clients can tell the difference between a copied receipt and a dressed-up service charge. If you blur them together, the invoice starts an argument about trust instead of work.

Pass-through means you are not pretending to be the seller

Pass-through is the cleaner choice when the expense is obviously the client’s cost. Think postage for their shipment, a domain for their project, or a venue fee for their event. In that setup, your job is to record the spend, keep the proof, and recover the exact amount.

This is also the right choice when the client asked you to buy something specific and you are simply executing the instruction. The invoice line should say what was bought and which project it belongs to. If the receipt is attached, there is little room left for doubt.

Markup means you are charging for more than the receipt shows

Markup is honest when you are doing real work around the expense. That can mean sourcing, checking options, paying up front, handling changes, or carrying the risk if a supplier refunds slowly. You are not just rebilling a cost. You are selling a service wrapped around the cost.

The line should say that plainly. A client can accept a fee for procurement or handling. They will push back on a hidden uplift if the invoice pretends it is still just the supplier cost.

When markup is honest, and when it is not

Markup is not the problem. Hidden markup is. If you are transparent about the fee and the reason for it, many clients will accept it without fuss. They may still compare it to doing the purchase themselves, but that is a commercial discussion, not a billing dispute.

Markup becomes hard to defend when the expense is tiny, routine, and under the client’s direct control. In those cases, a pass-through line is usually enough. If you feel tempted to pad a receipt and call it administration, that is usually a sign to rethink the policy.

There is a decent counter-argument. Some agencies prefer one all-in project fee and no expense lines at all, because it removes a category of friction. That can work well for repeated work with predictable spend. The drawback is that you can end up eating unusual costs unless your scope and rates already account for them.

For teams that do bill separately, a public pricing page helps because it sets expectations about how fees are handled elsewhere in the product. FlatHours keeps that part blunt on pricing, including what we never charge for, and the same principle should apply to your own invoice policy.

Two honest ways to bill client expenses
MethodWhat the line saysWhen it fitsClient reaction
Pass-throughClient pays the supplier costYou only bought the item on their behalfUsually straightforward if the receipt is attached
MarkupClient pays the cost plus a clear feeYou sourced, handled, rushed, or carried riskUsually accepted if the fee is named honestly

Why receipts attached to the line stop the conversation early

Most expense disputes are not really about the money. They are about whether the line was real, whether it belongs to the job, and whether the client is being asked to trust your memory. A receipt attached to the line answers all three at once.

It also helps inside your own team. The person who logs the expense does not have to reconstruct the story later. The invoice writer does not have to search inboxes or Slack. The client sees the source document and can move on.

This is especially useful when the bill includes mixed items. If one purchase was for several projects, the receipt still anchors the record, and the description can explain the split. If an expense is disputed, the first question becomes specific: does this belong here, or not?

That is the kind of argument you want. It is narrow. It can be answered. It does not become a debate about whether your firm is making things up.

Billing client expenses in a way that scales with clean books

Good billing policy is boring on purpose. It tells people what to do before the receipt lands in someone’s inbox. It should answer four questions: which expenses are billable, whether they are pass-through or marked up, whether approval is needed first, and what proof must be attached.

If you already track time and issue invoices, the expense rule should sit beside those habits, not outside them. FlatHours is built for that kind of plain accounting, including the parts that become awkward when a client starts asking why a line exists. If you also need to compare how expense handling sits beside the rest of the product, the Harvest alternative comparison is the cleaner place to start than guessing from a pricing sheet alone.

A simple policy does more than a clever one

You do not need a long matrix of edge cases. You need a standard that your team can follow without asking three people. A short rule beats a sophisticated one if it keeps the invoice consistent and the receipt attached.

In practice, that means your policy should say whether travel, software, postage, stock imagery, printing, and subcontracted costs are billed separately or baked into rates. It should also say who approves unusual spend before it happens. If the client never agreed to a category, do not discover it on the invoice.

For firms dealing with AI work as well as human work, the same logic holds. If an AI agent does billable work, the charge should still map to a line the client can understand. FlatHours covers that separately in billing for the work AI agents do, because the accounting question is the same even when the worker is not human.

What to put on the invoice line

Keep the wording plain. Name the item, the project, and whether it is pass-through or includes handling. If you are adding markup, say so in a way your client can read without decoding your policy manual. If there is a receipt, attach it to the line, not somewhere else in the archive.

That is enough in most cases. The more the line sounds like a careful note from someone who was actually there, the less it sounds like an invented charge. Billing client expenses is one of those small admin tasks where honesty saves time twice, once when you write the invoice and again when the client reads it.

The hard truth is that you cannot rescue every expense with wording. If a cost should have been approved first, or should have been absorbed into your rate, no receipt will make it graceful. But for legitimate expenses, a clear choice between markup and pass-through, backed by the receipt on the line, is the nearest thing to a finished argument.

Time tracking and invoicing with a bill that does not move

Nothing is metered on any plan, including Free. Import your Harvest history, keep unlimited projects, clients and invoices, and take your data out again whenever you like.

Questions people ask about this

Should I mark up client expenses or bill them at cost?

Use pass-through when you are only rebilling the supplier cost. Use markup when you are charging for handling, sourcing, speed, or risk. The honest choice is the one that matches the service you actually provided.

Do I need to attach receipts to every expense line?

If you want fewer disputes, yes. A receipt attached to the line shows the charge is real and belongs to the project. It also shortens the conversation when a client asks why it is there.

What should an expense line say on the invoice?

Say what was bought, which job it belongs to, and whether it is pass-through or includes a fee. Keep it plain. The point is to make the line easy to verify, not hard to read.