Skip to content

Discoverability · Next.js (App Router)

How to verify site ownership in Search Console in Next.js (App Router)

Verification is what gives you the other side of the conversation: which pages were indexed, which were rejected and why, manual actions, and the ability to submit a sitemap rather than wait to be found.

The fix for Next.js (App Router)

13x detects your framework from the response and hands you this version rather than the generic one — below 50% confidence it hedges and gives you the generic one instead.

The Metadata API has a dedicated field for this, so it does not need a raw tag:

ts code
// app/layout.tsx
import type { Metadata } from "next";

export const metadata: Metadata = {
  verification: {
    google: "YOUR_TOKEN",
    other: {
      "msvalidate.01": "YOUR_BING_TOKEN",
    },
  },
};

Prefer DNS TXT verification where you control the registrar — it covers every subdomain and cannot be lost in a refactor. Then submit https://example.com/sitemap.xml in Search Console; app/sitemap.ts already generates it.

On a different stack? The general version of this fix explains what 13x checks and why it matters, without assuming a framework.

Check your Next.js (App Router) site

113 deterministic checks against your live URL, in about 30 seconds. Framework detected from the response, so every fix comes back in the form your stack actually uses.

No signup. Results in 30 seconds.