A technical implementation guide to titles, descriptions, canonicals, OG/Twitter images, and favicons in Next.js App Router.
Build one consistent metadata source
Title, description, and canonical describe page identity to different consumers. In Next.js App Router, static metadata or generateMetadata is more auditable than scattered head tags.
Add the brand once in title templates. If a child title already contains ByteQuant, a global template may duplicate it. Inspect built HTML to catch composition errors.
Treat canonical and hreflang together
Canonical signals the preferred indexable URL; it is not a redirect and remains a hint. Each language page should canonicalize to itself while reciprocal hreflang points to tr-TR, en-US, and an intentional x-default.
Canonical and Open Graph URLs should be absolute HTTPS final destinations. Keep query, trailing-slash, and static-export policies consistent.
- Self-canonicalize each localized page.
- Keep hreflang reciprocal.
- Generate sitemap alternates and metadata from the same routing source.
Design social images as a content contract
Open Graph and Twitter Card tags suggest title, description, and image; platforms may alter or cache the result. A 1200×630 canvas is a common baseline, with critical text kept away from edges.
Image URLs must be public, absolute, and served with the right Content-Type. A local preview is not a crawler test—verify after deployment with platform debuggers and HTTP headers.
Verify favicon family and manifest
A high-resolution square PNG can serve modern browsers, but its shape must remain legible at tiny tab sizes. Align rel=icon, Apple touch icon, and manifest entries on one brand source.
Declare real pixel dimensions and leave safe space for maskable icons. Favicons are cached aggressively. Generated markup does not replace checks for delivery, accessibility, or indexing.
Visual suggestion: One metadata source feeding search results, social cards, browser tabs, and PWA icons. This article is general information, not legal or security advice.