When and How to Round a Currency Conversion

A worked explanation of when and how to round a currency conversion, including the key limitation and a checkable example.

When and How to Round a Currency Conversion Explained

You are at an ATM in Mexico City. The screen shows 500 USD converted to pesos, then a 3% fee, then a final amount. Before you confirm, you need to know exactly when and how to round a currency conversion, because rounding at the wrong step changes the cost. The rule is simple but most travellers get it wrong: round only the final payment amount, not the exchange step or the fee step.

Converting currency requires two decimal places for both MXN and USD (ISO 4217 standard). The minor unit for both is 1/100, one centavo and one cent. Rounding before the final payment introduces a systematic bias into the fee calculation. A 3% fee applied to a truncated base produces a different result than the same fee applied to the full-precision amount. For a single transaction the difference is tiny, but across a year of ATM visits and credit card charges, it adds up to money you lose without ever seeing it.

A Worked Example

Work through one concrete conversion with real numbers. You have 500.00 USD to convert to MXN at a rate of 20.1234 MXN per USD. This rate is higher than the mid-market rate because the ATM operator has added a spread, the bank's retail rate, not the interbank rate you see on Google. The ATM also charges a 3% fee on the converted amount.

Step 1: the exchange step. 500.00 USD multiplied by 20.1234 equals 10,061.70 MXN if you round to two decimal places at this point. But keep the full precision: 500.00 × 20.1234 = 10,061.70 (the multiplication itself yields exactly two decimal places because both inputs have two, so no rounding is actually needed here). The problem arises when the exchange rate has more than two decimal places, for example, a rate of 20.12345 would produce 10,061.725, and rounding that to 10,061.73 MXN before applying the fee changes the fee amount.

Step 2: the fee step. A 3% fee on 10,061.70 MXN is 301.85 MXN (10,061.70 × 0.03 = 301.851, which rounds to 301.85). If you had rounded at the exchange step to 10,061.70, the fee is still 301.85. But if the exchange step had produced 10,061.725 and you rounded that to 10,061.73, the fee becomes 301.85 (10,061.73 × 0.03 = 301.8519, rounds to 301.85). The difference is 0.0004 MXN, negligible for one transaction.

Calculation Steps

The calculation reveals where the failure mode lives. If you round the converted amount to a whole number (zero decimal places) before applying the fee, the loss becomes material. Convert 500 USD to MXN at 20.1234 and round to 10,062 MXN. The 3% fee on 10,062 is 301.86 MXN, one centavo more than the fee on 10,061.70. That is a rounding error of 0.01 MXN per transaction. For a series of small withdrawals, say 20 withdrawals of 50 USD each, the cumulative error reaches 0.20 MXN.

Financial institutions avoid this by retaining four to six decimal places in intermediate calculations. They round only the final payment amount to two decimal places. That is the correct procedure for any consumer in the United States converting pesos to dollars or dollars to pesos. The CFPB Regulation E (12 CFR 1005) requires remittance transfer disclosures to show the exchange rate and fees, but it does not specify rounding rules. Industry practice follows ISO 4217, which defines the minor unit for MXN and USD as 1/100.

The Failure Case That Proves the Rule

Here is the failure case that proves the rule. You are sending 500 USD to a recipient in Mexico through a money-transfer service that advertises a low fee. The service rounds the converted amount to the nearest whole peso before applying a 3% fee. Convert at 20.1234: 500 × 20.1234 = 10,061.70 MXN. The service rounds to 10,062 MXN. The fee is 301.86 MXN. The final payment is 9,760.14 MXN. If the service had not rounded at the exchange step, the fee would be 301.85 MXN and the final payment 9,759.85 MXN. You lose 0.29 MXN, nothing for one transaction, but the service processes millions of transactions. That rounding at the exchange step is a hidden profit center.

The same failure applies to Dynamic Currency Conversion (DCC) at a POS terminal. The merchant converts your 500 USD purchase to pesos at a poor rate, rounds the peso amount to zero decimal places, then applies a DCC markup of 5%. The result is a higher effective exchange rate than if the conversion used full precision throughout. Decline DCC every time. Let the network rate apply, then your bank applies its foreign transaction fee (if any) on the final amount.

Why the Method Works

The question, should converted pesos be rounded at the exchange step, fee step, or final payment step, has one answer: the final payment step. This applies to every peso currency in the entity space: Mexican peso (MXN), Argentine peso (ARS), Chilean peso (CLP), Colombian peso (COP), and Philippine peso (PHP). Each uses a two-decimal minor unit, and each is subject to the same rounding standard under ISO 4217.

For Argentine peso conversions, the situation is more complex because the card rate includes the PAIS tax (30%) and an income tax withholding (35%). The exchange step uses the official rate published by BCRA, then the tax percentages are applied as fees. Rounding at the exchange step before applying the combined 65% markup produces a larger absolute error than for a 3% fee. A 500 USD conversion at the official ARS rate of 350 ARS/USD yields 175,000 ARS. Rounding that to 175,000 (no change here because it is already whole) is fine. But if the rate were 350.1234 ARS/USD, the converted amount is 175,061.70 ARS. Rounding to 175,062 ARS before applying the 65% tax changes the tax amount by 0.30 ARS, still small, but the principle holds.

For Colombian peso conversions, the TRM (Tasa Representativa del Mercado) is the official daily rate. Use it as the exchange rate. Apply any fee (ATM fee, bank spread, or remittance transfer fee) on the full-precision amount. Round only the final payment to two decimal places. The same process applies for Chilean peso conversions using the dólar observado and Philippine peso conversions using the BSP reference rate.

What to Do at the ATM

At an ATM in Mexico City, the screen shows the amount in pesos before you confirm. The ATM operator must disclose the fee (Banxico Circular 22/2010). The spread is not shown, that is one of the authority gaps. You cannot see the ATM operator's markup on the network rate. The only way to know the effective exchange rate is to calculate it after the transaction using the receipt. The receipt shows the peso amount, the USD amount charged to your account, and the fee. Divide the peso amount by the USD amount to get the effective rate. Compare that to the mid-market rate at the time of the transaction to find the total cost (spread plus fee).

For credit card transactions, the network rate (Visa or Mastercard) is the base. Your bank may add a spread of 0.5-2% if it uses its own rate instead of the network rate. The foreign transaction fee (if your card has one) is 3% on top of that. The rounding calculator, the point where you need to compute the final cost, becomes necessary when comparing two cards: one with no foreign transaction fee but a bad bank rate, versus one with a 3% fee but a good network rate. Run the numbers on the full-precision amounts, then round the final payment only.

Common Questions

Should converted pesos be rounded at the exchange step, fee step, or final payment step?

Round only the final payment step. The exchange step and fee step should retain full precision (typically four to six decimal places in financial systems). Rounding at the exchange step before applying a percentage fee introduces a systematic bias that changes the fee amount. For consumer transactions in MXN, USD, ARS, CLP, COP, and PHP, final payment rounding is to two decimal places (the minor unit of each currency).

What happens if I round the converted amount to a whole number before the fee is applied?

Rounding to zero decimal places before applying a fee can cause a loss of up to 0.99 MXN per transaction. For a 500 USD conversion at 20.1234 MXN/USD with a 3% fee, rounding to 10,062 MXN instead of 10,061.70 MXN changes the fee by 0.01 MXN. For small amounts or high-volume processing, the cumulative loss becomes material.

Does the rounding rule change for currencies with three decimal places?

Yes. ISO 4217 defines the minor unit exponent for each currency. Kuwaiti dinar (KWD) uses three decimal places. If you convert pesos to KWD, the final payment must round to three decimal places. The rule depends on the target currency's minor unit, not the source currency. For all peso-to-USD or USD-to-peso conversions in this explanation, the target currency uses two decimal places.

Why do banks and currency services round at intermediate steps if it causes errors?

Banks retain four to six decimal places in intermediate calculations to avoid cumulative rounding errors. The rounding you see on a receipt is the final payment amount only. Services that round at the exchange step are either poorly designed or deliberately profiting from the rounding bias. The CFPB does not specify rounding rules in Regulation E, so industry practice follows ISO 4217, which banks generally adhere to.

How do I check if a money-transfer service is rounding at the wrong step?

Compare the service's quoted amount to your own calculation using full precision. Convert your USD amount at the service's stated exchange rate, calculate the fee on the full-precision amount, then round the final payment to two decimal places. If the service's final amount differs from yours by more than one centavo or cent, the service is rounding at the wrong step. Request the service's disclosure under CFPB rules, which must show the exchange rate and fees before you confirm the transfer.