The invoice said $9,000. The credit says ₹770,000. Somewhere between your client’s account and yours, a middleman took a cut — and unless you go looking, you will never find out how much, because most of it was never written down anywhere.
A cross-border payment loses money in two places: the fee they disclose, and the margin they build into the exchange rate. Only the first appears on a statement. To find the second, compare what landed against the mid-market rate on the day it landed. Under 1% all-in is competitive, 1–2% is ordinary, past 3% is worth changing route. Measure it on every payment, not once — the annual number is the one that makes the decision for you.
The half you’re told about, and the half you’re not
Ask most freelancers what their bank charges on an international payment and they’ll quote a flat fee: a wire charge, a handling fee, a percentage on the payout. That number is real, and it’s usually the smaller half.
The other half is the exchange rate. Whoever converted your money didn’t use the mid-market rate — the midpoint between what buyers and sellers are quoting, the rate you’d see on a search engine. They used the mid-market rate with a margin baked in, and kept the difference. That margin never appears as a line item, has no name on your statement, and can quietly be several times the fee they showed you.
This is why “my bank only charges $12 a transfer” is almost never the whole story. The $12 is the part they printed.
Work out your own number
You need three things: what you billed, what actually landed, and the date it landed.
Take that $9,000 invoice, paid on a day when the mid-market rate was 1 USD = 87.20 INR.
- At mid-market, you should have received: 9,000 × 87.20 = ₹784,800
- What actually landed: ₹770,000
- The cut: ₹14,800, or 1.9% of the payment
- The rate you effectively got: 770,000 ÷ 9,000 = 85.56 — not 87.20
Now add the fee they disclosed. Say the transfer advice showed $12. That’s about ₹1,046 — which means roughly ₹13,750, or 1.75%, was margin hidden in the rate. The visible fee was 7% of what the payment actually cost you.
If you’d rather not do this by hand, our forex markup calculator does exactly this arithmetic — enter what you billed, what landed and the date, and it pulls the mid-market rate for that day and splits the cost for you. For the rate on its own, there’s the historical currency converter.
Why the mid-market rate is the right yardstick
You need something to measure against, and the honest benchmark is the mid-market rate on the day the money moved. We use European Central Bank reference rates for this — published every working day, freely available, and not owned by anyone selling you a transfer.
Two caveats, both worth holding onto.
The ECB rate is a daily fix, not the rate a provider dealt at during the day. Currencies move between the fix and the moment of conversion, so a small gap in either direction is timing, not skimming. We treat anything inside ±0.3% as even — a provider who lands you there isn’t taking a margin worth arguing about.
And the money may have been converted on a different day than the one it appeared in your account. A wire that sits in a correspondent bank over a weekend can convert on Friday and land on Tuesday. Again: a small difference is process, not theft. It’s the consistent 2, 3, 4% that tells you something.
Reference rates are a benchmark, not a rate you could have transacted at yourself. Nobody gives you mid-market for free — a payment provider has real costs. The question isn’t whether they took something, it’s whether what they took is reasonable for the route.
What “reasonable” looks like
As a rough guide, on a mid-sized freelance payment:
- Inside ±0.3% — effectively mid-market. Nothing to see.
- Under 1% all-in — competitive. This is what a good route looks like.
- 1–2% — the everyday cost of moving money across a border. Worth comparing alternatives, not worth losing sleep over.
- 2–3% — steep. On a small payment a flat fee explains it; on a large one it’s a rate margin.
- Over 3% — a lot to lose in transit. Unless the payment was small, this route is costing you real money.
Two things distort the percentage, and both are normal. On a small payment, a flat fee dominates: a $20 wire charge on a $300 invoice is 6.7% and no amount of shopping around fixes that — batching your invoicing does. And on a volatile day, a percentage point can be movement rather than margin. Neither is a reason to ignore the number; both are reasons not to draw a conclusion from one payment.
The number that actually changes your mind
Here’s the thing about a single transfer: 1.9% sounds like a rounding error. ₹14,800 sounds like an inconvenience. Neither is enough to make anyone switch banks on a Tuesday afternoon.
Bill that same client every month and it’s ₹177,600 a year. That’s a laptop, a month of runway, or a decent chunk of a holiday, handed over in pieces small enough that none of them ever prompted a decision.
This is the real argument for measuring every payment rather than spot-checking one: not because any single number is shocking, but because the annual total is, and you can’t see it until you’ve been recording the small ones.
What to do once you know
The fix is almost always structural, not clever:
- Change the route. The difference between the most and least expensive way of receiving the same payment is routinely 2–3% — often the single biggest available improvement to your margin, and it takes an afternoon to set up.
- Ask who pays the charges. On a bank wire, the fee instruction decides whether intermediary deductions come out of your money or theirs. Ask for the sender to cover them on large invoices.
- Bill less often, in larger amounts. Where a flat fee dominates, four invoices a year cost a quarter of what sixteen do.
- Price it in. If a client insists on a route that costs you 3%, that’s a cost of serving them. Rate conversations are easier when you can name the number — see how to raise your rates with existing clients.
- Hold the currency where it makes sense. If you have costs in the currency you’re paid in, converting every payment on arrival is a cost you’re choosing.
Record it, don’t estimate it
Guesswork is what got the money taken quietly in the first place. The habit worth building is small: every time you mark an invoice paid, write down what actually arrived and which route it came through.
Billable now does this as part of getting paid. When you mark an invoice paid, it asks what landed, on what date, through which route, and any fee the provider disclosed — prefilled with what the invoice was worth at that day’s mid-market rate, so accepting it unchanged records a clean payment and anything less is the cut. You see the split before you save it, the invoice keeps a card showing what was kept and what was hidden in the rate, and your dashboard totals it across the year with a per-route breakdown, steepest first.
Your revenue totals don’t move — what you billed is still what you billed. The cost sits in its own section, where it can make the case for changing something. That’s what transfers cost, in the same place you already track everything else.
The money was always leaving. Now you get to see it go — and decide whether to let it.