Skip to content

Interactive Demos

This page showcases interactive components that help you better understand BCP-47 language tags.

Language Tag Structure Visualization

Understanding the structure of BCP-47 language tags is crucial to working with them effectively. Below is an interactive visualization of the different components that make up a language tag. Hover over each part to learn more about its purpose and see examples.

BCP-47 Language Tag Structure

Language
en
-
Extended Language
cmn
-
Script
Latn
-
Region
US
-
Variant
1901
-
Extension
u-ca-gregory
-
Private Use
x-private

Hover over each part of the tag to learn more about its purpose and see examples.

A BCP-47 language tag can include some or all of these components, separated by hyphens.

Only the language subtag is required. The others are optional and used as needed.

Complete Examples:

en-US
English as used in the United States
zh-Hans-CN
Chinese written in Simplified script as used in China
sr-Latn-RS
Serbian written in Latin script as used in Serbia
de-CH-1901-x-private
German as used in Switzerland with traditional orthography and private extension
en-US-u-ca-gregory-nu-latn
English as used in the United States with Gregorian calendar and Latin numerals

Interactive Tag Builder

The interactive tag builder below allows you to construct a BCP-47 language tag piece by piece, with guidance on what each component means. You can also validate your tag to see if it follows the BCP-47 standard.

Interactive Tag Builder

Language
en
Extended Language
+ Add Extended Language
Script
+ Add Script
Region
+ Add Region
Variant
+ Add Variant
Extension
+ Add Extension
Private Use
+ Add Private Use
en

Click on any part of the tag above to add or modify its value.

Only the language part is required. All others are optional.

Try Presets:

How to Use These Tools

Tag Structure Visual

  1. Hover over each part of the tag to see detailed information about that component
  2. Observe the examples provided for each component
  3. Understand how the different components work together to form a complete language tag

Interactive Tag Builder

  1. Click on any tag component to add or modify its value
  2. Select from common values or enter your own
  3. Click "Validate" to check if your tag is valid
  4. Try presets to see examples of complete tags for common languages and regions

Practical Applications

Understanding BCP-47 language tags is essential for:

  1. Internationalization (i18n) - Properly targeting content to specific languages and regions
  2. Accessibility - Ensuring content is properly marked for screen readers and assistive technologies
  3. Content Negotiation - Handling language preferences in web applications
  4. Data Organization - Categorizing multilingual content correctly

These interactive tools help developers and content creators better understand how to create valid language tags for their applications.

Powered by Allyship.dev