Prerendering in the best case speeds up specific processes. When it comes to web browsers the technology could pre-load and render websites to display them faster for the user. This only works if the browser gets the site right. If you look at a standard web search for instance, you will get ten search results by default plus other pages that you could click on. It would be a tremendous waste of processing power and bandwidth if the browser would load all of those pages, especially if the user would only click on one page of the results.
The Google Chrome web browser, and Chromium as well, use prerendering in a limited way. It may be used when you enter a phrase into the Chrome address bar. But which page or pages do get prerendered when this is happening?
That’s easy to find out (thanks to François Beaufort who posted a short demonstration video on YouTube). All you need to do is to open the Google Chrome or Chromium Task Manager to see which pages get prerendered by the web browser.
You can open the Chrome Task Manager with a click on the Wrench icon, the selection of Tools and Task Manager. You can alternatively use the keyboard shortcut Shift-Esc to bring up the Task Manager directly.
Look for Prerender: entries in the Task Manager. The indicator is followed either by the site url that got prerendered or the page title. It may still take time to identify the prerendered link on the page as Google is not displaying the information in the web browser.
Prerendering in the web browser is automatically enabled. Users who do not want to use the feature can disable it the following way. Enter chrome://flags in the address bar and locate the “Prerender from omnibox” option.
Enables prerendering of suggestions from the Omnibox and predicts appropriate network actions (prerendering, Instant, DNS preconnect) by calculating a confidence value for each Omnibox result.
Switch to disabled in the pulldown menu to turn the feature off.
Prerendering is a technology that can speed up web browsing by loading web pages in advance. The advantage of prerendering is an almost instant page loading time for prerendered pages. There are disadvantages though. The average web page has anywhere from a few dozen to more than one hundred links. Prerendering all link targets would send bandwidth usage to the roof. It would also take a long time to prerender them all. That’s why developers use algorithms to prerender links with the highest click probability.
Google for instance knows that the majority of search engine users will click on the three first links in the search results, making those results optimal prerendering targets. But this is guesswork, which means that it happens that the wrong pages are prerendered. It should also be clear that usually more pages are prerendered than visited by the user.
Why the introduction? Because Google has added an experimental feature to Chrome Dev that introduces prerendering in the browser. The feature is enabled by default in Chrome Dev.
Chrome Dev users who do not want to use the feature can disable it in the Chrome Options. The easiest way to get there is to load chrome://settings/advanced in the browser.
Locate Predict network actions to improve page load performance and uncheck the preference to disable prerendering in Chrome.
Google.com's new Instant Pages feature, announced earlier today, makes some sites appear to load almost instantly when you click on them from the search results page. The feature is enabled by prerendering, a technology that we built into the upcoming version of Chrome, currently in the Dev channel. You can see Instant Pages in action in this video:
What is prerendering? Sometimes a site may be able to predict with reasonable accuracy which link the user is most likely to click on next--for example, the 'next page' link in a multi-page news article. In those cases, it would be faster and better for the user if the browser could get a head start loading the next page so that when the user clicks the page is already well on its way to being loaded. That's the fundamental idea behind prerendering. The browser fetches all of the sub-resources and does all of the work necessary to display the page. In many cases, the site simply seems to load instantly when the user clicks.
Although Google.com is the most high profile site to use prerendering, it's a technology that is available to any site. Triggering prerendering well, however, is challenging to do correctly and will only be useful to a handful of sites that have a high degree of certainty of where their users will click next. Triggering prerendering for the wrong site could lead to the link the user did click on loading more slowly.
The vast majority of sites will automatically work correctly when a third party like Google.com asks Chrome to prerender them. If you're interested in testing how your page behaves when being prerendered you can use this sample page. If you want your page to behave differently, you can use Chrome's new experimental page visibility API to detect prerendering.
The page visibility API - which is in the early stages of standardization in the webperf working group - can help developers understand the visibility status of their page: whether it's in a foreground tab, a background tab, or being prerendered. This is still an experimental implementation and it may change or even be removed in the future, which is why for the time being we've prefixed the property names with "webkit.” Although the page visibility API is useful for detecting prerendering, it also has many other applications--for example, allowing a site to pause expensive physics calculations when the page isn't visible.