Generative Engine Optimization
When your JavaScript hides you from the machines
A page can look perfect in a browser and be nearly empty to a machine. It happens when the important content is assembled by JavaScript after the page loads. A human waits a beat and sees everything. A crawler that does not run scripts, or runs them inconsistently, sees the bare shell that arrived first, and that shell is often close to blank.
Search engines have gotten better at handling this, but the crawlers behind AI answers are a mixed bag, and many are conservative about executing scripts at scale. So the safe assumption is that anything which only exists after the scripts run might as well not exist. Your key facts, your product details, the sentences you most want quoted, all of it needs to be present in the HTML the server sends, not conjured later on the client.
The fix is a technical one, familiar to anyone who has done modern SEO. Render the important content on the server, or pre-render it, so it is in the initial response. Reserve client-side scripting for interactivity, not for delivering the substance of the page. Test by viewing the raw source or fetching the page without a browser, and check that the things you care about are actually there.
It is an unglamorous audit that quietly decides whether all your other GEO work is even visible. Beautiful content that a crawler never sees does nothing for the answer.