Why it matters
Google indexes the mobile rendering; without width=device-width the page renders at desktop width on phones. Blocking zoom fails accessibility.
How to fix it
Emit <meta name="viewport" content="width=device-width, initial-scale=1">. Next.js adds it by default; don't override with maximum-scale=1 or user-scalable=no.
Example
// app/layout.tsx — themeColor etc. go in viewport, never maximumScale: 1
export const viewport: Viewport = { width: 'device-width', initialScale: 1 }References
More seo rules
void seo reports 60 rules in this category. What search engines need from the raw response: status codes, titles and descriptions in <head>, self-referencing canonicals, one h1, crawlable links, Open Graph, icons, robots.txt and a sitemap with real dates.
rsc-payload-ratioInline RSC flight payload dominates the HTMLnot-httpsPage served over plain HTTPorigin-redirectshttp:// or www/apex variant doesn't redirect to the canonical origin in one hophtml-lang<html lang> missing or not a valid BCP 47 tagcharsetCharacter encoding not declared earlytitle-missingNo single non-empty <title> in <head>title-lengthTitle length outside 10–60 characters, or keyword-stuffedmeta-description-missingNo meta description in <head>