Google Search Console und Next.js-Indexierung, SSR, SSG und Sitemap 2026

google search console4 Min. Lesezeit20. Juli 2026

Autor: DevStudio.it

TL;DR

Die Next.js-Seite sieht im Browser gut aus, aber Google indexiert Unterseiten nicht, 2026 sind fehlende Sitemap, noindex in Metadata, rein clientseitiges Rendering ohne HTML in der ersten Antwort und falsche Canonicals zwischen Locales die häufigsten Ursachen. GSC-Setup, URL Inspection Schritt für Schritt, sitemap.ts im App Router, SSR/SSG-Checkliste und typische Fehler nach Deploy auf DevStudioIT Cloud folgen.

Für wen

  • Marketing mit „Discovered, currently not indexed“ in Search Console
  • Next.js-Entwickler (App Router) für technisches SEO
  • Unternehmen nach Migration oder Redesign mit organischem Traffic-Rückgang
  • Mehrsprachige Sites mit hreflang-Problemen

Keyword (SEO)

google search console indexierung nextjs, url inspection sitemap, nextjs ssg ssr seo 2026, website wird nicht indexiert

GSC, erste Schritte nach Deploy

  1. Property hinzufügen (Domain example.com oder URL-Präfix)
  2. DNS TXT oder HTML-Datei verifizieren, Eintrag dauerhaft
  3. /sitemap.xml unter Sitemaps einreichen
  4. Pages → Indexed vs Not indexed (nach Grund filtern)
  5. Für Kern-URLs: URL Inspection → „Live-URL testen“ → „Indexierung beantragen“

Nicht hunderte URLs mit „Indexierung beantragen“ spammen, Google hat Tageslimits. Priorität: Startseite, Leistungen, Top-Blog, Kampagnen-Landings.

URL Inspection, Ergebnisse lesen

Status Bedeutung Typische Aktion
URL is on Google OK CTR in Performance monitoren
Crawled, currently not indexed Qualität / Duplikat / Thin Content stärken, Canonical
Discovered, not indexed Crawl Budget / interne Links Menü-Links, Sitemap
Excluded by ‘noindex’ Tag im HTML robots: { index: false } entfernen
Soft 404 Leere Seite für Google Content + 200
Redirect error Redirect-Kette Max 1 Hop 301

„View crawled page“ → HTML-Tab: sieht Google H1 und Absätze oder nur leeres <div id="root">?

Next.js App Router, Metadata und Indexierbarkeit

Server Components rendern standardmäßig serverseitig, gut für SEO. Probleme bei 'use client' auf der ganzen Seite ohne SSR-Fallback.

// app/de/leistungen/page.tsx
import type { Metadata } from 'next';

export const metadata: Metadata = {
  title: 'Leistungen, DevStudio.it',
  description: 'Firmenwebsites und Next.js-Apps für Unternehmen.',
  alternates: {
    canonical: 'https://www.example.com/de/leistungen',
    languages: {
      pl: 'https://www.example.com/pl/oferta',
      en: 'https://www.example.com/en/services',
      de: 'https://www.example.com/de/leistungen',
    },
  },
  robots: { index: true, follow: true },
};

export default function LeistungenPage() {
  return (/* server-rendered content */);
}

Kein globales noindex auf Staging, Env-Leak auf Produktion ist ein Klassiker. Auf DevStudioIT Cloud (devstudioit.cloud) hat Staging eigene Domain mit robots.txt Disallow all.

SSR vs SSG vs ISR, was Google bevorzugt

Strategie Next.js Indexierung Wann
SSG generateStaticParams Schnellster Crawl, stabiles HTML Blog, Leistungen, FAQ
SSR dynamic = 'force-dynamic' OK, langsamerer Crawl Dashboard, Personalisierung
ISR revalidate: 3600 OK, Cache + Frische Case-Study-Listing
Nur CSR ganze Page client Risiko leeres HTML Auf SEO-URLs vermeiden

Firmensites und Blogs: SSG/ISR für 95 % der URLs. SSR nur bei sessionabhängigem Content.

Sitemap im App Router

// app/sitemap.ts
import { MetadataRoute } from 'next';
import { getBlogPosts } from '@/lib/content';
import { locales } from '@/i18n';

export default async function sitemap(): Promise<MetadataRoute.Sitemap> {
  const base = 'https://www.example.com';
  const staticPaths = ['', '/leistungen', '/kontakt'];

  const entries: MetadataRoute.Sitemap = [];

  for (const locale of locales) {
    for (const path of staticPaths) {
      entries.push({
        url: `${base}/${locale}${path}`,
        lastModified: new Date(),
        changeFrequency: path === '' ? 'weekly' : 'monthly',
        priority: path === '' ? 1 : 0.8,
      });
    }
  }

  const posts = await getBlogPosts();
  for (const post of posts) {
    entries.push({
      url: `${base}/${post.locale}/blog/${post.slug}`,
      lastModified: post.updated,
    });
  }

  return entries;
}

In GSC einreichen: https://www.example.com/sitemap.xml. Mit ISR aktualisiert sich die Sitemap beim Build, kein manueller Eintrag pro Post.

robots.txt

// app/robots.ts
import { MetadataRoute } from 'next';

export default function robots(): MetadataRoute.Robots {
  return {
    rules: { userAgent: '*', allow: '/', disallow: ['/api/', '/admin/'] },
    sitemap: 'https://www.example.com/sitemap.xml',
  };
}

GSC → Settings → robots.txt-Tester. /api/ blockieren OK; /_next/ nur bei Bewusstsein (Google braucht JS/CSS).

Mehrsprachigkeit und hreflang

Gleiche translationId im Blog-Frontmatter (z. B. google-search-console-indexing-nextjs-2026) plus alternates.languages in Metadata = konsistentes hreflang. Fehler: DE-Seite canonical auf EN, Google indexiert eine Version, Rest „Duplicate without user-selected canonical“.

Dynamische Daten (Formulare) in Branchly (branchly.cloud) beeinflussen Crawl nicht, öffentliche Seiten dürfen kein Login verlangen.

Core Web Vitals und Indexierung

CWV ist kein direkter „Index-Schalter“, aber langsames Mobile-LCP senkt Crawl-Effizienz. Nach Deploy auf DevStudioIT Cloud:

  • next/image mit priority auf LCP
  • Font display: swap
  • Layout Shift unter Cookie-Banner vermeiden

GSC → Experience → Core Web Vitals, „Poor“-URLs vor Massen-Indexierung beheben.

Diagnose, 10 Punkte wenn „nichts indexiert wird“

  1. curl -I URL, 200, nicht 403/401
  2. Seitenquelltext, H1 im HTML (nicht nur nach Hydration)
  3. Suche site:example.com, wie viele Seiten indexiert
  4. GSC Coverage, dominierender Ausschlussgrund
  5. noindex / X-Robots-Tag in Headers
  6. Canonical zeigt auf andere Domain (Staging-Leak)
  7. Sitemap mit 404-URLs
  8. Redirect-Loop www/apex
  9. Content <300 Wörter auf Kern-Landings
  10. Keine internen Links zu neuen Unterseiten

FAQ

Wie lange nach Indexierungsanfrage?

Stunden bis 2 Wochen, abhängig von Domain-Autorität. Neue Domain langsamer als Update auf etablierter.

Indexiert Google Next.js-JavaScript?

Ja, Rendering-Queue. SSR/SSG liefert schnelleres, zuverlässigeres Ergebnis als reines CSR.

Separate Sitemap pro Locale?

Eine Sitemap mit allen URLs + hreflang in Metadata reicht für die meisten Projekte.

/api/ in Sitemap?

Nein, API nicht indexieren. Nur öffentliche HTML-Seiten.

Staging auf DevStudioIT Cloud, nicht indexieren?

Basic Auth, noindex in Metadata, Subdomain + Disallow in robots. Nie derselbe Canonical wie Produktion.

CTA

Next.js-Site fehlt in Google oder GSC zeigt hunderte Fehler?

Ähnliche Beiträge

Sitemap.xml und RSS-Feed in Next.js App Router, Technisches SEO 2026
3 Min. Lesezeit
FAQPage-Schema und Rich Results, Wann Google FAQs zeigt (2026)
4 Min. Lesezeit
robots.txt im Next.js App Router, Crawl-Budget und Disallow-Fallen (2026)
4 Min. Lesezeit

Über den Autor

Wir bauen schnelle Websites, Web/Mobile-Apps, KI-Chatbots und Hosting — mit Fokus auf SEO und Conversion.

Empfohlene Links

Von Theorie zu Produktion — Branchly, Hosting-Stack und Referenzen.

Gefällt euch unser Ansatz? Lasst uns gemeinsam bauen.

Projektkonfiguration starten