Skip to content
PreferiumJoin the waitlist

Technical SEOAEO

What AI crawlers see before JavaScript runs

Content added in the browser can be missing from the HTML a crawler receives. Check the server response before relying on a JavaScript SEO fix.

Photograph: over the shoulder of a developer typing at a laptop showing an out-of-focus code editor.
Jump to a section

A page can look complete in your browser while its server response contains little more than an empty layout and a bundle of scripts. Before relying on an SEO change, check which version a crawler can actually read.

Crawling and rendering are separate steps

Google can render JavaScript, but fetching a page and rendering it are separate stages with their own constraints. Google’s JavaScript SEO documentation explains the process and its limits.

Other crawlers and retrieval tools do not necessarily render the page. Nor do all visits from one provider serve the same purpose. OpenAI’s crawler documentation, for example, distinguishes search crawling, training and user-requested fetches. A visit from GPTBot is not evidence that a page appeared in a ChatGPT answer.

The reliable starting point is the response itself: are the title, main heading, useful text and important links already there?

Where browser-only changes can be missed

Some SEO tools wait for the original page to load and then use a script to change its headings, metadata or content. A person sees the edited page. A fetcher that reads only the initial HTML receives the original version.

The same issue affects navigation. If important links appear only after a script runs, a crawler that does not execute that script may never discover the linked pages. A logged experiment on JavaScript-only links illustrates that distinction.

Serving a separate version to selected user agents introduces another maintenance problem: bot identities change, detection can fail, and the versions can drift apart. Any rendering approach should preserve equivalent content for readers and crawlers.

Check the response, then the browser

Fetch a public page and compare its response HTML with the rendered page. Check the main content as well as the title, description, canonical URL and structured data. A successful HTTP status alone is not enough; a challenge page can also return 200.

A user-agent override can help diagnose a difference, but it does not reproduce a verified provider request. Combine the check with real crawl logs and the relevant provider’s inspection tools.

Server rendering, static HTML and edge rewriting can all make content available before browser scripts run. Preferium AI Edge uses edge delivery: the change is applied to the served response rather than written back into the client’s CMS. The free AI scan provides a starting view of the returned HTML and crawler access signals.

Want this running under your brand?Preferium AI Edge is a white-label platform agencies resell to their clients: your brand, your Stripe, your packages and prices. Registration opens to agencies from the waitlist first.Talk to usJoin the waitlistHow white label works

Build your agency on Preferium

Partner registration opens by invitation from the waitlist, and there is no date yet. Read the agency agreement and how partner billing works before you decide.

  1. Connect a client site
  2. Set the control level
  3. Run under your brand

Privacy choices

Choose which optional technologies Preferium AS may use. All of them are off until you choose.

Analytics: Google Analytics 4 counts page views. Google may receive the page address, referrer, network address, browser and device details, and online identifiers. Browser storage: _ga, _ga_*: Up to 730 days. Renewed on activity. The browser may shorten the storage period.

Provider: Google Ireland Limited. Google may transfer data to the United States.

See the cookie notice, the privacy notice and theterms.

Necessary technologies Used for site functions

Preferium AS and Cloudflare deliver the site and protect forms against abuse. A local preference remembers if you pause animation. When optional tracking is available, the site can also remember your documented privacy choices.

Consent receipt
Provider: Preferium AS. HttpOnly receipt that documents and retrieves your consent choice. Name in the browser: __Host-preferium_consent. Storage period: The receipt is valid for up to 180 days without rolling renewal.
Local privacy choices and pending rejections
Provider: Preferium AS. Local storage of privacy choices and pending rejections. The entry alone can never allow optional technologies; a valid server receipt is required. Name in the browser: preferium-consent-v2. Storage period: Until the entry is overwritten or the browser site data is cleared. No automatic timed deletion is configured.
Privacy choice synchronization between tabs
Provider: Preferium AS. The latest message that synchronizes privacy choices and pending rejections between tabs. The message can only close optional technologies and trigger a new server check. Name in the browser: preferium-consent-sync-v1. Storage period: Until the entry is overwritten or the browser site data is cleared. No automatic timed deletion is configured.
Motion pause preference
Provider: Preferium AS. Session storage restores the requested accessibility preference between pages in this tab. Nothing is sent to a server. Name in the browser: preferium-motion-paused. Storage period: Until this browser tab session ends.
Cloudflare Turnstile
Provider: Cloudflare. Abuse protection that loads only on forms where Turnstile is necessary. Storage period: Short-lived control value tied to a form submission.
Analytics

Helps us understand how the site is used, when you consent.

Provider: Google Ireland Limited. The data may include the page address, referrer, network address, browser/device, online identifiers and usage events.

_ga, _ga_*
Processes site usage for aggregated analytics after specific consent. Storage period: Up to 730 days. Renewed on activity. The browser may shorten the storage period.

You can withdraw your choice via Privacy choices. That stops further optional loading but does not recall data already sent to Google. We attempt to delete known first-party values; the browser may prevent deletion of third-party values.

How Google uses and is responsible for data · How Google uses information from partner sites · Google privacy policy