Semrush Web site Audit Can Now Render JavaScript

Does your website use JavaScript (JS)? Many web sites do.
If it does, you should utilize our Web site Audit device to uncover extra points than earlier than.
Google renders your webpages’ unloaded JS to see its full content material and to verify your on-line guests can simply entry all the things too. Now, our Web site Audit bots render JavaScript in the same method to establish any hidden points in your website.
Right here’s how we have been in a position to do this.
What’s New in Web site Audit?
We’ve allotted extra assets so we are able to crawl and render your website’s JavaScript. This implies we are able to appropriately crawl websites largely constructed on JavaScript, even when they’re client-side rendered.
To indicate you the distinction, check out a earlier than and after:
Here is one audit with JS rendering enabled and one other audit (of the identical website) with JS disabled.

See the massive distinction between the variety of errors and warnings earlier than and after? With JS enabled, it may correctly establish the problems that must be fastened.
How Does JavaScript Affect search engine optimisation and Why Does It Matter?
JavaScript rendering is when a website’s JavaScript recordsdata are correctly executed and exhibited to web site guests.
How these recordsdata flip from traces of code to an interactive web site in your browser can occur in a couple of methods (like client-side vs. server-side rendering). Every has its professionals and cons. Nevertheless, if you wish to audit a website that makes use of JS and consumer aspect rendering, you may run into issues if the crawler cannot render the JS.
Why does that occur? Briefly, it comes right down to assets.
Google has the assets to load each static HTML and injected HTML as soon as a website’s JS is executed. However some website auditing bots don’t have the assets to deal with that job (like ours earlier than this replace).
Right here’s what Airbnb would seem like to a bot that may’t render JS.

And right here’s what it could seem like to a bot that may execute and render JavaScript.

What Occurs When Google Renders a Web site’s JavaScript?
When Google renders a website’s JavaScript, it first sees if any JS must be executed within the first place. If it does, it goes right into a queue after which will get executed/rendered to disclose the webpage’s full content material. Then, Google indexes it.
Right here’s what that appears like in line with Google:

Previously, we weren’t capable of execute that stage above the place a bot processes the JavaScript and renders it. Now our course of is comparable (minus the indexing).
Why Ought to You Allow JS Crawling in a Web site Audit?
You may not see the complete image of your website’s points with out enabling JS in your subsequent website crawl.
Enabling JS might assist you discover related points that have been probably missed earlier than.
Particularly for websites constructed on the app shell mannequin (the place core elements are loaded, however often not the majority of a website’s content material—consider the sooner Airbnb instance).
Some JavaScript websites might use the app shell mannequin the place the preliminary HTML doesn’t include the precise content material and Google must execute JavaScript earlier than having the ability to see the precise web page content material that JavaScript generates.
How Does Web site Audit JavaScript Rendering Work Now?
1. We obtain the preliminary HTML from the online server throughout crawling
2. We load the JS assets which are linked on this HTML
3. Execute and render JS code
4. Wait 5 seconds
5. Web site Audit makes use of the ultimate HTML for additional evaluation steps
While you select to disable JS in Web site Audit, we use the unique HTML as we did earlier than.
Does Enabling JS Have an effect on My Limits?
No, it won’t have an effect on your limits when you select to allow JS on Web site Audit. Nevertheless, solely these with Guru or Enterprise subscriptions can use this characteristic.
Will It Set off Trackers, Adverts, and Occasion Handlers?
No, Web site Audit won’t set off trackers, advertisements, and occasion handlers (i.e. JS triggered by clicking or scrolls). Right here’s what we block when our Web site Audit bot crawls a website:
- GA4
- GA3
- Yandex Metrica
- Amplitude
- Adobe Analytics
- Google Adverts
- OWOX
- SpeedCurve
Does Web site Audit Use Chrome for Rendering JS?
Sure, we use the most recent Chromium rendering engine. So, we use the identical expertise as Google does for crawling.
The best way to Crawl Your Web site’s JS with Web site Audit
Crawling your website’s JS with Web site Audit is easy. First, go to the Web site Audit device and click on the ‘create undertaking’ button.

Subsequent, it would immediate you to arrange the audit. The one distinction is that you simply’ll select ‘enabled’ for ‘JS-rendering’ within the crawler settings. You may nonetheless depart it disabled when you’d like or change it later.

You may examine in case your audit is rendering your website’s JS by trying up right here within the report:

The best way to Crawl an Present Challenge’s JS with Web site Audit
If JS rendering isn’t enabled on a present undertaking, you possibly can change that within the Web site Audit settings.

From right here, simply click on the “re-run marketing campaign” button to crawl your website with JS enabled. You may disable JS rendering in the identical approach if you wish to change it again later.
Discover All Of Your Web site’s Points with JS Rendering
JavaScript makes websites extra interactive, dynamic, and customized. For instance, Netflix makes use of JS to replace the physique of a single net doc for a speedy, seamless expertise.
Equally, many web sites use the app shell mannequin (in addition to client-side rendering) to profit each the consumer agent and the positioning proprietor in their very own methods. Your website might use JS to attain the identical outcomes. And in case your website does, we are able to establish what points Google might run into with Web site Audit’s new JS rendering characteristic.