Country Codes Reference
ReferenceLookup table of ISO 3166-1 country codes (alpha-2 / alpha-3 / UN M49 numeric), international calling codes, flags, capitals and ISO 4217 currencies — with search.
| Flag | Country | A2 | A3 | Numeric | Calling | Capital | Currency |
|---|
On this page
What is a country codes reference?#
Every international system — a payment gateway, a phone-number parser, a shipping label, an analytics dashboard — sooner or later needs to turn “Germany” into DE, 840 into “United States”, or +81 into “Japan”. Those short codes are not random abbreviations; they come from three coordinated standards maintained so that machines in different countries agree on the same entity:
- ISO 3166-1 defines the two-letter (
alpha-2, e.g.JP), three-letter (alpha-3, e.g.JPN), and three-digit (numeric, e.g.392) identifiers for every country and major territory. - ITU-T E.164 defines the international dialling prefix you put after
+(Japan is+81, Nigeria+234). - ISO 4217 defines the currency code (
JPY,NGN).
This page puts all five in one searchable table, plus the capital city and a flag emoji computed straight from the alpha-2 code. The localized country and currency names are produced by your browser’s own Intl.DisplayNames, so they read naturally in your language rather than from a hand-translated list that drifts out of date.
How to use it#
- Start typing in the Search box at the top. One box matches everything: country name (in your language or English),
alpha-2,alpha-3, the numeric code, the calling code, the capital, or the currency code. TypeDE,Germany,276,49,Berlin, orEUR— they all land on the same row. - Pure-digit queries do double duty.
840matches the UN M49 numeric for the United States;1or+1matches every North American Numbering Plan country (US, Canada, Jamaica, Puerto Rico …) by calling-code prefix. - The count chip next to the search box shows how many rows survived the filter.
- Click any row (or tap a cell) to copy that exact value to the clipboard — handy when you need to paste
alpha-2into a form. - The flag column shows the regional-indicator emoji. A few territories (Antarctica
AQ) are valid Unicode that some platforms render as bare lettersAQinstead of a flag; the code itself is still correct.
Key features#
- 249 entries, one table — every ISO 3166-1 country plus major territories and dependencies (Greenland, Puerto Rico, Hong Kong, Åland …), each with all five codes.
- Localized by the browser. Country and currency display names come from
Intl.DisplayNames, so a viewer in French seesAllemagneandeurowithout any shipped translation table. - Smart digit matching. A numeric query hits both the UN M49 number (exact or prefix) and the calling code (digit prefix), so
1reliably surfaces the NANP block. - Includes user-assigned codes. Kosovo (
XK/XKX/983) is present even though it is not yet an official ISO 3166-1 entry — many real systems use it. - 100% client-side. The dataset ships in the page; nothing is sent anywhere.
Worked example#
Suppose you are integrating a checkout and a customer enters the calling number with country code +234. You want to know whose number that is and what currency to default the form to.
Type 234 in the search box. Exactly one row survives:
| Flag | Name | A2 | A3 | Numeric | Calling | Capital | Currency |
|---|---|---|---|---|---|---|---|
| 🇳🇬 | Nigeria | NG | NGA | 566 | 234 | Abuja | NGN |
So +234 → Nigeria, currency NGN (the Nigerian naira), capital Abuja. Now compare with a NANP member. Clear the box and type 1-787 — Puerto Rico (PR / PRI / 630), capital San Juan, currency USD, because it shares the US dialling plan through area code 787. The -xxx suffix is how this dataset distinguishes NANP area codes that would otherwise collide under a bare 1.
FAQ#
What is the difference between alpha-2 and alpha-3?#
Alpha-2 (US, DE, JP) is the compact form used everywhere a human might read it: top-level domains (example.de), address forms, locale tags (zh-CN). Alpha-3 (USA, DEU, JPN) is more legible and less ambiguous, so it shows up on passports, SWIFT/IBAN fields, and customs documents. Use alpha-2 when storage or screen space matters; alpha-3 when clarity does.
Why does 840 mean the United States?#
That is the UN M49 / ISO 3166-1 numeric code — a zero-padded three-digit number assigned independently of the alphabetic codes. It is valuable when characters outside ASCII are a problem and when you sort or compare codes from systems that disagree on spelling. The numeric code is the most stable identifier: it rarely changes even when a country is renamed.
Are calling codes unique per country?#
No. The North American Numbering Plan (+1) covers about 20 countries and territories; +7 is shared by Russia and Kazakhstan. That is why this dataset records area codes like 1-787 for Puerto Rico, so a search for the full digit string still disambiguates.
Is Kosovo a real country code?#
Kosovo uses the user-assigned code XK (transitional, not yet in ISO 3166-1). Many payment and telecom systems accept it today; this table includes it for exactly that reason, and flags it clearly so you don’t mistake it for an officially assigned code.