← Languages & locales

ES · ESP

Spain languages and locale codes

Official or primary languages with practical BCP 47 locale recommendations.

BCP 47

Languages and locale codes

LanguageCodeRecommended localeStatus
SpanishOfficial
CatalanRegional official
GalicianRegional official
BasqueRegional official
AsturianRegional official
OccitanRegional official

Use a Spain locale in a product

When content is written in Spanish, use the lang tag below to describe the text. The Intl locale selects regional formatting. This is one example from the table, not a claim about every visitor's language preference.

<html lang="es">
new Intl.NumberFormat("es-ES").format(1234567.89);

Compare number and date formatting

These examples use 1234567.89 and the fixed instant 2026-01-15T13:45:00Z, with dates displayed in UTC. Intl computes the results when this site is built; your browser and locale-data version may differ. Unsupported tags are identified instead of showing default-language output.

Intl formatting examples (UTC)
LocaleNumberDateCurrency
es-ES1.234.567,8915 de enero de 2026
EUR: 1234,50 €
ca-ES1.234.567,8915 de gener del 2026
EUR: 1.234,50 €
gl-ES1.234.567,8915 de xaneiro de 2026
EUR: 1.234,50 €
eu-ES1.234.567,892026(e)ko urtarrilaren 15(a)
EUR: 1.234,50 €
ast-ES1.234.567,8915 de xineru de 2026
EUR: 1.234,50 €
oc-ES1 234 567,892026 de genièr 15
EUR: 1 234,50€

Currency examples use the fixed value 1234.5. SIX and CLDR snapshot: 2026-09-26. Specify each currency explicitly; formatting is not an exchange rate.

new Intl.NumberFormat("es-ES", { style: "currency", currency: "EUR" }).format(1234.5);

Before adopting a tag, run Intl.NumberFormat.supportedLocalesOf() and Intl.DateTimeFormat.supportedLocalesOf() in your target runtime. A locale does not select a time zone or translate interface text; specify currency explicitly when formatting money.

Intl locale support reference (MDN)

Data provenance

Sources

Data snapshot: 2026-09-26