---
title: "I18n Integration · Nuxt Site Config · Nuxt SEO"
canonical_url: "https://nuxtseo.com/docs/site-config/guides/i18n"
last_updated: "2026-08-14T21:00:59.891Z"
meta:
  description: "How to use the Nuxt Site Config module with @nuxtjs/i18n or nuxt-i18n-micro."
  "og:description": "How to use the Nuxt Site Config module with @nuxtjs/i18n or nuxt-i18n-micro."
  "og:title": "I18n Integration · Nuxt Site Config · Nuxt SEO"
---

Nuxt SEO on GitHub

Switch to Site ConfigSwitch to Nuxt SEOSwitch to RobotsSwitch to SitemapSwitch to OG ImageSwitch to Schema.orgSwitch to Link CheckerSwitch to SEO UtilsSwitch to Skew ProtectionSwitch to AI Ready

**Core Concepts**

# **I18n Integration**

Site Config integrates automatically with both [**~~@nuxtjs/i18n~~**](https://i18n.nuxtjs.org/) and [**~~nuxt-i18n-micro~~**](https://nuxt.com/modules/nuxt-i18n-micro). You do not need extra configuration; Site Config detects and enables the integration when your app installs either module.

## Usage

Site Config extracts the following properties from your i18n module config:

- `**url**` - The base URL, configured as `**baseUrl**` in the i18n module.
- `**defaultLocale**` - The default locale `**language**` (e.g. `**en-US**`) resolved from the i18n module config.
- `**currentLocale**` - The current locale for the request, resolved from the locale's `**language**` property. Falls back to `**defaultLocale**` if no locale is set.

For example, consider the following config:

nuxt.config.ts

```ts
export default defineNuxtConfig({
  i18n: {
    baseUrl: 'https://example.com',
    defaultLocale: 'en',
    locales: [
      { code: 'en', language: 'en-US' },
      { code: 'fr', language: 'fr-FR' },
    ],
  },
})
```

The following site config will be inferred:

```json
{
  "url": "https://example.com",
  "defaultLocale": "en-US",
  "currentLocale": "en-US"
}
```

## Translated Site Config

Both `**@nuxtjs/i18n**` and `**nuxt-i18n-micro**` support providing translated site config values through a `**nuxtSiteConfig**` translation key:

- `**name**` - Name of the site
- `**description**` - Description of the site

For example:

```ts
export default {
  nuxtSiteConfig: {
    name: 'My Site',
    description: 'My site description',
  }
}
```

The following site config will be inferred for an English request:

```json
{
  "url": "https://example.com",
  "defaultLocale": "en-US",
  "currentLocale": "en-US",
  "name": "My Site",
  "description": "My site description"
}
```

## Module Ordering

Ensure your i18n module is listed **before** `**nuxt-site-config**` (or `**@nuxtjs/seo**`) in the modules array:

nuxt.config.ts

```ts
export default defineNuxtConfig({
  modules: [
    '@nuxtjs/i18n', // or 'nuxt-i18n-micro'
    'nuxt-site-config', // or '@nuxtjs/seo'
  ],
})
```

**Was this page helpful?**

### **Related **

[**Recommended Config**](https://nuxtseo.com/docs/site-config/guides/setting-site-config)

[**Multi-Tenancy**](https://nuxtseo.com/docs/site-config/guides/multi-tenancy)

[**I18n**](https://nuxtseo.com/docs/sitemap/guides/i18n)

[**Multi-Tenancy** Learn how to serve multiple sites with different configurations based on the hostname.](https://nuxtseo.com/docs/site-config/guides/multi-tenancy) [**useSiteConfig()** How to access site config within a Nuxt context.](https://nuxtseo.com/docs/site-config/api/use-site-config)