How to read an FX quote: base currency, quote currency, and which way the rate points

Read any exchange rate correctly: base vs quote currency, USD/BRL 5.40 vs 0.1852, inverting a rate, and reading the two rates on a stablecoin payout quote.

An FX quote tells you how much of one currency equals one unit of another. In USD/BRL 5.40, USD is the base currency (always one unit) and BRL is the quote currency, so 1 dollar buys 5.40 reais. Invert it by dividing 1 by the rate: 1 / 5.40 = 0.1852 dollars per real.

Sounds trivial. It isn't. A lot of confusing payout numbers come from someone reading a rate in the wrong direction, then computing a spread or a fee on top of the wrong number.

Key takeaways

  • The base currency is the "one unit" side. The number is how many units of the quote currency it buys.
  • Inverting a rate (1 / rate) swaps base and quote. It does not change the economics, only the direction.
  • Conventions differ by source: the US Federal Reserve quotes most currencies per US dollar, the ECB quotes everything against the euro.
  • Spreads in percent are almost the same in both directions, but spreads in units are not. Compute them in one direction and stick to it.
  • On a BlindPay payout quote, multiply the stablecoin amount by blindpay_quotation to see the direction: the result is in the receiver's currency.

What are the base currency and the quote currency?

The base currency is the one fixed at one unit; the quote currency is the one the number is denominated in. In EUR/USD 1.12, one euro equals 1.12 dollars. In USD/MXN 18.40, one dollar equals 18.40 pesos.

The slash notation and the "per" notation say the same thing in opposite order. USD/BRL 5.40 is 5.40 BRL per USD. That flip trips people up constantly, so here is the cheat sheet.

Written asBase (one unit)Quote (the number)Read it as
USD/BRL 5.40USDBRL5.40 reais per dollar
BRL/USD 0.1852BRLUSD0.1852 dollars per real
EUR/USD 1.12EURUSD1.12 dollars per euro
USD/MXN 18.40USDMXN18.40 pesos per dollar
USDC to BRL 5.40USDCBRL5.40 reais per USDC

The currency codes are ISO 4217 three-letter codes. USD, BRL, MXN, COP, ARS, EUR. Stablecoins like USDC don't have ISO codes, so payout APIs name the token instead.

Which way do common sources quote a currency pair?

Most sources quote emerging market currencies per US dollar, but there are exceptions you should memorize. The US Federal Reserve's H.10 release publishes "rates in currency units per U.S. dollar", except the Australian dollar, the euro, the New Zealand dollar, and the British pound, which it marks as "U.S. dollars per currency unit" (Federal Reserve H.10).

The ECB does it the other way around. Its euro reference rates list "all currencies quoted against the euro (base currency)", updated around 16:00 CET on working days (ECB). So the ECB's USD figure is dollars per euro, never euros per dollar.

Central banks in Latin America follow the per-dollar habit. Banco de México's FIX rate is pesos per dollar, determined from wholesale quotes and published from 12:00 on banking days (Banco de México).

The rule: before you compare two rates, write both as "X per Y" with the same Y.

How do you invert an exchange rate?

Divide 1 by the rate. That's the whole operation.

  • USD/BRL 5.40 becomes BRL/USD 1 / 5.40 = 0.185185.
  • EUR/USD 1.12 becomes USD/EUR 1 / 1.12 = 0.892857.

Two habits keep inverted numbers honest. Keep at least six digits after the decimal point until the final step. And never invert a rate that already includes a fee, then apply a second fee to it. You will double count.

Illustrative example. A supplier in São Paulo invoices R$54,000. Your treasury sheet shows BRL/USD 0.1852 instead of USD/BRL 5.40.

StepCalculationResult
Using USD/BRL54,000 / 5.4010,000.00 USD
Using BRL/USD (4 decimals)54,000 x 0.185210,000.80 USD
Using BRL/USD (6 decimals)54,000 x 0.1851859,999.99 USD

Rounding the inverted rate to four decimals cost 80 cents on ten thousand dollars. On a $2 million monthly payout book, the same rounding habit is a $160 reconciliation gap nobody can explain.

What changes when you compute a spread on an inverted rate?

The percentage spread stays almost identical, but the spread in units does not. A spread is the gap between the market rate and the rate you are offered.

Illustrative example. Market USD/BRL is 5.40. A provider offers 5.373 reais per dollar on your payout.

DirectionMarketOfferedGapSpread
BRL per USD5.40005.37300.0270 BRL0.0270 / 5.4000 = 0.500%
USD per BRL0.1851850.1861150.000930 USD0.000930 / 0.185185 = 0.502%

Same deal, two percentages that differ in the third decimal, and two unit gaps that look nothing alike. If your dashboard mixes directions across corridors, spreads stop being comparable. Pick "local currency per stablecoin" for every payout corridor and keep it.

There is also a sign trap. When you send dollars, a lower BRL-per-USD number is worse for you. Flip the pair and a higher USD-per-BRL number is worse. Why on-ramp and off-ramp rates differ walks through which side of the market each direction lands on.

How do you read the rates on a stablecoin payout quote?

A BlindPay payout quote returns two rates and two amounts, and the arithmetic between them tells you the direction. commercial_quotation is the raw market exchange rate, blindpay_quotation is the rate net of BlindPay's fee, and sender_amount and receiver_amount are in minor units (payout quotes docs).

The docs sample is a dollar payout, so the rates sit near 1:

FieldDocs sample valueMeaning
commercial_quotation1Market rate
blindpay_quotation0.998Rate after BlindPay's fee
sender_amount10000100.00 sent in stablecoin
receiver_amount998099.80 received at the bank

Check it: 10000 x 0.998 = 9980. You multiply the sender side by the rate to get the receiver side, so the rate reads as receiver currency per unit of stablecoin. For a BRL payout, that means reais per USDC.

Two more things to read on every quote. expires_at is epoch milliseconds, and a quote lasts 5 minutes. And the fee lines (flat_fee, partner_fee_amount) sit next to the rates, so the full cost is visible before you execute. Stablecoin API quotes explained covers fee direction and minor units in depth, and where the exchange rate gets fixed maps the moment the rate locks.

What are the most common misreads?

Five mistakes cover almost every confused support ticket.

  1. Comparing a per-dollar rate with a per-euro rate. Normalize to the same base first.
  2. Treating the Google number as executable. It is a mid-market reference, not a price anyone will fill your payout at.
  3. Inverting a rate that already includes a fee, then adding the fee again.
  4. Rounding inverted rates to four decimals. See the 80-cent example above.
  5. Reading receiver_amount as major units. 9980 means 99.80, not 9,980.

If a number looks off by a factor of about 5 or 18, someone read BRL or MXN in the wrong direction. If it looks off by a factor of 100, someone forgot minor units.

The on/off-ramp liquidity glossary defines spread, mid-market, and the other terms used here, and stablecoin FX slippage shows what happens when the rate you see isn't the rate you get.

What to do next

Request one payout quote on a development instance and check the direction yourself: multiply sender_amount by blindpay_quotation and confirm you land on receiver_amount. The payout quotes docs have the request body.

FAQ