The viewport meta tag tells mobile browsers to use the device width. Without it, pages render at a virtual desktop width and text becomes unreadable. Add width=device-width, initial-scale=1, do not disable zoom, and verify the tag is in the server response.
The extended brief explains when this works, when it does not, and the trade-offs. Join the waitlist and it unlocks for every tip when sign-in opens; MCP access is the paid part.
Export `viewport` from the root layout (`export const viewport: Viewport = { width: 'device-width', initialScale: 1 }`); Next.js emits the meta tag server-side.
astro
Add `<meta name="viewport" content="width=device-width, initial-scale=1" />` to the layout head; it is included in the static HTML.
wordpress
Themes normally add the tag in `header.php`; if a plugin strips it, re-add it with `add_action('wp_head', ...)` at priority 1.
Verify indexing with URL Inspection — URL Inspection shows the indexed version Google holds for one URL: crawl time, selected canonical, status code and blocked resources.
Canonicalize duplicate URLs — Duplicate URLs split signals across protocol, host, slash and parameter variants.
Make JavaScript content crawlable — Google renders JavaScript, but rendering costs time and AI retrieval systems often read raw HTML.