Sign Up

Username
Email
Password
Confirm Password
Already have an account?

Sign In

Username
Password
Forgot password?
Don’t have an account?

Recovery

Email

Online Page Source Viewer

See what the browser renders versus what a search engine crawler sees: raw HTML source code against the fully rendered page version

            
    
  • Check that meta tags, canonical, hreflang and JSON-LD are present in the source HTML, and not added only after JavaScript runs.
  • Understand whether a search bot sees the content immediately or only after JS.
  • Find JavaScript errors and unavailable resources that "break" a page.
  • Detect cloaking: different content for bots and for regular users.
  • Find malicious injections, third-party scripts and suspicious redirects on a hacked site.

Why are the Network, Console and Timing tabs empty?

In "Raw HTML" mode the page is fetched with a plain HTTP request, without a browser, so these tabs are not populated. They only work in "After JavaScript execution" mode.

Why is the console empty?

The console shows only messages that appeared while the page was loading (until the network went idle, plus 3 more seconds) and JavaScript errors. If the site logs nothing and has no errors, an empty console is expected. Events that happen later (clicks, scrolling, late timers) are not captured.

Why does the HTML differ from "View page source" in my browser?

Possible reasons:

  • you are logged in, while the tool visits the site as an anonymous guest without cookies;
  • the site uses personalization, A/B tests or different versions by region and language;
  • cookie consent banners and similar elements behave differently for a new visitor.

Why do I only see an empty <div id="app"> in "Raw HTML" mode?

The site is a single-page application (React, Vue, etc.): its content is created by JavaScript after the page loads. For such sites, use "After JavaScript execution" mode.

What is the difference between DOM "before" and "after"?

"Before" is captured right after the page loads, "after" is captured 3 seconds later. The difference shows what the site loads or changes asynchronously.

Why can't I see content that loads on scroll or on click?

The tool does not scroll the page or click anything. Lazy loading, "Show more" buttons, tabs and accordions stay in their initial state.

Why isn't the content of iframes and Shadow DOM shown?

The result contains only the main document of the page. Nested frames and Shadow DOM are not included.

Why do I get a 403, a captcha or a Cloudflare challenge page?

The request is made from our server's IP address, not yours. A site may block data-center addresses, certain countries and automated requests, or require a browser check.

What does the User-Agent selection (Mobile, Googlebot, iPhone) do?

We send the corresponding User-Agent string, and the site may return a different version of the page. Important: the request still does not come from Google's IP addresses. Sites that verify the authenticity of a bot (for example via reverse DNS) may return a different response or block the request. So the result does not guarantee what the real Googlebot sees.

Can I check a page behind a login or password protection?

No. Passing cookies, authorization headers and sessions is not supported.

Does the tool work with localhost, internal addresses and local network IPs?

No. Private and reserved addresses are blocked (you will see a "URL blocked" message). This protects against scanning of internal networks.

Which protocols are supported?

Only http and https.

Why do I get a "Render service unavailable" error or a timeout?

Rendering waits up to 60 seconds for the page to load. Sites with constant requests (chats, WebSockets, analytics, long polling) may never reach the "network idle" state. The service may also have been temporarily unavailable, so try again later.

Is there a limit on HTML size?

Yes. In "Raw HTML" mode the result is truncated to 5 MB.

How is the encoding detected, and why do I see garbled text?

UTF-8, Windows-1251 and ISO-8859-1 are supported. If the text displays incorrectly, the site probably declares its encoding wrongly.

Does the tool follow redirects?

Yes. In "Raw HTML" mode the request follows redirects, so you see the content of the final page, not the one whose address you entered.

Why are images, fonts, and videos marked as blocked? Is this an error on the website?

No. We intentionally block images, media, and fonts to speed up the inspection and reduce bandwidth usage. This does not indicate a problem with your website.

Why can't I see a screenshot or the visual appearance of the page?

The tool displays the page's code, network activity, and console output rather than its visual appearance. In addition, the page is loaded without images and fonts, so its appearance would differ from what users see on the actual website.

Can I trust the numbers on the Timing tab?

They can serve as a rough guide, but they are not a replacement for PageSpeed Insights or Lighthouse. Measurement is done from our server, images and fonts are not loaded, and time is counted until the network goes quiet rather than by real-user metrics. These numbers do not reflect the actual speed your visitors experience.

Leave feedback about this tool
5 / 5 (3 votes)

Comments

Why you need to view a page's source code

When a web browser loads a website, it receives the source HTML from the server and as it processes that HTML, it can execute JavaScript that significantly changes the page structure, loads additional content, and forms the final DOM. That's why what you see through "View Page Source" in a browser is often different from what actually gets displayed to the user. Search engine crawlers, in turn, don't always fully execute dynamic scripts, which makes the difference between raw HTML and the rendered version of a page an important factor in SEO.

Raw HTML and DOM after JavaScript rendering

Our online tool lets you get both versions of a page. The "Source HTML" mode shows the HTML exactly as the server sends it to the browser, without executing any scripts. The "After JavaScript Execution" mode loads the page in an isolated, real browser environment, waits for JavaScript to finish running, and returns the final DOM, including elements added dynamically. Comparing these two versions helps you understand which content search engines can index without issues and which requires full rendering.

Besides the HTML code, the tool shows the network requests a page makes while loading, browser console messages including JavaScript errors and logs, and page load and DOM build timing. This data helps you spot broken scripts, slow-loading resources, and issues with third-party file loading.

Please complete the captcha to continue: