FX markup
FX markup is the margin a processor, bank or payout partner adds to the exchange rate when it converts a payment from one currency to another. It is usually agreed as a percentage above a named reference rate, and since it is built into the rate applied, it rarely appears as a line of its own on an invoice.
How FX markup is calculated
FX markup is the gap between the rate you were given and a reference rate, expressed as a percentage of the reference rate. A well-drafted contract names the reference source, the time the rate is taken, the spread allowed and the currency pairs covered. Without those four details, the markup cannot be checked.
The cost is often hard to see. The Financial Stability Board's 2025 progress report on cross-border payments records only "partial transparency on fees, FX spreads" (FSB, October 2025). For consumer remittances, where FX margin is a large part of the price, the World Bank put the global average cost of sending $200 at 6.49% in early 2025 (World Bank Remittance Prices Worldwide). A business converting settlement funds each day pays its markup on every conversion.
Where FX markup goes wrong on a bill
FX markup goes wrong when the spread applied is wider than the contract allows, or when a payment is converted twice. Double conversion happens where the transaction, settlement and billing currencies differ, and both the scheme and the processor convert the same amount, each taking a margin.
Timing causes quieter errors. A contract may fix the reference rate at a set hour, while billing uses a rate from later in the day. Refunds may be converted back at a different rate from the original sale, so the business loses the spread twice. Where rates are agreed per corridor or per partner, a new partner can be onboarded at a standard spread that nobody compares with the negotiated one. None of these shows as a separate charge, which is why FX markup is seldom checked.
How to check FX markup
To check FX markup, take the rate applied to each conversion, find the contracted reference rate for the same moment, and calculate the implied spread. Compare it with the spread in your agreement. Then look for amounts converted more than once, by tracing each payment from transaction currency through to settlement currency.
You need the rate or both amounts for each conversion, the timestamp, and the reference source your contract names. Group results by counterparty and currency pair, since a spread that is right for one pair can be wrong for another. FeeVerify reads the FX terms in your processing agreements into rules and recalculates the conversions in your transaction data against them.
Worked example
A PSP converts €2,000,000 of settlement funds to sterling. The reference rate at the contracted time is 0.8500 and the agreed spread is 0.40%, so the expected rate is 0.8466. The processor applies 0.8432, a spread of 0.80%. The rates and amounts are synthetic.
| Line | Rate | Spread | Sterling received |
|---|---|---|---|
| Expected under the contract | 0.8466 | 0.40% | £1,693,200 |
| Applied by the processor | 0.8432 | 0.80% | £1,686,400 |
| Variance | 0.40 points | £6,800 |
No invoice line shows the £6,800. It appears only when the rate is recalculated from the contract, and on daily conversions of this size the same gap would recur on every settlement. Synthetic figures for illustration.
Related terms
Sources: FSB, G20 cross-border payments progress report, October 2025; World Bank, Remittance Prices Worldwide.
Start with one month of your own data.
A pilot begins with the agreements that protect both sides, then your contracts and one month of settlement data, scoped with a payments specialist on the first call. The 30-day diagnostic re-costs every transaction against them and shows each variance with its clause, before any recurring fee.