What Is JavaScript Web optimization?
JavaScript Web optimization is part of technical Web optimization that focuses on making web sites constructed with JavaScript simpler for search engines like google to crawl, render, and index.
Frequent duties embody the next:
- Optimizing content material injected by way of JavaScript
- Appropriately implementing lazy loading
- Following inner linking finest practices
- Stopping, discovering, and fixing JavaScript points
And others.
Word: If it is advisable to refresh your data about fundamental JS, learn our information: What Is JavaScript & What Do You Use It For?
How Does Google Crawl and Index JavaScript?
Google processes JS in three phases:
- Crawling
- Rendering
- Indexing

Google’s internet crawler (often called Googlebot) queues pages for crawling and rendering.
It crawls each URL within the queue.
Googlebot makes a request. Then the server sends the HTML doc.
Subsequent, Googlebot decides which sources it must render the web page’s content material.
This implies it crawls the HTML. Not JS or CSS recordsdata as a result of rendering JavaScript requires immense sources.
Take into consideration all of the computing energy Googlebot must obtain, learn, and run JS for trillions of pages on almost 2 billion websites.
So, Google defers rendering JavaScript. It queues something unexecuted to course of later as sources turn out to be out there.
As soon as sources enable, a headless Chromium (Chrome browser with out a consumer interface) renders the web page and executes the JavaScript.
Googlebot processes the rendered HTML once more for hyperlinks. And queues the URLs it finds for crawling.
Within the remaining step, Google makes use of the rendered HTML to index the web page.
Server-Aspect Rendering vs. Consumer-Aspect Rendering vs. Dynamic Rendering
Google JavaScript indexing points are largely based mostly on how your web site renders this code: server-side, client-side, or dynamic rendering.
Server-Aspect Rendering
Server-side rendering (SSR) is when JavaScript is rendered on the server. A rendered HTML web page is then served to the consumer (browser, Googlebot, and so forth.).
For instance, whenever you go to an internet site, your browser makes a request to the server that holds the web site’s content material.
As soon as the request is processed, your browser returns the rendered HTML and exhibits it in your display screen.
SSR tends to assist pages with Web optimization efficiency as a result of:
- It might cut back the time it takes for a web page’s important content material to load
- It might cut back structure shifts that hurt the consumer expertise
Nonetheless, SSR can enhance the period of time it takes in your web page to permit consumer inputs.
Which is why some web sites that deal closely in JS choose to make use of SSR for some pages and never others.
Beneath hybrid fashions like that, SSR is often reserved for pages that matter for Web optimization functions. And client-side rendering (CSR) is often reserved for pages that require a number of consumer interplay and inputs.
However implementing SSR is usually complicated and difficult for builders.
Nonetheless, there are instruments to assist implement SSR:
- Gatsby and Subsequent.JS for the React framework
- Angular Common for the Angular framework
- Nuxt.js for the Vue.js framework
Learn this guide to be taught extra about establishing server-side rendering.
Consumer-Aspect Rendering
CSR is the other of SSR. On this case, JavaScript is rendered on the consumer facet (browser or Googlebot, on this case) utilizing the Doc Object Mannequin (DOM).
Moderately than receiving the content material from the HTML doc as in server-side rendering, you get a bare-bones HTML with a JavaScript file that renders the remainder of the positioning utilizing the browser.
Most web sites that use CSR have complicated consumer interfaces or many interactions.
Try this guide to be taught extra about arrange client-side rendering.
Dynamic Rendering
Dynamic Rendering is an alternative choice to server-side rendering.

It detects bots which will have issues with JS-generated content material and delivers a server-rendered model with out JavaScript.
All whereas displaying customers the client-side rendered model.
Dynamic rendering is a workaround and never an answer Google recommends. It creates extra, pointless complexities and sources for Google.
You may think about using dynamic rendering if in case you have a big web site with content material that modifications quickly and wishes fast indexing.
Or in case your web site depends on social media and chat apps that want entry to a web page’s content material.
Or if the crawlers essential to your web site can’t assist a few of the options of your JS.
However actually, dynamic rendering is never a long-term answer. You possibly can be taught extra about establishing dynamic rendering and a few different approaches from Google’s guidelines.
Word: Google typically doesn’t think about dynamic rendering to be “cloaking” (the act of presenting totally different content material to search engines like google and customers). Whereas dynamic rendering isn’t preferrred for different causes, it’s unlikely to violate the cloaking rules outlined in Google’s spam insurance policies.
Make Your Web site’s JavaScript Content material Web optimization-Pleasant
You possibly can observe a number of steps to make sure search engines like google correctly crawl, render, and index your JS content material.
Use Google Search Console to Discover Errors
Googlebot relies on Chrome’s newest model. However it doesn’t behave the identical method as a browser.
Which implies launching your web site doesn’t assure Google can render its content material.
The URL Inspection Device in Google Search Console (GSC) can examine whether or not Google can render your pages.
Enter the URL of the web page you wish to take a look at on the very high. And hit enter.

Then, click on on the “Check Stay URL” button on the far proper.

After a minute or two, the device will present a “Stay Check” tab. Now, click on “View Examined Web page,” and also you’ll see the web page’s code and a screenshot.

Verify for any discrepancies or lacking content material by clicking on the “Extra Information” tab.

A typical purpose Google can’t render JS pages is as a result of your web site’s robots.txt file blocks the rendering. Usually unintentionally.
Add the next code to the robotic.txt file to make sure no essential sources are blocked from being crawled:
Person-Agent: Googlebot
Enable: .js
Enable: .css
Word: Google doesn’t index .js or .css recordsdata within the search outcomes. They’re used to render a webpage.
There’s no purpose to dam these essential sources. Doing so can stop your content material from being rendered and, in flip, from being listed.
Guarantee Google Is Indexing JavaScript Content material
When you verify your pages are rendering correctly, guarantee they’re being listed.
You possibly can examine this in GSC or on the search engine itself.
To examine on Google, use the “web site:” command. For instance, substitute yourdomain.com beneath with the URL of the web page you wish to take a look at:
web site:yourdomain.com/page-URL/
If the web page is listed, you’ll see it present up because of this. Like so:

For those who don’t, the web page isn’t in Google’s index.
If the web page is listed, examine whether or not a bit of JavaScript-generated content material is listed.
Once more, use the “web site:” command and embody a snippet of JS content material on the web page.
For instance:
web site:yourdomain.com/page-URL/ "snippet of JS content material"
You’re checking whether or not this particular part of JS content material has been listed. Whether it is, you’ll see it throughout the snippet.
Like this:

You can too use GSC to see whether or not JavaScript content material is listed. Once more, utilizing the URL Inspection Device.
This time, somewhat than testing the stay URL, click on the “View Crawled Web page” button. And examine the web page’s HTML supply code.

Scan the HTML code for snippets of JavaScript content material.
For those who don’t see your JS content material, it may very well be for a number of causes:
- The content material can’t be rendered
- The URL can’t be found as a result of JS is producing inner hyperlinks pointing to it within the occasion of a click on
- The web page instances out whereas Google is indexing the content material
Run a Web site Audit
Recurrently working audits in your web site is a technical SEO finest follow.
Semrush’s Site Audit device can crawl JS as Google would. Even when it’s rendered client-side.
To start out, enter your area, and click on “Create venture.”

Then, select “Enabled” for JS-rendering within the crawler settings.

After the crawl, you’ll discover any points beneath the “Points” tab.

Frequent JavaScript Web optimization Points & Keep away from Them
Listed below are a few of the most typical points, in addition to some JavaScript Web optimization finest practices:
- Blocking .js recordsdata in your robots.txt file can stop Googlebot from crawling these sources. Which implies it may’t render and index them. Enable these recordsdata to be crawled to keep away from this drawback.
- Google doesn’t wait lengthy for JavaScript content material to render. Your content material might not be listed due to a timeout error.
- Search engines like google don’t click on buttons. Use inner hyperlinks to assist Googlebot uncover your web site’s pages.
- When lazy loading a web page utilizing JavaScript, don’t delay loading content material that must be listed. Primarily give attention to photos versus textual content content material when establishing lazy loading.
- Google usually ignores hashes, so be certain static URLs are generated in your web site’s webpages. Guarantee your URLs seem like this: (yourdomain.com/web-page). And never like this (yourdomain.com/#/web-page) or this (yourdomain.com#web-page).
Take It a Step Additional
For those who use what you’ve realized about JavaScript Web optimization, you’ll be effectively in your strategy to creating environment friendly web sites that rank effectively and customers love.
Able to dive deeper?
We advocate studying the next to be taught extra about JS and technical Web optimization: