Codes & Telecom
World Language Code & Locale Lookup
Find the ISO 639-1 two-letter language code, native name and locale tag for 30+ languages — for i18n, SEO hreflang and software.
English
English
en-US
Spanish
Español
es-ES
French
Français
fr-FR
German
Deutsch
de-DE
Italian
Italiano
it-IT
Portuguese
Português
pt-PT
Dutch
Nederlands
nl-NL
Russian
Русский
ru-RU
Arabic
العربية
ar-SA
Turkish
Türkçe
tr-TR
Greek
Ελληνικά
el-GR
Hindi
हिन्दी
hi-IN
Chinese
中文
zh-CN
Japanese
日本語
ja-JP
Korean
한국어
ko-KR
Thai
ไทย
th-TH
Vietnamese
Tiếng Việt
vi-VN
Indonesian
Bahasa Indonesia
id-ID
Swedish
Svenska
sv-SE
Polish
Polski
pl-PL
Hebrew
עברית
he-IL
Finnish
Suomi
fi-FI
Czech
Čeština
cs-CZ
Romanian
Română
ro-RO
Danish
Dansk
da-DK
Norwegian
Norsk
nb-NO
Ukrainian
Українська
uk-UA
Malay
Bahasa Melayu
ms-MY
Persian
فارسی
fa-IR
Swahili
Kiswahili
sw-KE
What language codes are and why they exist
A language code is a short, standardised identifier for a language. The most common is ISO 639-1, a two-letter code (en, fr, ja, zh) maintained by the International Organization for Standardization. These codes are the backbone of internationalisation on the web: they appear in URL paths (/en/about), in hreflang tags, in file extensions and in countless software systems.
Without standard codes, every system would invent its own labels and interoperation would be impossible. ISO 639-1 gives the world a shared vocabulary for the most-spoken languages, extended by ISO 639-2 (three letters) and 639-3 (three letters covering thousands of languages) for the long tail.
Locales: language plus region
A language alone is often not enough. English in the US differs from English in the UK in spelling, date format and currency. A locale tag combines language and region to capture this, following the BCP 47 standard: en-US, en-GB, pt-BR, zh-CN. Software uses the locale to pick the right regional formatting for dates, numbers, currencies and text sorting.
This tool shows the canonical locale tag for each language, using the most representative region. For production internationalisation, you typically define a full set of locales for every region you serve, not just one per language.
Language codes for SEO and hreflang
Search engines use hreflang tags to understand which language and region a page targets, so they serve the correct version to each audience. A valid hreflang annotation uses language codes exactly as standardised — en, es, fr — optionally extended with region (en-GB). Wrong or invented codes break hreflang and cause the wrong page to rank in the wrong market.
This lookup gives the exact, correct codes for use in hreflang, sitemap annotations and content-language headers. Using standard codes is the difference between an international SEO strategy that works and one that silently fails.
Native names for language pickers
A language picker that lists 'English, Spanish, French' is fine for English-speaking users, but a Spanish speaker expects to see 'Español' and an Arabic speaker 'العربية'. Showing each language in its own native name is the inclusive standard for language selectors, and it confirms to users that their language is genuinely supported.
This tool includes the native name for each language, so you can build a picker that is correct for every audience rather than only for English speakers. The native name is also a quick check that the code you selected maps to the language you intended.
Beyond the two-letter codes
ISO 639-1 covers roughly 180 two-letter codes, sufficient for most major languages. ISO 639-2 adds three-letter codes (eng, fra, jpn) covering more languages and all of 639-1. ISO 639-3 extends to some 7,000 languages for linguistic and archival work, including endangered and historical languages.
For web and app internationalisation, two-letter codes are almost always what you want. Three-letter codes appear in academic and bibliographic contexts and in some specialised systems. If a language has no two-letter code, fall back to 639-3.
Using this lookup for development
When building multi-language software, use this tool to confirm the exact code for each language you support before wiring it into URLs, translations files and hreflang. A wrong code propagates everywhere and is tedious to fix later; getting it right at the start saves hours.
Pair the code with the locale tag for region-specific formatting, and the native name for pickers. Together, the three pieces — code, locale, native name — cover the data you need to ship a correctly internationalised product for each language in this list.
Frequently Asked Questions
What is ISO 639-1?
ISO 639-1 is the standard that assigns two-letter codes to languages (en, fr, ja, zh). It is the most widely used language-code standard, appearing in URL locale paths, hreflang tags and file extensions like .html.en.
What is a locale tag?
A locale tag combines language and region, like en-US (English, United States) or pt-BR (Portuguese, Brazil). It follows BCP 47, letting software select the right regional variant of a language for formatting dates, numbers and text.
What is the difference between ISO 639-1 and 639-2?
ISO 639-1 uses two letters (en); ISO 639-2 uses three (eng). Two-letter codes are more common in web and software contexts; three-letter codes cover more languages, including many with no two-letter code.
Why does hreflang matter for SEO?
hreflang tags tell search engines which language and region a page targets, so the right version is shown to the right audience. Correct language codes (from this tool) are the foundation of a valid hreflang set.
Are native names included?
Yes. Each entry shows the language's name in its own script, useful for displaying language pickers to native speakers and verifying that the right language was selected.
This guide contains approximately 591 words of original, semantically structured reference content for search and AI engines.