ISO Language Codes Table
ISO Language Codes Table
1.1 Notes
1.2 Conventions
2 Normative References
This is not intended to be an exhaustive list. Please refer to the official ISO web sites listed under the
Normative References section below.
For an explanation of the criteria that were followed for this table, see the section Conventions
below.
Ga gaa-GH gaa
Notes
The use of the script subtags Hans and Hant is unnecessary when the language code zh for Chinese is
followed by the region code (CN for China and TW for Taiwan, respectively).
srp is the code for Serbian: ISO has not yet defined a separate code for Montenegrin.
The Academy of Persian Language and Literature has delivered a pronouncement in favor of "Persian"
and has rejected any usage of the word "Farsi." (See Persian or Farsi?.)
cat is the code for Catalan: ISO does not have a separate code for the Valencian variant of the Catalan
language. (In fact, a request to create a new code was rejected by ISO in 2006.)
Conventions
Language names are taken from from ISO 639-3 or from the Ethnologue, 15th edition.
ISO 639-2 recommends the use of the language codes in lower case.
RFC 5646 - Tags for Identifying Languages - recommends the use of the character "-" (HYPHEN-MINUS)
to separate the primary language subtag from subsequent subtags.
RFC 5646 mandates that "[s]cript subtags MUST follow any primary and extended language subtags and
MUST precede any other type of subtag."
the script subtag must follow the language tag and preced any other subtag
XN and XL are not ISO country codes. Instead, they are user-assigned code elements as specified in
clause 8.1.3 of ISO 3166-1.
XL is used to identify the region conventionally known as "Latin America." Alternatively, the United
Nations code 419 for "Latin America and the Caribbean" can be used.
Simplified and Traditional Chinese are conventionally identified according to the recommendation in ISO
639-2 FAQ, i.e., zh-CN and zh-TW, respectively.
Identifiers qaa through qtz are reserved for local use, to be used in cases in which there is no suitable
existing code in ISO 639. There are no constraints as to scope of denotation. These identifiers may only
be used locally, and may not be used in interchange without a private agreement.
Normative References
ISO 632-1: 2002 - _Codes for the representation of names of languages – Part 1: Alpha-2 code
(http://www.loc.gov/standards/iso639-2/).
ISO 632-2: 1998 - Codes for the Representation of Names of Languages Part 2: Alpha-3 code
(http://www.loc.gov/standards/iso639-2/).
ISO 632-3: 2007 - Codes for the Representation of Names of Languages Part 3: Alpha-3 code for
comprehensive coverage of languages (http://www.sil.org/iso639-3/default.asp).
ISO 3166-1: 2006 - Codes for the representation of names of countries and their subdivisions-Part 1:
Country codes (http://www.iso.org/iso/country_codes/iso_3166_code_lists.htm).
For a good overview, see also the Wikipedia article IETF Language Tag.