Client billing is where agency margins quietly disappear. Not because the work is wrong, but because the billing infrastructure underneath the work is held together with spreadsheets, screenshots, and three different platforms that do not talk to each other.
You spent £18,000 on Facebook Ads for Client A last month. The platform shows £18,247. Your card statement shows £18,304. The bank applied a 1.4% FX conversion you did not budget for. Your invoice template inherited a markup of 15% from a previous client and you did not catch it. Client A’s finance person notices the discrepancy, asks for evidence, and now your account manager spends a Tuesday afternoon pulling exports from three systems to reconcile £57. By the time it is resolved, the margin on that client for the month is gone.
This is not an edge case. It is what client billing looks like at most agencies running 10+ accounts in 2026. The work itself is rarely the problem. The infrastructure underneath is.
This guide walks through how to bill clients for ad spend cleanly – what to track, how to structure markup transparently, how to handle FX, how to evidence every charge, and how to set up the system so it scales from five clients to fifty without breaking. It is written for agency owners, finance leads, and account managers who want to stop losing margin to billing friction.
The four billing models – and why the model you choose changes everything
Before getting into the mechanics, it is worth being clear about which billing model your agency uses. Each has different invoicing, reporting, and cash flow implications.
Model 1: Agency-fronted ad spend with markup
The agency pays for client ad spend out of agency funds, then invoices the client at month-end with a markup (typically 10–20%) on top of the raw ad spend. This is the most common model for performance marketing agencies.
Pros: Predictable revenue, control over campaigns, ability to scale spend without waiting for client approval each time.
Cons: Agency carries the cash flow risk. Late client payments hurt directly. Card limits and credit lines become the constraint on how much you can manage.
Billing structure: invoice shows raw ad spend, markup, and total. Some clients want raw ad spend evidenced; others trust the agency’s reporting.
Model 2: Agency-fronted ad spend with management fee
Same as Model 1 but instead of a percentage markup, the agency charges a fixed monthly management fee on top of pass-through ad spend. The ad spend is billed at cost; the agency makes money on the management fee.
Pros: Transparent to clients. Easier to win price-sensitive deals where clients want to “see exactly what they are paying for media.”
Cons: Income is tied to fee size rather than spend volume, which can underprice high-volume campaigns. Scaling client spend does not increase agency revenue.
Billing structure: invoice shows ad spend at cost (with evidence), separate management fee line.
Model 3: Client-owned ad accounts
The client provides their own payment method on their ad accounts. The agency manages campaigns but never touches the money. Common for retainer-based agencies serving larger clients with their own finance infrastructure.
Pros: No cash flow exposure. No reconciliation between agency books and ad platforms. Simpler invoicing.
Cons: No markup opportunity on ad spend. Revenue capped at retainer + project fees. Less control over campaign continuity if a client’s card has issues.
Billing structure: flat retainer or project fee. Ad spend is not invoiced because the agency never paid for it.
Model 4: Hybrid (mix of fronted and client-owned)
Most growing agencies operate this hybrid model. Some clients on agency-fronted spend; others on client-owned accounts. The mix usually shifts towards client-owned as clients grow and as the agency’s relationship matures.
Pros: Flexibility to serve different client sizes and preferences.
Cons: Operationally complex. Different invoice formats per client. Different reconciliation processes per client. Easy to make mistakes if not structured carefully.
Billing structure: depends per client. Critical to maintain a clear list of which clients are on which model and apply the right template each month.
The rest of this guide assumes Models 1 and 2 (agency-fronted spend) because those are where billing complexity actually lives. If you are entirely on Model 3 (client-owned accounts), most of this guide is interesting context but not directly relevant to your operations.
What you actually need to track per client
Clean billing comes from clean data. Most agencies struggle at billing because they only realise what they should have tracked when the client asks for it.
Per client per month, you need:
Raw ad spend per platform. Facebook, Google, TikTok, LinkedIn – whichever applies. Pulled directly from each platform with date ranges matching the billing period.
Card transaction record per platform. Every charge that hit your card for that client’s ad spend, with date, amount, and currency.
Currency conversion details. If the client’s ad account bills in USD but your card is in GBP, the FX rate at the time of each transaction matters. Otherwise small discrepancies between platform totals and card totals will surface every month.
Management fees or markup percentage. Locked in writing, ideally in the contract. Do not improvise.
Approved budget for the month. What you and the client agreed in advance. Differences between actual and budgeted spend need explanation in the invoice.
Any pre-approved additional spend. If the client approved an extra £2,000 mid-month, that needs to be documented and reflected in the invoice.
Reconciliation notes for unusual transactions. If a charge was reversed, a credit was issued by the platform, or an unusual fee was applied, note it. Clients will ask.
Tracking this manually in spreadsheets works at 2–3 clients. At 10+ clients it becomes a part-time job for someone. The infrastructure question is how to make this tracking automatic.
The single biggest leak: untracked FX cost
FX is the most common silent margin leak in agency billing. The mechanic is simple: your agency holds funds in GBP (or EUR, or USD) but pays ad platforms in other currencies. Every conversion eats 2–4% if you are using a standard business bank or a shared corporate card.
For an agency running £400,000 of cross-border ad spend per year, that is £8,000–£16,000 disappearing into FX markup that the client either does not see (if it is hidden in your invoice) or that you absorb as agency cost.
There are three ways agencies handle this:
Option A: Absorb the FX cost as agency expense. Simple but it eats your margin. For low-margin engagements this can wipe out profitability.
Option B: Pass FX cost to client transparently. Charge the client the exact FX-converted amount with documentation. Honest, but creates friction at billing – clients see different numbers in the platform vs the invoice and may push back.
Option C: Eliminate FX cost using multi-currency cards. Hold currency-matched cards per client. A French client’s Google Ads card is in EUR; a US client’s Facebook Ads card is in USD. The cost is at the mid-market rate (when you fund the cards) rather than 2–4% per transaction.
Option C is the operational fix. It is also what most agencies that have scaled past 10 international clients have moved to. Providers like Wallester offer multi-currency virtual cards on the free plan – agencies hold balances in EUR, USD, GBP, and others, and the FX cost is paid once at funding rather than on every transaction.
For an agency with significant international exposure, the FX savings alone can be more than the entire monthly cost of a paid spend management platform.
The mechanics of a clean monthly invoice
Here is what an invoice for ad spend should actually contain, in plain order.
Header section. Client name, billing period (e.g. “May 2026”), invoice number, payment due date, payment terms (e.g. “Net 30”).
Service summary. A one-line description of what the invoice covers (e.g. “May 2026 – Facebook, Google, and TikTok ad spend management”).
Ad spend by platform. A simple line-by-line breakdown:
- Facebook Ads: £8,420
- Google Ads: £5,950
- TikTok Ads: £2,180
- Total ad spend: £16,550
Currency conversion (if applicable). If you paid in foreign currency and are invoicing in another, show the conversion clearly:
- USD ad spend: $7,250 (Facebook + Google)
- Exchange rate applied: 1 GBP = 1.25 USD (mid-market, date of invoice)
- GBP equivalent: £5,800
Markup or management fee. Whatever was agreed:
- Management fee: £1,500
- OR Markup at 15%: £2,482.50
Total amount due. Clear and bold.
Supporting evidence (attached or available on request). Card transaction reports, platform exports, FX conversion details. Most clients do not ask for this, but the ones who do will judge your professionalism by how quickly you can produce it.
The simpler and more transparent the invoice, the fewer questions you get and the faster you get paid. Complex invoices with hidden line items or unexplained charges generate disputes that cost you time and goodwill.
How to evidence ad spend cleanly
When a client questions a £247 discrepancy between what the platform shows and what you invoiced, your ability to evidence the charge in 60 seconds is what separates a professional agency from one that loses the client.
The evidence trail should be ready before the client asks. The structure:
Per client, per month, you should be able to produce:
- Card transaction report showing every charge that hit the card for that client’s ad accounts, with timestamp and amount.
- Platform-side export showing the matching ad spend totals from Facebook, Google, etc.
- A simple reconciliation showing how the two numbers connect (e.g. “platform total £8,420; card total £8,425; difference £5 = late fee correction on 14 May”).
The reconciliation is the key. Without it, you are asking the client to trust that two unrelated numbers are connected. With it, you are showing them the bridge.
Virtual cards make this easier by design. When each client’s ad spend runs through a dedicated card, the card transaction report IS the per-client report. There is no reconciliation step needed – the data is pre-attributed. You can pull the card’s monthly statement and have a complete record of every charge for that client in 30 seconds.
When everything runs through one shared corporate card, you need to manually filter by transaction description, currency, date range, and then match it against platform exports. That is a 30-minute exercise per client, every month.
Common billing mistakes that cost agencies money
A handful of patterns show up repeatedly in agency billing failures. Avoid these.
Inheriting old contract terms when scaling. A client signs at 20% markup when you have 2 employees. Three years later you have 20 employees and the same client is still at 20% markup, but your operational cost per client has tripled. Review markups annually and adjust at contract renewal.
Not capping spend per client per month. Without a hard cap on the card, a campaign overrun can result in the agency carrying an extra £5,000 of unauthorised spend that the client refuses to pay. With virtual cards, the card stops at the limit. No card-level cap means no protection.
Inconsistent invoice templates across clients. Different formats, different markups, different fee structures – and nothing standardised. Adding a new client should mean copying a template, not reinventing the invoice.
Not pricing in FX exposure. Agencies serving international clients often quote pricing based on domestic FX assumptions, then lose 2–4% on every transaction. Either price FX into your management fee or use multi-currency cards to eliminate the cost.
Late invoicing. Invoices sent on the 15th of the following month vs the 1st delay cash by two weeks. Multiply by 20 clients and the working capital impact is significant.
Not having pre-agreed reconciliation rules. What happens if Facebook applies a £200 credit for a billing error? Does it offset next month’s invoice or get returned to the client? Agreeing this in writing in advance prevents disputes.
Tracking ad spend in one place, billing in another. When the ad spend tracking lives in a Google Sheet and invoicing lives in QuickBooks, every billing cycle is a copy-paste exercise. Direct integrations between your card platform and accounting software remove this step entirely.
Surprises at month-end. If the first time you look at total spend per client is when you sit down to invoice, it is too late. Real-time visibility throughout the month prevents end-of-month panic.
How virtual cards specifically fix agency billing
The reason agencies are moving to virtual cards is rarely the cards themselves. It is the billing implications. Here is what specifically changes when you switch.
Per-client attribution is automatic
Each client has their own card per ad platform. Every transaction is pre-attributed to a specific client. The card’s monthly statement IS the per-client report. There is no manual reconciliation step.
FX is eliminated (or made transparent)
With multi-currency virtual cards, each card is denominated in the same currency as the client’s ad account. The FX cost is paid once at the agency level when funding cards, not 2–4% on every transaction.
Spending limits become billing protection
Set the card limit at the agreed monthly budget. If a campaign spirals, the card stops. The client never sees an unauthorised charge on their invoice. You never carry a £4,000 dispute into next month.
Real-time visibility means no end-of-month surprises
Every transaction shows up the moment it happens. By the 28th of the month, you already know what every client’s invoice will look like. There is no scramble on the 1st.
Audit-ready evidence on demand
A client questions a charge? Pull the card’s transaction report in 30 seconds. The transaction is already labelled with the client, the platform, the date, and the amount. The reconciliation is built in.
Onboarding new clients gets faster
Adding a new client means adding a new card with the right limit and currency. Five minutes. No “let me figure out how to bill this new account” conversation.
Setting up clean billing infrastructure: a 30-day plan
Going from messy billing to clean billing takes about 30 days if you do it methodically. Here is the rollout sequence.
Week 1: Audit current state
List every active client, their billing model, monthly average ad spend, and current invoice template. Identify clients where billing is causing friction (late payments, frequent disputes, manual reconciliation pain). These are your priority targets.
Week 2: Choose infrastructure
Pick a virtual card provider that supports your client volume, currency needs, and accounting integrations. For European agencies, providers like Wallester offer up to 300 free virtual cards with multi-currency support – typically enough for most agency portfolios. Onboarding takes 24–72 hours.
Week 3: Migrate three clients in parallel
Don’t migrate everyone at once. Start with three clients – ideally one easy (small, stable), one complex (international, multi-platform), and one problematic (frequent billing issues). Issue virtual cards, run them in parallel with old payment methods for one billing cycle, then validate that the new system produces cleaner data.
Week 4: Roll out to remaining clients and update invoices
Once Week 3 validates, migrate remaining clients in batches of 5. Update your invoice template to use the new card-attributed data. Add reconciliation evidence as standard (so when a client asks, it’s already there).
Ongoing: Monthly review
After the first month on the new system, review what went well and what didn’t. Common adjustments: card limits set too tight (causing campaign pauses), inconsistent card naming making reports messy, or one client preferring the old invoice format and needing a custom template.
By month two, billing should take 50–70% less time per client than it did before, and disputes should largely disappear.
How do agencies typically bill clients for ad spend?
What is a fair markup on ad spend?
Should I pass FX costs to clients or absorb them?
How do I evidence ad spend to a sceptical client?
What is the difference between markup and management fee billing?
When should an agency invoice clients for ad spend?
Can clients see the actual ad spend on the platforms?
What is the cleanest way to bill for cross-border ad spend?
How do I prevent ad campaigns from overspending a client’s budget?
How long does it take to set up clean billing infrastructure for an agency?
Final thoughts
Client billing is the part of agency operations that gets the least strategic attention and quietly costs the most margin. Most agency owners optimise their delivery, their team, and their pricing – but leave billing infrastructure to whoever has time to manage QuickBooks that month.
The agencies winning in 2026 treat billing as a competitive advantage. Cleaner billing means fewer disputes, faster cash flow, lower finance team costs, and happier clients who actually want to work with you long-term. Most of the difference comes from three things: clean per-client attribution, transparent FX handling, and audit-ready evidence on demand. Virtual cards solve all three structurally rather than working around them.
If your agency is still running multiple clients through one or two shared cards, your billing process is slower, less accurate, and more error-prone than it needs to be. The fix is not more spreadsheets. It is infrastructure that produces clean data by default.


