This tutorial shows you how to configure Google Chrome tab throttling, explains what this feature does, and why you may want to enable/disable background tab throttling for performance or usability reasons. Disabling background tab throttling can have a significant impact on CPU usage and battery drain, so it’s important to understand the implications of changing the default behavior before you disable this feature.
What is background tab throttling?
Background tab throttling is a feature of Chrome that’s designed to improve performance and increase battery life by restricting the resources available to any browser tabs that are not currently active.
Once a Chrome tab has been in the background for 10 seconds or longer, it is assigned a budget for how much of the system’s resources it can use. Any scripts in the tab can only execute when there is an available budget, subtracting from the budget when they run. The budget is also continually topped up at a steady rate (with a ceiling to how much budget each background tab gets), ensuring that no run-away scripts can hog system resources.
JavaScript timers are also throttled to execute only once per minute after a tab has been inactive for longer than 5 minutes, to further prevent long-running scripts from monopolizing system resources. There are exceptions to tab throttling: tabs playing audio (so that it continues to play), or with active WebSocket and RTC connections (so that connections do not time out) are generally exempt from being throttled when in the background.
Step-by-step guide: Enabling and disabling background tab throttling in Google Chrome
Follow these step-by-step instructions to enable and disable background tab throttling in Chrome:
- Open a new tab
- Enter chrome://flags in the address bar to open the Chrome Flags settings
- Search for throttle, and find the flag Throttle Javascript timers in the background
- Toggle this feature flag to enable/disable background tab throttling
- Restart Chrome to apply the change
Flags in Chrome allow you to enable and disable experimental features that haven’t yet been added to the normal settings screen. If you can’t find the option to enable and disable throttling, it may not be configurable in your browser version as a standalone option. Instead, you can tailor Chrome’s performance options from the Settings screen by disabling energy saving features, and whitelisting websites from becoming inactive in the background.
Why manage Google Chrome background tab throttling?
Tab throttling is enabled by default in Chrome. There are advantages and disadvantages to disabling it depending on your use case and what kind of device you use:
Google Chrome tab throttling advantages:
- Improved performance: Chrome background tab throttling drastically improves performance when you have multiple tabs open, helping to optimize resource management and keep your computer responsive.
- Longer battery life: Modern websites can be incredibly resource-intensive, with scripts providing interactivity, animation, and other functionality. Very little of this is actually useful if the tab the website is running in is not in view, so limiting its resource usage is a convenient way to reduce Chrome’s battery usage.
- Consistency with other users: If you’re a software developer, you want the configuration of your web browser to match as closely as possible with your users’ browsers so that you can test your website and app performance and behavior. As tab throttling is the default, most of your users will have it enabled.
Google Chrome tab throttling disadvantages:
- Interrupted workloads: There are some web applications that perform a lot of work in the browser (for example, processing images locally before uploading them). Background throttling interrupts these kinds of applications.
- Unexpected application behavior: Apps may not know they are throttled, so timers and scheduled tasks may drift, causing unexpected behavior.
- Impacts on software testing: While directly testing web applications with throttling enabled best replicates the user experience, developers running automated front-end tests may want to disable throttling so that they can continue to work in other Chrome tabs.
Testing and troubleshooting Google Chrome background tab throttling
You can test whether tab throttling is enabled or disabled by opening a new browser tab and then opening the developer tools panel and copying and pasting the following code into the console:
let startTime = Date.now();
let interval = setInterval(() => {
let elapsedTime = Date.now() – startTime;
console.log(`Elapsed time: ${elapsedTime / 1000}s`);
startTime = Date.now();
}, 1000);
The elapsed time will be printed to the console every second. If tab throttling is disabled, you should expect this to be roughly 1 second (1000 milliseconds) even if the tab has been in the background for longer than 5 minutes. If tab throttling is enabled, you should notice that the elapsed time starts to drift.
If you run into unexpected behavior, you can reset Google Chrome to its default settings.
More Chrome Performance Tips
If you’re looking to further improve Chrome performance, you can follow our performance guide, and keep an eye on the Google Task Monitor to see what tabs are using the most resources. You should also review which extensions you have enabled, and remove any that you don’t need.
If you’re in charge of an enterprise network, you can configure and secure Google Chrome on all of your devices and ensure that your users are running up-to-date, secure web browsers using the NinjaOne Endpoint Management platform. Our platform provides you with all the tools you need to manage Chrome (and all of your other software) running across different devices, and in different locations, from one central interface.