Last reviewed on May 1, 2026.
Every FX quote, payment instruction, and currency conversion tool you have ever used relies on the same identifier: a three-letter currency code. USD, EUR, JPY, GBP. The codes are part of an international standard called ISO 4217, maintained by the International Organization for Standardization. They exist because country names and currency names are ambiguous — "the dollar" alone can mean at least a dozen different currencies — and because banking and trading systems need a fixed, unambiguous label per currency.
This guide explains how the codes are built, why each letter is what it is, what the less obvious quirks (like XAU and XDR) mean, and how to spot a code that looks unusual.
What ISO 4217 actually is
ISO 4217 is the international standard that assigns three identifiers to each official currency:
- A three-letter alphabetic code — the form most people see (USD, EUR, JPY).
- A three-digit numeric code — used in machine-to-machine systems (840 for USD, 978 for EUR, 392 for JPY).
- A minor unit exponent — how many decimal places the currency uses for amounts (2 for USD, 0 for JPY, 3 for KWD).
Banks, payment networks, and FX systems use those three pieces of information to format an amount unambiguously and to exchange instructions across borders. The alphabetic code is what shows up on this site and on every other consumer FX tool.
How the three-letter code is built
For most national currencies, the rule is intuitive: the first two letters are the ISO 3166 country code, and the third letter is the first letter of the currency name.
| Code | Country (ISO 3166) | Currency name |
|---|---|---|
| USD | US — United States | Dollar |
| GBP | GB — United Kingdom | Pound |
| JPY | JP — Japan | Yen |
| CHF | CH — Switzerland (Confoederatio Helvetica) | Franc |
| CAD | CA — Canada | Dollar |
| AUD | AU — Australia | Dollar |
| BRL | BR — Brazil | Real |
| INR | IN — India | Rupee |
| KRW | KR — South Korea | Won |
Once you see the rule, most codes parse instantly. ZAR is South Africa's Rand — ZA from the country code (Zuid-Afrika in Dutch, the historical source of the country code), R from "Rand". MXN is Mexico's "nuevo peso" — MX from the country, N from "nuevo" rather than "peso", because the currency was redenominated and a new code was needed.
The euro is the obvious exception
EUR does not follow the country-plus-initial rule. The euro is a multi-country currency, so there is no single ISO 3166 country code to draw from. The standard simply assigns EUR for "EURo" instead. The numeric code is 978.
A handful of other currencies are similar. The East Caribbean Dollar is XCD, where the leading X marks it as a multi-country or supranational currency rather than the currency of a specific country.
Codes that start with "X"
Codes beginning with X are reserved for currencies and assets that are not tied to a specific country. They are easy to recognise and worth understanding because they appear in financial contexts even though most consumers will never transact in them:
- XAU — one troy ounce of gold (Au is gold's chemical symbol).
- XAG — one troy ounce of silver.
- XPT, XPD — platinum and palladium, respectively.
- XDR — Special Drawing Rights, a unit of account used by the International Monetary Fund.
- XCD, XOF, XAF, XPF — multi-country currencies (East Caribbean Dollar, West African CFA Franc, Central African CFA Franc, CFP Franc).
- XTS — reserved for testing in financial systems; not a real currency.
- XXX — reserved for transactions where no currency is involved.
If you see an X-code in a context where you expected a national currency, it is usually metals or a multi-country instrument, not an error.
Why redenominations create new codes
When a country replaces its currency — usually after a long stretch of high inflation — the new currency normally needs a new ISO code, even if the everyday name barely changes. ISO 4217 reissues the alphabetic code so that historical records do not collide with current ones. Past examples include Mexican peso codes changing during a redenomination and several Latin American currencies receiving new codes as governments reset the unit. From a consumer perspective, what matters is that the code your bank uses today is the one you should look up on a conversion site — older codes still appear in archived data but no longer represent live currency.
Minor units: why JPY has no decimals and KWD has three
Most currencies divide into 100 minor units (a dollar is 100 cents, a euro is 100 cents, a pound is 100 pence). ISO 4217 expresses this as an exponent of 2 — meaning two decimal places when an amount is written out. Some currencies are different:
- JPY has an exponent of 0. Amounts are written as whole numbers; there is no minor unit in everyday use.
- KWD, BHD, JOD, OMR, TND have an exponent of 3 — amounts are written with three decimal places.
- CLF (Chilean Unidad de Fomento) has an exponent of 4.
This matters for payment systems, accounting, and any conversion that needs to round correctly. On consumer-facing tools, including this site, rates are usually shown to four decimal places regardless, but converted amounts respect the conventional precision of the currency on the receiving end.
Codes vs symbols: not the same thing
The three-letter code is universal: USD always means United States Dollar. The currency symbol, by contrast, is ambiguous. The dollar sign $ is used for at least a dozen currencies (US, Canadian, Australian, Singapore, Hong Kong, Mexican, and more). The yuan and yen share ¥ even though they are entirely different currencies. The peso symbol is used across many Latin American currencies. When precision matters — invoicing, contracts, reporting — use the ISO code, not the symbol. When friendliness matters and the context is unambiguous, the symbol is fine.
Codes used on this site
The currencies covered on currencyconversion.org all use ISO 4217 codes. The home page lists every code we cover and the country or region it belongs to. Pair pages — for example, USD to EUR, GBP to JPY, AUD to CAD — are addressed by the lowercase form of the two codes. The exchange-rate API behind the site identifies currencies the same way.
Common mistakes
- Treating a symbol as if it were a code. "$" is not enough; "USD" is.
- Assuming a two-letter code is a currency code. Two-letter codes are countries (ISO 3166), not currencies.
- Using an old, retired code from before a redenomination — historical data may still cite it, but live transactions need the current code.
- Confusing CNY (the official code for the Chinese yuan / renminbi) with CNH (an offshore market identifier used in trading systems but not an ISO 4217 currency code).
Where to go next
Now that codes parse cleanly, the next step is reading what the rate between two codes actually means — see how exchange rates are quoted. To gauge whether a pair will show a tight or wide spread on real transactions, the major, minor, and exotic pairs guide is the natural follow-up. And to understand why your bank's offered rate diverges from the reference rate shown here, the mid-market vs bank rates guide walks through the gap.