How to Calculate the Total Cost of an International Transfer

When you send money internationally, the number shown on the checkout screen is almost never the real cost. Providers advertise low fees — sometimes even $0 — while quietly building their profit into the exchange rate. The result: you think you're paying $5, but you're actually losing $30 or more on a $1,000 transfer.

The World Bank tracks the true all-in cost of remittances and publishes it quarterly. As of 2024, the global average is 6.2% of the transfer amount — nearly seven times higher than the UN's target of under 3% by 2030. The gap between what people think they pay and what they actually pay is a multi-billion-dollar problem.

This guide gives you a simple, repeatable formula for calculating the true cost of any international transfer — whether you're using a bank, a fintech like Wise or Remitly, or a crypto rail like USDC on Stellar. Once you understand the three components of transfer cost, you'll never be misled by a headline fee again.

The Three Components of Transfer Cost

Every international transfer has up to three layers of cost. You need to add all three to get the true all-in cost. Most providers only show you one.

**1. The upfront fee** — This is the dollar amount charged to initiate the transfer. It might be a flat fee ($5, $15, $35) or a percentage of the amount (0.5%, 1.5%). This is the number providers advertise most prominently because it's easy to compare.

**2. The FX markup** — This is the difference between the real mid-market exchange rate (what you see on Google or XE.com) and the rate the provider actually gives you. If USD/MXN is 17.50 and your provider gives you 17.00, they've taken a 2.9% cut before you see a single peso. This is where most of the cost hides.

**3. Intermediary and recipient fees** — For bank wires, your transfer may pass through one or more correspondent banks en route to the destination. Each one can deduct $10-25 from the principal. The recipient bank may also charge a receiving fee of $5-20, which is deducted from what the recipient actually gets. These fees are almost never disclosed upfront.

6.2% — Average global cost to send $200 internationally (World Bank Q4 2024) (World Bank Remittance Prices Worldwide)

1. Find the Mid-Market Exchange Rate

The mid-market rate — sometimes called the interbank rate or the real exchange rate — is the midpoint between global buy and sell prices for a currency pair. It is the fairest benchmark for what your currency is actually worth.

To find the mid-market rate: search Google for the currency pair (e.g., 'USD to INR'), check XE.com, or use a financial data provider like Reuters. This is your baseline. Any rate worse than this is costing you money.

Example: If Google shows USD/INR = 83.50 and your bank is offering 81.20, the markup is (83.50 - 81.20) / 83.50 = 2.75%. On a $1,000 transfer, that's $27.50 in hidden cost — before any stated fees.

Tip: Always check the mid-market rate immediately before sending. Exchange rates move throughout the day. Take a screenshot so you have a reference point when calculating the provider's markup.

2. Calculate the FX Markup as a Percentage

Use this formula to calculate the FX markup any provider is charging you:

**FX Markup % = (Mid-Market Rate − Provider Rate) ÷ Mid-Market Rate × 100**

Example: Mid-market USD/PHP = 56.80. Remitly offers 55.40.

Markup = (56.80 − 55.40) ÷ 56.80 × 100 = 2.46%

On a $500 transfer, this means the recipient gets PHP 31,100 instead of PHP 31,900 — a difference of PHP 800, or roughly $14 that disappeared silently into the provider's margin.

Some providers, like Wise, pass the mid-market rate directly and charge a transparent upfront fee instead. This makes their cost structure honest and easy to compare. Most banks and traditional remittance companies do the opposite: advertise low or zero fees while taking their margin on the exchange rate.

3. Add All Fees in Dollar Terms

Convert every fee to a dollar amount so you can add them together. Include:

— **Sending fee**: whatever the provider charges you to initiate (flat or percentage)

— **FX markup in dollars**: Transfer Amount × FX Markup % (from Step 2)

— **Intermediary fees**: typically $0 for fintechs and crypto rails, $10-25 per hop for SWIFT bank wires

— **Recipient bank receiving fee**: ask the recipient's bank directly; typically $5-20 for bank wires, $0 for mobile wallets and cash pickup

Example on a $1,000 bank wire to Nigeria:

Sending fee: $40 flat | FX markup: $30 (3%) | Intermediary fee: $15 | Recipient bank fee: $10

**Total cost: $95 — 9.5% of the transfer amount**

Tip: When comparing providers, always calculate cost as a percentage of the transfer amount, not just the dollar fee. A $10 fee on a $100 transfer (10%) is far worse than a $10 fee on a $1,000 transfer (1%).

4. Calculate What the Recipient Actually Receives

The clearest measure of transfer cost is the recipient amount. Work backwards from what lands in the recipient's account:

**Recipient Amount = (Send Amount − Upfront Fee − Intermediary Fees) × Provider Rate**

Then subtract any recipient bank receiving fee.

Example: You send $1,000 via Wise to India. Wise fee: $6.50. No intermediary fees. Wise rate: 83.48 INR/USD (effectively mid-market).

Recipient gets: (1,000 − 6.50) × 83.48 = 993.50 × 83.48 = **INR 82,920**

Compare to a bank wire with $40 fee, 2.5% markup (rate: 81.40), and $15 intermediary fee:

Recipient gets: (1,000 − 40 − 15) × 81.40 = 945 × 81.40 = **INR 76,923**

The difference is INR 5,997 — nearly $72 more value delivered by Wise on the same $1,000 transfer.

5. Express Total Cost as a Percentage (All-In Cost %)

Once you know the dollar value of total costs, express it as a percentage of the send amount. This is the metric the World Bank uses in its Remittance Prices Worldwide database, and it's the most useful single number for comparison:

**All-In Cost % = (Total Fees in USD ÷ Send Amount) × 100**

Or equivalently: **All-In Cost % = ((Send Amount − Recipient Amount in USD) ÷ Send Amount) × 100**

To convert recipient amount back to USD for comparison, divide by the mid-market rate.

Using the bank wire example above: Recipient received INR 76,923 ÷ 83.50 mid-market = $921 equivalent. Cost = $1,000 − $921 = $79. All-in cost % = 7.9%.

Using the Wise example: INR 82,920 ÷ 83.50 = $993.05 equivalent. Cost = $6.95. All-in cost % = 0.7%.

Same $1,000, same destination — one costs 11× more than the other.

All-In Cost Comparison: $1,000 USD to India (INR)

ProviderUpfront FeeFX MarkupIntermediary FeeRecipient Gets (approx.)All-In Cost %
Bank Wire (SWIFT)$402.5% ($25)$15INR ~76,900~7.9%
Western Union (online)$52.8% ($28)$0INR ~79,700~3.3%
Remitly (Express)$3.991.5% ($15)$0INR ~81,600~1.9%
Wise$6.500% (mid-market)$0INR ~82,900~0.7%
USDC on Stellar (via Coinbase + exchange)$2–4~0.2% ($2)$0INR ~83,200~0.4–0.6%

Zero-Fee Offers Are Almost Always a Lie

When a provider advertises '$0 fees' or 'free transfers,' check the exchange rate immediately. The fee is almost always hidden inside the FX markup. A $0 fee with a 3% FX markup on a $1,000 transfer costs you $30 — six times more than a transparent $5 fee with a 0% markup. Always run the full calculation before trusting a headline offer.

Why Crypto Rails Show a Near-Zero All-In Cost

Stablecoin remittances — sending USDC or USDT over Stellar, Tron, Solana, or Polygon — eliminate most of the cost stack. There are no intermediary banks, no correspondent fees, and no FX markup on the blockchain transfer itself.

The cost is concentrated in two places: the on-ramp (buying USDC with USD on an exchange like Coinbase or Kraken) and the off-ramp (selling USDC for local currency on a local exchange like CoinDCX in India, Bitso in Mexico, or Luno in South Africa). Each leg typically costs 0.1–0.5% plus a withdrawal fee.

The blockchain transfer itself costs pennies — under $0.01 on Stellar or Tron regardless of the amount sent. Contrast this with a SWIFT wire where the fixed $40–65 fee penalizes small transfers most severely.

The practical implication: for transfers above $500, USDC on Stellar or Tron typically delivers an all-in cost under 1%, often 0.3–0.6%. For transfers above $5,000, the percentage drops further because the fixed on-ramp/off-ramp fees become a smaller share of the total amount.

< $0.01 — Median transaction fee for USDC transfer on Stellar network (Stellar.org network data, 2025)

The Annual Cost of a Regular Transfer

For migrants and families who send money regularly, the all-in cost compounds significantly over a year. A small difference in cost percentage adds up to real money.

Example: You send $500/month to family in the Philippines. Here's the annual cost difference across methods:

Bank wire at 8% all-in: $500 × 0.08 × 12 = **$480/year in fees**

Wise at 0.9% all-in: $500 × 0.009 × 12 = **$54/year in fees**

USDC on Stellar at 0.5% all-in: $500 × 0.005 × 12 = **$30/year in fees**

Switching from a bank wire to a stablecoin rail saves $450 per year on a $500/month habit. That's real money — nearly a full month's transfer amount returned to your family instead of handed to intermediaries.

Use RemitRoutes to model your specific corridor and frequency. The annual savings calculator on the compare page shows this breakdown automatically.

Use the Recipient Amount as Your Single Benchmark

When comparing providers, ignore everything except one number: how much local currency does the recipient get? Get a quote from each provider for the exact same send amount and destination, then convert each recipient amount back to your send currency using the mid-market rate. The provider delivering the highest recipient amount equivalent is objectively cheapest — no formula needed.

Common Mistakes When Estimating Transfer Cost

**Mistake 1: Comparing fees without checking the exchange rate.** A provider with a $0 fee and a 3% FX markup is more expensive than one with a $10 fee and a 0% markup for amounts above ~$333. Always calculate both together.

**Mistake 2: Ignoring intermediary fees for SWIFT wires.** Your bank only controls its own sending fee. Correspondent banks along the SWIFT route deduct their charges from the principal. The recipient often gets $20–40 less than expected. This is not your bank's disclosed fee — it's an invisible deduction that happens mid-journey.

**Mistake 3: Assuming the quoted rate is locked.** Exchange rates change constantly. Unless a provider explicitly locks your rate at the time of quote, the rate at execution may differ. Wise locks the rate at payment. Many banks do not — your recipient might get a worse rate than the one quoted.

**Mistake 4: Comparing different delivery methods.** Most providers offer multiple delivery speeds at different prices. A 'Standard' (3-day) Remitly transfer costs significantly less than an 'Express' (1-hour) transfer. Always compare like-for-like delivery speeds.

**Mistake 5: Forgetting cash pickup fees.** If the recipient collects cash rather than receiving a bank deposit, many providers charge an additional pickup fee or offer a worse exchange rate for cash. Always specify the same delivery method when comparing.

Quick Reference Formula Sheet

Bookmark these formulas for instant use when evaluating any transfer:

**Mid-Market Rate**: Check Google, XE.com, or Reuters for the live rate.

**FX Markup %** = (Mid-Market Rate − Provider Rate) ÷ Mid-Market Rate × 100

**FX Markup in $** = Send Amount × (FX Markup % ÷ 100)

**Total Cost in $** = Upfront Fee + FX Markup in $ + Intermediary Fees + Recipient Bank Fees

**All-In Cost %** = (Total Cost in $ ÷ Send Amount) × 100

**Recipient Amount** = (Send Amount − Upfront Fee − Intermediary Fees) × Provider Rate − Recipient Fee

**Annual Cost** = Monthly Send Amount × All-In Cost % × 12

**Annual Savings vs. Bank** = (Bank All-In Cost % − Alternative All-In Cost %) × Annual Send Volume

Skip the Math — See the All-In Cost Instantly

RemitRoutes calculates the all-in cost for every provider on your corridor in real time. Enter your amount and currencies once; we pull live rates, apply the full cost formula, and rank providers by what your recipient actually receives.

Related guides

Frequently asked questions

What is the true all-in cost of an international transfer?

The true all-in cost includes three components: the upfront sending fee, the FX markup (the difference between the mid-market exchange rate and the rate you receive), and any intermediary or recipient bank fees. Many providers advertise only the upfront fee while hiding most of their profit in the exchange rate. Add all three components together and express them as a percentage of your send amount to get the real cost.

How do I calculate the FX markup?

Use this formula: FX Markup % = (Mid-Market Rate − Provider Rate) ÷ Mid-Market Rate × 100. First find the mid-market rate on Google or XE.com. Then get a quote from your provider. If USD/MXN is 17.50 on Google and your bank offers 17.00, the markup is (17.50 − 17.00) ÷ 17.50 × 100 = 2.86%. On a $1,000 transfer, that's $28.60 in hidden cost before any stated fees.

Why do zero-fee transfers still cost money?

Providers that advertise '$0 fees' make their money by offering you a worse-than-market exchange rate. For example, if the mid-market rate is 1.2500 EUR/USD and the provider gives you 1.2125, they've taken a 3% cut even though the fee was zero. Always check the exchange rate against the mid-market rate to find the hidden cost.

How much do intermediary bank fees add to a SWIFT wire transfer?

SWIFT bank wires often pass through one or more correspondent banks en route to the destination country. Each intermediary bank can deduct $10–25 from the transfer principal. Additionally, the recipient's bank may charge a receiving fee of $5–20. These charges are typically not disclosed by the sending bank upfront. On a $500 transfer, intermediary fees can add 4–9% to the total cost without appearing in the quoted fee.

Is the all-in cost higher for small transfers or large transfers?

Flat fees hit small transfers hardest. A $40 wire fee is 8% of a $500 transfer but only 0.4% of a $10,000 transfer. Percentage-based FX markups scale proportionally with the transfer amount, so they hurt equally regardless of size. Crypto rails like USDC on Stellar are particularly advantageous for small-to-medium transfers because the blockchain fee is a flat fraction of a cent regardless of amount.

How can I verify the rate the recipient actually received?

Ask the recipient for the exact local currency amount they received. Divide that by the send amount (minus upfront fees) to calculate the effective exchange rate. Compare this to the mid-market rate at the time of the transfer to determine the FX markup you were actually charged. This is also useful for disputing unexpected charges with your provider.

What is the cheapest method for regular monthly remittances?

For regular monthly transfers, the lowest all-in cost methods are typically USDC on Stellar or Tron (0.3–0.8% all-in) for corridors with active crypto off-ramps, followed by Wise (0.5–1.5% all-in) for a regulated fintech option. Bank wires at 6–10% all-in are consistently the most expensive option. RemitRoutes tracks live rates across all methods for 360+ corridors so you can compare instantly.

Does RemitRoutes calculate the all-in cost automatically?

Yes. RemitRoutes pulls live rates from all providers — including the exchange rate and any disclosed fees — and calculates the all-in cost for each option. Results are ranked by the recipient amount, which is the most accurate single measure of true cost. Enter your corridor and amount at RemitRoutes.com/compare to see the full breakdown.

Compare live rates across 360+ corridors on RemitRoutes · methodology.