Exchange rates and hidden FX markups
What the mid-market rate is, how TTS/TTB and spreads work at Japanese banks, and how to calculate a provider’s exchange-rate markup so the hidden cost stops being hidden.
The mid-market rate is the neutral midpoint of wholesale prices; banks and providers add a margin (a spread) to it, and you can measure that markup as |provider rate ÷ mid-market rate − 1| × 100.
Key points
- The mid-market (interbank) rate is the midpoint between wholesale bid and offer — a benchmark, not a guaranteed retail rate.
- Japanese banks publish a TTS rate when you buy foreign currency with yen and a TTB rate when you sell it back; the gap from the mid-rate is a cost.
- Markup % = |provider rate ÷ mid-market rate − 1| × 100, applied with a consistent rate orientation.
- A published margin such as ¥1 per USD is small on a small transfer but scales directly with the amount.
Mid-market rate: the benchmark
The mid-market rate is the midpoint between the wholesale market’s bid and offer prices. It is the fairest neutral benchmark for comparison, which is why rate sites and Wise quote it. It is not, however, a guaranteed executable retail rate.
Official reference rates behave the same way. On 31 July 2026, the European Central Bank’s information-only reference rates implied roughly ¥160.235 per USD. The ECB stresses these are benchmarks, not transaction rates — useful for calculation, not for settlement.
TTS, TTB, and the spread
Japanese banks commonly publish a TTS rate (対顧客電信売相場) for customers buying foreign currency with yen, and a TTB rate (対顧客電信買相場) for customers selling foreign currency back to yen. The distance between the mid-market rate and the customer rate is an exchange-rate cost, and the TTS–TTB gap is the round-trip spread.
Banks often state the margin per unit. SMBC, for example, publishes an indicated USD exchange margin of about ¥1 per dollar for its personal online foreign-remittance service, with different listed margins for other currencies such as around ¥1.40 per euro.
Calculating the markup
Markup % = |provider rate ÷ mid-market rate − 1| × 100. Orient the rates consistently. When you compare JPY per foreign-currency unit, a higher JPY rate paid by the sender is worse; when you compare foreign currency received per JPY, a lower number is worse.
Worked example: if the mid-rate is ¥160.235 per USD and your bank’s customer rate is ¥161.235 per USD (a ¥1 margin), the markup is |161.235 ÷ 160.235 − 1| × 100 ≈ 0.62%. On ¥300,000 that margin alone is about ¥1,870, before any fixed transfer fee.
Who this is for
- Anyone puzzled why the bank’s rate differs from Google
- People sizing up the true cost of a conversion
What this is not
- Readers seeking a rate forecast or “best time to convert” prediction
- Reference and mid-market rates are benchmarks; your executable rate is set at the moment of the transaction and may differ.