Introduction · Nuxt Site Config · Nuxt SEO

[NuxtSEO](https://nuxtseo.com/ "Home")

- [Modules](https://nuxtseo.com/docs/nuxt-seo/getting-started/introduction)
- [Tools](https://nuxtseo.com/tools)
- [Pro](https://nuxtseo.com/pro)
- [Learn SEO](https://nuxtseo.com/learn-seo/nuxt) [Releases](https://nuxtseo.com/releases)

[1.4K](https://github.com/harlan-zw/nuxt-seo)

[Nuxt SEO on GitHub](https://github.com/harlan-zw/nuxt-seo)

[User Guides](https://nuxtseo.com/docs/site-config/getting-started/introduction)

[API](https://nuxtseo.com/docs/site-config/api/use-site-config)

[Releases](https://nuxtseo.com/docs/site-config/releases/v4)

Site Config

- [Switch to Site Config](https://nuxtseo.com/docs/site-config/getting-started/introduction)
- [Switch to Nuxt SEO](https://nuxtseo.com/docs/nuxt-seo/getting-started/introduction)
- [Switch to Robots](https://nuxtseo.com/docs/robots/getting-started/introduction)
- [Switch to Sitemap](https://nuxtseo.com/docs/sitemap/getting-started/introduction)
- [Switch to OG Image](https://nuxtseo.com/docs/og-image/getting-started/introduction)
- [Switch to Schema.org](https://nuxtseo.com/docs/schema-org/getting-started/introduction)
- [Switch to Link Checker](https://nuxtseo.com/docs/link-checker/getting-started/introduction)
- [Switch to SEO Utils](https://nuxtseo.com/docs/seo-utils/getting-started/introduction)
- [Switch to Skew Protection](https://nuxtseo.com/docs/skew-protection/getting-started/introduction)
- [Switch to AI Ready](https://nuxtseo.com/docs/ai-ready/getting-started/introduction)

Search…```k`` /`

v4.0.7

- Playgrounds
- [Discord Support](https://discord.com/invite/275MBUBvgP)

### Getting Started

- [Introduction](https://nuxtseo.com/docs/site-config/getting-started/introduction)
- [Installation](https://nuxtseo.com/docs/site-config/getting-started/installation)
- [Troubleshooting](https://nuxtseo.com/docs/site-config/getting-started/troubleshooting)

### Core Concepts

- [Recommended Config](https://nuxtseo.com/docs/site-config/guides/setting-site-config)
- [How it works](https://nuxtseo.com/docs/site-config/guides/how-it-works)
- [Nuxt I18n](https://nuxtseo.com/docs/site-config/guides/i18n)
- [Runtime Site Config](https://nuxtseo.com/docs/site-config/guides/runtime-site-config)
- [Multi-Tenancy](https://nuxtseo.com/docs/site-config/guides/multi-tenancy)

Getting Started

# Introduction

[Copy for LLMs](https://nuxtseo.com/docs/site-config/getting-started/introduction.md)

## [Background](#background)

Site config aims to be two things:

- A single source of truth for site config, for end users and module authors. Multiple modules commonly share this config, filling a gap the Nuxt core does not cover.
- A set of APIs for working with "writeable runtime config", for end-users and module authors.

## [Features](#features)

- 😌 Minimal config with sensible defaults
- 🎨 Site config from any source: Nuxt Config, Environment Variables or Programmatically
- 🚀 Powerful and runtime agnostic APIs for module authors [`useSiteConfig`](https://nuxtseo.com/docs/site-config/api/use-site-config), [`createSitePathResolver`](https://nuxtseo.com/docs/site-config/api/create-site-path-resolver), `withSiteUrl`, [`getNitroOrigin`](https://nuxtseo.com/docs/site-config/api/get-nitro-origin), etc
- 🤝 Integrates with [`@nuxtjs/i18n`](https://nuxtseo.com/docs/site-config/guides/i18n)

## [Site Config Examples](#site-config-examples)

### [`url`](#url)

A canonical site URL is important for [SEO](https://nuxtseo.com/docs/nuxt-seo/getting-started/introduction) and performance

### [`env`](#env)

The environment the site is running in, importing so we can disable indexing for non-production environments.

See [this issue](https://github.com/nuxt/nuxt/issues/19819) on why we can't use `process.env.NODE_ENV`.

### [`indexable`](#indexable)

Can the site be indexed by search engines? Used by [robots](https://nuxtseo.com/docs/robots/getting-started/introduction) and [sitemap](https://nuxtseo.com/docs/sitemap/getting-started/introduction) modules. Sometimes we have production sites that we don't want to be indexed.

### [`name`](#name)

The name of the site is often used in meta tags and other SEO related tags

### [`trailingSlash`](#trailingslash)

Trailing slashes are important for SEO and performance.

## [What's the problem?](#whats-the-problem)

Not having a single source of truth for site config can be difficult to maintain and error-prone, for end-users and module authors.

Requiring a lot of duplication and boilerplate code to support the same features across modules.

Nuxt Site Config aims to unify the experience of site config with a set of powerful and flexible APIs for end-users and module authors.

## [Can't we use the Request URL or module config?](#cant-we-use-the-request-url-or-module-config)

Nuxt itself provides a great SSR utility for getting the site URL from the request headers at runtime.

However, this has two major drawbacks:

- It's not available at build time or when prerendering
- When used for SEO content, it can cause duplicate content issues if the URL is not the canonical URL (e.g. `www.example.com` and `example.com`)

## [Can't we use `site` on runtime config?](#cant-we-use-site-on-runtime-config)

Yes. In fact, this module uses `site` on the runtime config under the hood.

It aims to keep all these in sync, resulting in a single source of truth for site config.

## [How does it work?](#how-does-it-work)

See [How it works](https://nuxtseo.com/docs/site-config/guides/how-it-works) for more details.

## [End goal](#end-goal)

We should be able to spin up multi-tenant or multi-lingual Nuxt app with minimal effort, and Nuxt modules should work, without any additional configuration.

This is far off, but it sets a good direction for the module.

[Edit this page](https://github.com/harlan-zw/nuxt-site-config/edit/main/docs/content/0.getting-started/0.introduction.md)

[Markdown For LLMs](https://nuxtseo.com/docs/site-config/getting-started/introduction.md)

Did this page help you?

[Installation Get started with Nuxt Site Config by installing the dependency to your project.](https://nuxtseo.com/docs/site-config/getting-started/installation) 

On this page

- [Background](#background)
- [Features](#features)
- [Site Config Examples](#site-config-examples)
- [What's the problem?](#whats-the-problem)
- [Can't we use the Request URL or module config?](#cant-we-use-the-request-url-or-module-config)
- [Can't we use site on runtime config?](#cant-we-use-site-on-runtime-config)
- [How does it work?](#how-does-it-work)
- [End goal](#end-goal)

[GitHub](https://github.com/harlan-zw/nuxt-seo) [ Discord](https://discord.com/invite/275MBUBvgP)

### [NuxtSEO](https://nuxtseo.com/ "Home")

- [Getting Started](https://nuxtseo.com/docs/nuxt-seo/getting-started/introduction)
- [MCP](https://nuxtseo.com/docs/nuxt-seo/guides/mcp)

Modules

- [Robots](https://nuxtseo.com/docs/robots/getting-started/introduction)
- [Sitemap](https://nuxtseo.com/docs/sitemap/getting-started/introduction)
- [OG Image](https://nuxtseo.com/docs/og-image/getting-started/introduction)
- [Schema.org](https://nuxtseo.com/docs/schema-org/getting-started/introduction)
- [Link Checker](https://nuxtseo.com/docs/link-checker/getting-started/introduction)
- [SEO Utils](https://nuxtseo.com/docs/seo-utils/getting-started/introduction)
- [Site Config](https://nuxtseo.com/docs/site-config/getting-started/introduction)
- [Skew Protection](https://nuxtseo.com/docs/skew-protection/getting-started/introduction)
- [AI Ready](https://nuxtseo.com/docs/ai-ready/getting-started/introduction)

### [NuxtSEO Pro](https://nuxtseo.com/pro "Home")

- [Getting Started](https://nuxtseo.com/pro)
- [Dashboard](https://nuxtseo.com/pro/dashboard)
- [Pro MCP](https://nuxtseo.com/docs/nuxt-seo-pro/mcp/installation)

### [Learn SEO](https://nuxtseo.com/learn-seo "Learn SEO")

Nuxt

- [Mastering Meta](https://nuxtseo.com/learn-seo/nuxt/mastering-meta)
- [Controlling Crawlers](https://nuxtseo.com/learn-seo/nuxt/controlling-crawlers)
- [Launch & Listen](https://nuxtseo.com/learn-seo/nuxt/launch-and-listen)
- [Routes & Rendering](https://nuxtseo.com/learn-seo/nuxt/routes-and-rendering)
- [Staying Secure](https://nuxtseo.com/learn-seo/nuxt/routes-and-rendering/security)

Vue

- [Vue SEO Guide](https://nuxtseo.com/learn-seo/vue)
- [Mastering Meta](https://nuxtseo.com/learn-seo/vue/mastering-meta)
- [Controlling Crawlers](https://nuxtseo.com/learn-seo/vue/controlling-crawlers)
- [SPA SEO](https://nuxtseo.com/learn-seo/vue/spa)
- [SSR Frameworks](https://nuxtseo.com/learn-seo/vue/ssr-frameworks)
- [SEO Checklist](https://nuxtseo.com/learn-seo/checklist)
- [Pre-Launch Warmup](https://nuxtseo.com/learn-seo/pre-launch-warmup)
- [Backlinks & Authority](https://nuxtseo.com/learn-seo/backlinks)

### [Tools](https://nuxtseo.com/tools "SEO Tools")

- [Social Share Debugger](https://nuxtseo.com/tools/social-share-debugger)
- [Robots.txt Generator](https://nuxtseo.com/tools/robots-txt-generator)
- [Meta Tag Checker](https://nuxtseo.com/tools/meta-tag-checker)
- [HTML to Markdown](https://nuxtseo.com/tools/html-to-markdown)
- [XML Sitemap Validator](https://nuxtseo.com/tools/xml-sitemap-validator)
- [Schema.org Validator](https://nuxtseo.com/tools/schema-validator)
- [Keyword Research Pro](https://nuxtseo.com/tools/keyword-research)
- [SERP Analyzer Pro](https://nuxtseo.com/tools/serp-analyzer)
- [Domain Rankings Pro](https://nuxtseo.com/tools/domain-rankings)

Copyright © 2023-2026 Harlan Wilton - [MIT License](https://github.com/harlan-zw/nuxt-seo/blob/main/license) · [mdream](https://mdream.dev)