---
title: "Config"
description: "Configuration options for Nuxt SEO Utils module."
canonical_url: "https://nuxtseo.com/docs/seo-utils/api/config"
last_updated: "2026-05-06T18:43:42.250Z"
---

### `enabled`

- Type: `boolean`
- Default: `true`

Conditionally toggle the module.

### `debug`

- Type: `boolean`
- Default: `false`

Enables debug logs.

## `canonicalQueryWhitelist`

- Type: `string[]`
- Default: `['page', 'sort', 'filter', 'search', 'q', 'category', 'tag']`

When set, only these query parameters are included in the canonical URL. All other query parameters are stripped.

## `canonicalLowercase`

- Type: `boolean`
- Default: `true`

When enabled, the canonical URL will be lowercased. Recommended to keep on for consistency.

## `redirectToCanonicalSiteUrl`

- Type: `boolean`
- Default: `false`

When enabled, it will redirect any request to the canonical domain (site url) using a 301 redirect on non-dev environments.

E.g if the site url is '[www.example.com](http://www.example.com)' and the user visits 'example.com',
they will be redirected to '[www.example.com](http://www.example.com)'.

This is useful for SEO as it prevents duplicate content and consolidates page rank.

## `automaticDefaults`

- Type: `boolean`
- Default: `true`

Will set up a number of defaults for meta tags and Schema.org, if the modules and config are available.

## `mergeWithSiteConfig`

- Type: `boolean`
- Default: `true`

Injects site config into the `useHead` composable such as setting the title template and template params like `%siteName`.

## `fallbackTitle`

- Type: `boolean`
- Default: `true`

Will ensure a title is always set by providing a fallback title based on the casing the last slug segment.

## `metaDataFiles`

- Type: `boolean`
- Default: `true`

Should the files in the public directory be used to infer tags such as favicon, apple-touch-icon, and
open graph images.

## `automaticOgAndTwitterTags`

- Type: `boolean`
- Default: `true`

Should head data be inferred from the current input to fill in the gaps.

For example:

- If you supply a title, this will automatically add an og:title.
- If you provide an og:image, it will automatically add a twitter:image.

## `tagPriority`

- Type: `number | 'critical' | 'high' | 'low' | \`before:${string}` | `after:${string}``{lang="ts"}
- Default: `'low'`

Sets the `tagPriority` for SEO and Open Graph meta tags generated by this module. The default `'low'` ensures module tags act as fallbacks that page-level `useSeoMeta()` calls can override. Use a numeric value or `'critical'`/`'high'` to place tags earlier in the `<head>` (useful for OG crawlers with byte limits).

## `minify`

- Type: `boolean | { build?: boolean, runtime?: boolean }`
- Default: `true`

Minifies inline `<script>` and `<style>` tags in SSR responses. Both modes can be toggled independently.

**Build mode** (`build`): Minifies static scripts and styles in `app.head` and prerendered route HTML at build time using Rolldown/esbuild (JS) and lightningcss (CSS).

**Runtime mode** (`runtime`): Minifies all inline scripts and styles per request via an Unhead `ssr:render` plugin. Uses lightweight pure JS minifiers with zero native dependencies. Handles dynamic content like hydration payloads and `useHead()` injections.

<code-group>

```ts [Both (default)]
seo: { minify: true }
```

```ts [Build only]
seo: { minify: { build: true, runtime: false } }
```

```ts [Runtime only]
seo: { minify: { runtime: true, build: false } }
```

</code-group>

JSON script types (`application/ld+json`, `application/json`) are minified via JSON round-tripping. `importmap` and `speculationrules` types are left untouched. Only active in production builds.

## `treeShakeUseSeoMeta`

- Type: `boolean`
- Default: `true`

Attempts to treeshake the `useSeoMeta` function. Can save around 5kb in the client bundle.

## `extendRouteRules`

- Type: `boolean`
- Default: `true`

Adds `head` and `seoMeta` to the route rules and app config.

## `fixRequiredAbsoluteMetaTagsLinks`

- Type: `boolean`
- Default: `true`

Tries to convert relative image paths to absolute paths in meta tags.

## `extendNuxtConfigAppHeadSeoMeta`

- Type: `boolean`
- Default: `true`

Extends `app.head` with the `seoMeta` key.

## `extendNuxtConfigAppHeadTypes`

- Type: `boolean`
- Default: `true`

Augments the head schema with `/public` files making it easier to reference them in the head.

## `meta`

- Type: `MetaFlatSerializable`
- Default: `{}`

The SEO meta object to be used as site-wide defaults. Takes the same input as `useSeoMeta()`. See the [Nuxt Config SEO Meta](/docs/seo-utils/guides/nuxt-config-seo-meta) guide for details.

## `setupNuxtConfigAppHeadWithMoreDefaults`

- Type: `boolean`
- Default: `true`

Sets up additional default head values in your nuxt.config app.head section.
