Technical SEO for a static Next.js site: complete 2026 checklist
A Next.js static export site reaches 100/100 SEO score by checking 8 points: metadataBase, generateMetadata per page, sitemap.ts + robots.ts, multi-language hreflang, unified @graph JSON-LD, BreadcrumbList, FAQPage/HowTo schemas, and llms.txt for LLMs.
Next.js App Router makes technical SEO radically simpler than in 2020. With native Metadata API, sitemap.ts and robots.ts, no more plugins or hacks needed. But reaching 100/100 on Lighthouse SEO still requires knowing the 8 points below. Checklist we apply at OptionWeb on all our projects.
1. Next.js Metadata API
The foundation. Since Next.js 13, the native Metadata API covers 100% of on-page SEO needs. Two objects: metadata (static) and generateMetadata (dynamic).
export const metadata: Metadata = {
metadataBase: new URL('https://optionweb.dev'),
applicationName: 'OptionWeb',
generator: 'Next.js',
referrer: 'origin-when-cross-origin',
};2. Native sitemap.ts and robots.ts
No more next-sitemap plugin. Next.js App Router exposes a special route to emit a dynamic sitemap.
export const dynamic = 'force-static';
export const revalidate = false;
export default function sitemap(): MetadataRoute.Sitemap {
return SUPPORTED_LANGS.map(lang => ({
url: `https://optionweb.dev/${lang}`,
lastModified: new Date(),
changeFrequency: 'weekly',
priority: 1.0,
}));
}3. Multi-language hreflang
For a multilingual site, hreflang is critical. Each URL must list all its language versions AND vice versa (reciprocal clusters). Without this, Google ignores hreflang.
Verify with the Hreflang Tags Testing Tool (Merkle) that each URL points to all its variants and each variant points back.
4. Unified @graph JSON-LD
The modern approach: a single <script type="application/ld+json"> containing a @graph that gathers Organization, LocalBusiness, WebSite, WebPage, Person, Article, linked via @id. Easier to maintain than ten separate scripts.
sameAs is critical: it links your entity to Google's Knowledge Graph. Include at minimum Wikidata (create a Q-entity), LinkedIn, Crunchbase, and official social networks.
5. BreadcrumbList schema
Emit BreadcrumbList on every content page. Improves SERP (visible breadcrumbs) and LLM extraction context.
6. FAQPage and HowTo for AEO
Google reduced rich display of these schemas in 2023, but LLMs consume them massively to generate responses. Keep implementing — it's capital for AEO/GEO.
Strict rule: Q&A must be visible on screen. Otherwise possible manual penalty. For HowTo, structure each step with name, text, optionally image.
7. Speakable for voice search
Schema in beta at Google but used by Siri (since iOS 18.2 integrated with ChatGPT) and Alexa. Marks site zones that voice assistants should pronounce in priority.
Add HTML data-speakable="true" attribute on TL;DR summaries, first sentences of sections, key answers.
8. llms.txt for LLMs
Emerging standard (Jeremy Howard, September 2024) adopted by Anthropic, Mintlify, Stripe, Cloudflare, Vercel. A Markdown file at public/ root that summarizes the site for LLMs.
Also create llms-full.txt with extended content for LLMs that can't crawl.
How to verify the result
- Lighthouse SEO score — target 100/100 via Chrome DevTools or PageSpeed Insights.
- Google Rich Results Test — validates all schemas. URL: search.google.com/test/rich-results.
- Schema.org Validator — full JSON-LD validation with warning detection.
- Hreflang Tags Testing Tool (Merkle) — verifies multi-language cluster reciprocity.
- Google Search Console — 'Coverage' for indexation, 'Rich Results' for detected schemas, 'Core Web Vitals' for CrUX metrics.
- Bing Webmaster Tools — not to be neglected, it's the retrieval source for ChatGPT Search via OAI-SearchBot.
