Language code

Print Print
Reading time 5:10

A language code is a code that assigns letters or numbers as identifiers or classifiers for languages. These codes may be used to organize library collections or presentations of data, to choose the correct localizations and translations in computing, and as a shorthand designation for longer forms of language names.

Difficulties of classification

Language code schemes attempt to classify the complex world of human languages, dialects, and variants. Most schemes make some compromises between being general and being complete enough to support specific dialects.

For example, most people in Central America and South America speak Spanish. Spanish spoken in Mexico will be slightly different from Spanish spoken in Peru. Different regions of Mexico will have slightly different dialects and accents of Spanish. A language code scheme might group these all as "Spanish" for choosing a keyboard layout, most as "Spanish" for general usage, or separate each dialect to allow region-specific idioms.

Common schemes

Some common language code schemes include:

Scheme Notes Example for English Example for Spanish
Glottolog codes Created for minority languages as a scientific alternative to the industrial ISO 639‑3 standard.
Intentionally do not resemble abbreviations.
  • stan1293 – standard English
  • macr1271 – macro-English (Modern English, incl. creoles)
  • midd1317 – Middle English
  • merc1242 – Mercian (Middle – Modern English)
  • olde1238 – Old English
  • angl1265 – Anglian (Old – Modern English, incl. Scots)
  • stan1288 – standard Spanish
  • olds1249 – Old Spanish
  • cast1243 – Castilic (Old – Modern Spanish, incl. Extremaduran & creoles)
IETF language tag An IETF best practice, specified by BCP 47,[1] for language tags easy to parse by computer. The tag system is extensible to region, dialect, and private designations. It references ISO 639, ISO 3166 and ISO 15924.
  • en – English, as shortest ISO 639 code.
  • en-US – English as used in the United States (US is the ISO 3166‑1 country code for the United States)

Source: IETF memo[2]

  • es – Spanish, as shortest ISO 639 code.
  • es-419 – Spanish appropriate for the Latin America and Caribbean region, using the UN M.49 region code
ISO 639‑1 Two-letter code system made official in 2002, containing 136 codes. Many systems use two-letter ISO 639‑1 codes supplemented by three-letter ISO 639‑2 codes when no two-letter code is applicable.

See: List of ISO 639-1 codes

  • en
  • es – Spanish
ISO 639‑2 Three-letter system of 464 codes.

See: List of ISO 639-2 codes

  • eng – three-letter code
  • enm – Middle English, c. 1100–1500
  • ang – Old English, c. 450–1100
  • cpe – other English-based creoles and pidgins
  • spa – Spanish
ISO 639‑3 An extension of ISO 639‑2 to cover all known, living or dead, spoken or written languages in 7,589 entries.

See: List of ISO 639-3 codes

  • eng – three-letter code
  • enm – Middle English, c. 1100–1500
  • aig – Antigua and Barbuda Creole English
  • ang – Old English, c. 450–1100
  • svc – Vincentian Creole English
  • spa – Spanish
  • spq – Spanish, Loreto-Ucayali
  • ssp – Spanish sign language
Linguasphere Register code-system Two-digit + one to six letter Linguasphere Register code-system published in 2000,[3] containing over 32,000 codes within 10 sectors of reference, covering the world's languages and speech communities.

Navigate also the hierarchy of the Linguasphere Register code-system published online by [4]

Within hierarchy of Linguasphere Register code-system:

  • 5= Indo-European phylosector
  • 52= Germanic phylozone
  • 52-A Germanic set
  • 52-AB English + Anglo-Creole chain
  • 52-ABA English net
  • 52-ABA-c Global English
    outer unit
    52-ABA-ca to
    (186 varieties)

Compare: 52-ABA-a Scots + Northumbrian
outer unit & 52-ABA-b "Anglo-English" outer unit
(= South Great Britain traditional varieties + Old Anglo-Irish)

Within hierarchy of Linguasphere Register code-system:

  • 5= Indo-European phylosector
  • 51= Romanic phylozone
  • 51-A Romance set
  • 51-AA Romance chain
  • 51-AAA West Romance net
  • 51-AAA-b Español/Castellano
    outer unit
    51-AAA-ba to
    (58 varieties)

Compare: 51-AAA-a Português + Galego outer unit & 51-AAA-c Astur + Leonés outer unit, etc.

SIL codes (10th–14th editions) Codes created for use in the Ethnologue, a publication of SIL International that lists language statistics. The publication now uses ISO 639‑3 codes. ENG SPN
Verbix language codes Constructed codes starting with old SIL codes and adding more information.[5] ENG SPN

See also

  • Accept-Language
  • Codes for constructed languages
  • Country code
  • Flag icons for languages
  • List of ISO 639-1 codes - codes for common languages
  • List of ISO 639-2 codes - expanded 3 character code list of all languages coded by ISO
  • Locale (computer software)


  1. ^
  2. ^ Best Current Practice 47 – Tags for Identifying Languages, IETF
  3. ^ "The Linguasphere Register in PDF". l’Observatoire linguistique (Linguasphere Observatory). Archived from the original on 27 April 2015. Retrieved 20 April 2015.
  4. ^ "Linguasphere Register hierarchy". Retrieved 8 June 2016.
  5. ^ Verbix language codes Archived 2009-04-01 at the Wayback Machine, Verbix

Edited: 2021-06-18 19:10:27