A page can have three materially different SEO states: the HTML returned by the server, the DOM a user sees after JavaScript runs, and the response returned when the request uses a Googlebot Smartphone user-agent string. Comparing those states on the current URL is a fast way to expose rendering gaps and user-agent-specific regressions.
The three versions in one report
- Source HTML: a direct request to the current URL without cookies.
- Rendered DOM: the live document after the page's JavaScript has run in your active tab.
- Googlebot UA: a cookie-free request using Googlebot Smartphone's user-agent string.
What the extension compares
Source vs Rendered vs Googlebot SEO checks the signals most likely to change during rendering or request handling:
HTTP status, title, meta description, H1, canonical, meta robots, X-Robots-Tag, visible text word count,
internal links, and JSON-LD schema types. The report separates ordinary render differences from critical bot gaps and
can be copied into a developer ticket.
| Difference | What it may indicate |
|---|---|
| Source has little content; rendered DOM is complete | Important content or links depend on client-side JavaScript. |
| Canonical or robots appears only after rendering | Search directives are injected late and deserve crawler verification. |
| Googlebot-UA response differs from normal source | CDN, WAF, server, or application logic varies by user agent. |
| Schema types disappear in one state | Structured data is conditional, injected, or stripped on one delivery path. |
| Internal-link count drops sharply | Navigation or related links are unavailable in that version. |
A practical review workflow
- Open the exact public URL you want to audit and wait for its normal interface to finish loading.
- Launch the extension from the Chrome toolbar; the comparison opens in the side panel.
- Start with the verdict, then review every signal marked as a render gap or bot gap.
- Copy the report and attach it to the issue with the affected URL, expected value, and acceptance criteria.
- After the fix, rerun the same URL and confirm the intended signals match across all three states.
How to interpret a JavaScript rendering gap
A difference is not automatically a defect. Analytics widgets, account controls, timestamps, and interactive content may legitimately exist only after JavaScript runs. Focus on elements search systems need to understand and discover the page: the main content, primary heading, canonical, indexability directives, structured data, and crawlable internal links.
If source HTML is thin but the rendered DOM is complete, test a representative set of URLs from the same template. A single-page comparison is ideal for diagnosis; a rendered and non-rendered crawl is better for measuring the pattern across a site.
What “Googlebot UA” does and does not mean
The extension temporarily changes the User-Agent header for one exact URL. The request still comes from
your browser and IP address. It is not a verified Google crawler request, Google Search Console URL Inspection, or
Google's Web Rendering Service. The result can reveal user-agent-dependent delivery, but it cannot prove exactly what
Google fetched or rendered.
Escalate a suspicious difference with first-party evidence: check URL Inspection, review server or CDN logs, verify Googlebot IPs when relevant, and reproduce the response outside the extension. The comparison is a diagnostic lead, not a claim about Google indexing.
Privacy model
The extension reads the active tab after you invoke it and makes two direct, cookie-free requests to that exact URL. Page content, URLs, reports, and browsing history are not sent to 2-UA or an analytics service. The temporary Chrome session rule used for the user-agent request is removed immediately after the request completes.
Run the three-way comparison
Install the extension, open a public page, and review its source, rendered, and Googlebot-UA signals side by side.
Install Source vs Rendered vs Googlebot SEO