Skip to main content
SEO Guide

Next.js SEO checker: diagnose URLs and metadata

Before a Next.js SEO check, establish whether the project uses App Router or Pages Router. For App Router, sample a static route, a data-driven route, and a missing slug to inspect metadata, content state, and response behavior together.

Compare output across route types

Read titles, descriptions, and canonicals for the static and dynamic pages. Unrelated routes sharing one title warrant reviewing parent layouts and generateMetadata. A localhost or preview canonical points toward metadataBase or domain configuration. When metadata streams, inspect the full response and user-agent behavior; a parser limited to the initial head can overlook information.

Exercise publication and caching states

Choose a record whose title changed and check whether metadata and visible text became current together. If one remains stale, investigate caching and invalidation instead of hiding the issue with extra client-component tags. Request a missing record and inspect not-found behavior and robots output. Do not create artificial production content for a test; reproduce edge states in the project's automated test environment.

Inspect language routes and discovery feeds

Follow Vietnamese and English links from the website and compare self-canonicals with reciprocal alternates. Review the production sitemap for preview-domain or draft entries. Match robots rules against important public routes. When an HTML crawler cannot reproduce Google's rendering, document that limitation and use URL Inspection before making broad configuration changes based on incomplete observations. Retest the original sample set after deployment to verify both data freshness and metadata output.

A worked publishing scenario

Illustrative scenario: in-app navigation displays a new title while a direct request still returns the previous one. Compare both access methods, cached data, and deployment timing before changing metadata declarations. Read the complete response for the relevant user agent. Do not add another client-generated title when the underlying record has not been refreshed. Retest another dynamic route and the translated product so a local navigation workaround is not reported as a release-wide correction to server-rendered metadata.

Run a check and interpret the evidence

Submit one representative public URL to the free SEO checker below. Record its status, title, description, and canonical alongside the exact address and time of the check. Group repeated issues by their responsible template or configuration so a single targeted fix can be retested on multiple pages. A missing field and an intentional exclusion need different decisions.

An HTTP/HTML audit observes public responses. It does not sign into the platform, inspect every administrative setting, reproduce every client-side rendering behavior, or prove that Google has indexed a page. For search-engine evidence, compare Search Console URL Inspection and subsequent crawl data. Recheck the original URL after publication and cache refresh instead of interpreting a changed score alone as proof that the underlying issue is resolved.

Official references

Advertisement

Frequently asked questions

Does a parser missing metadata prove a Next.js SEO defect?
Not necessarily. Account for router, metadata streaming, user-agent behavior, and the complete response; compare URL Inspection before concluding.
Can Vietnamese and English pages both appear on Google?
Yes, each complete public translation can be eligible for indexing at its own URL. Use self-canonicals, reciprocal hreflang and sitemap entries. Google makes the final indexing decision.
Does a successful audit guarantee indexing?
No. An audit reports observable issues, not a search-engine indexing or ranking promise. Verify discovery and crawl status with Search Console.

Check your website SEO now

Scan the important SEO factors for free and get fix suggestions in 60 seconds.