How To Optimize Firefox By Tweaking Hidden Settings In The "about:config" Page
Firefox is one of the most popular, fast and reliable browsers available, but if you belong to the group of people who wish that it was slightly faster, then you can intervene in its hidden settings page, namely about:config, and transform it into a faster Firefox.
If you are a Chrome user, you might want to check out our corresponding D3K guide on optimizing Google Chrome by configuring flags, instead:
[Part 1/2] How To Make Chrome Faster By Configuring Flags
[Part 2/2] How To Make Chrome Faster By Configuring Flags
You may click on the links below for easier navigation within the article:
- What is the “about:config” in Firefox?
- Accessing the “about:config” settings page
- Configurations for a faster Firefox
- Browser.cache.use_new_backend
- Browser.cache.disk.metadata_memory_limit
- Network.http.pipelining
- Network.http.pipelining.aggressive
- Network.http.pipelining.max-optimistic-requests
- Network.http.pipelining.ssl
- Network.http.max-connections
- Network.http.max-persistent-connections-per-server
- Browser.tabs.animate
- Image.animation_mode
- Network.predictor.enable-prefetch
- Network.prefetch-next
- Browser.display.show_image_placeholders
- Content.notify.interval
- Content.notify.ontimer
- Content.switch.threshold
- Conclusion
What is the “about:config” in Firefox?
The about:config configuration page allows Firefox users to intervene in each and every hidden setting available in the browser. It is a feature that is not directly available to users, and includes configuration settings that are not available elsewhere.
In essence, these settings allow you to customize your Firefox according to your needs, and transform it into a more efficient tool for your daily online browsing sessions. Therefore, let’s see how we can change these settings in order improve the browser’s performance.
The only downside to the about:config page is that there are too many settings and they are not easily understood by the average user, since there is no description of each one’s function.
Accessing the “about:config” settings page
To access the about:config settings page, simply type about:config
in the address bar and hit Enter.
Then, click on the I accept the risk button to proceed.
While this warning is rather exaggerating, you should keep in mind that these hidden settings can cause serious problems in the browser. However, nothing that you do is not irreversible.
So, if anything goes wrong, the worst case scenario is restoring your Firefox to its initial state.
Configurations for a faster Firefox
Some of the settings in the about:config page can certainly improve the speed of the browser, however, in order to be safe you should change the settings one by one, and not altogether.
So, you should follow the order of the following steps:
- Change a single setting
- Restart the browser
- Browse the internet for a while in order to check if the loading speed has improved
- If no instability and dysfunction problem occurs, proceed to the next setting
This way you can minimize the risk of altering the stability of the browser.
Also, you don't have to change all of the settings included in the article. You just change a few, according to your preferences.
Browser.cache.use_new_backend
We’ll begin by changing the browser.cache.use_new_backend
entry.
First, to easily find each setting, type the full name of the setting in the search bar (or just a part of it).
Then double-click on the setting, and in the window that appears, enter the value 1
and hit Enter.
By changing the browser cache you can reduce, or even eliminate any crashes that would normally occur in the browser. For some reason, this new cache setting is not enabled by default, even though it increases the browser’s stability and speed.
Browser.cache.disk.metadata_memory_limit
Another configuration that helps in improving performance of Firefox is browser.cache.disk.metadata_memory_limit
.
After locating the setting, double-click on it and define a new value for the memory limit. The default value is set to 250
(in KB), but you can increase it to, say, 51200
, which corresponds to 50MB.
This way you can increase the memory capacity in Firefox, in order to load more pages, faster.
The trap in this case is the threshold value. If you enter a high value, but you don’t have a lot of RAM in your computer (e.g. 2GB), then you’ll just decrease the overall system speed. So, pick wisely, and as we mentioned previously, test the browser (and overall system) performance before leaving this value changed permanently. If you notice that it’s not working for you, then revert it to its default value. This goes for all settings mentioned in this article.
Network.http.pipelining
After locating this value, double-click on it to switch its value to true
(default value is false
).
Pipelining allows the browser to make more connections to the server, and thus load pages faster. In essence, the browser does nothing more than constantly send connection requests, without waiting for the server's responses.
This change should improve Firefox’s speed in theory, but only if your internet connection is fast enough to withstand the additional connection requests.
Network.http.pipelining.aggressive
This is another setting that might increase overall browsing speed.
Locate the setting, and double-click on it to switch its value from false
to true
in order to make the browser’s pipelining functionality even more aggressive.
This should work in theory, but in practice it might not even have any effect.
Network.http.pipelining.max-optimistic-requests
Another pipelining setting that you can change is network.http.pipelining.max-optimistic-requests
.
Double-click on it, and set the maximum number of requests to 8
(default is 4
).
After changing this setting, the browser will be able make up to eight connection requests to the server, effectively reducing the idle time while waiting for confirmation.
Network.http.pipelining.ssl
You can increase speed and at the same time achieve a secure connection by changing the value of the network.http.pipelining.ssl
setting to true
.
Not only you’ll have a faster Firefox using the pipelining feature, but you’ll also enable the SSL protocol, with which you can ensure secure transmission of sensitive data.
Network.http.max-connections
Locate the network.http.max-connections
setting. Its default value is set to 900
.
The range of value for this setting goes from 1
to 65535
. However, it is rather unreasonable to increase it to the maximum allowed value, and subsequently strain the system, so give it a try with a value of 1500
.
Perform this change in order to open communication channels with the server, and consequently load several elements of the website. Increased browser speed shall be mainly observed in pages that contain data such as images and videos, which slow down loading times.
Network.http.max-persistent-connections-per-server
Another setting that increases Firefox’s speed is network.http.max-persistent-connections-per-server
.
So, locate it, and change its value from 6
to 10
.
According to the default value, there will be 6 active connections kept for future requests to a server. If, at some point, more connections are needed, a delay will occur until there is a slot available.
To avoid any idle periods, we can set more alive connections, thus forcing the browser to load several elements of a website.
Browser.tabs.animate
To eliminate delays in the browser when you have several tabs open, change the value of this setting to false
, as it will disable the browser’s animation graphics (e.g. loading icon in tabs).
Image.animation_mode
GIF animations were created to entertain and enrich website content, however they do create slight delays in times loading times.
This setting will allow you to configure GIF playback method. The default value (normal
) allows GIF files to play continuously, without stopping. You can change it to either none
, which will disable GIF playback completely and display GIF files as static images, or once
, so that the GIF will play just once, and then appear as a static image.
Network.predictor.enable-prefetch
By changing this value to true
, you allow the browser to predict which pages you might visit at some point, and store them in cache.
In essence, prefetch allows the browser to collect data from visited pages, and then, with the help of data processing algorithms, it guesses the pages you are most likely to visit. In the end, the browser stores these pages in the cache, something that allows them to load quickly.
Network.prefetch-next
The default value of this setting is set to true
, so change it to false
.
This way you can decrease loading times of pages every time you perform a search within the browser.
When you search for something, Firefox downloads the website results of your search in order to load them quicker, if you decide to visit them. Disabling this feature will prevent the browser from downloading the search results, and thus run faster.
Browser.display.show_image_placeholders
Another trick to improve the browser's performance is to change the browser.display.show_image_placeholders
setting.
According to the default value (true
), image placeholders (i.e. dummy images) replace the original images when they are not available. By setting this value to false
, Firefox will stop adding image placeholders whenever needed, thus decreasing loading times.
Content.notify.interval
You can change the content.notify.interval
setting in order to improve the browser’s speed.
However, the only difference in this case is that this setting is not listed along with the rest of the settings, but you will have to create it yourself.
To do that, right-click anywhere and select New -> Integer.
In the window that will open type content.notify.interval
and hit Enter.
Then, in the next window, type 500000
and hit Enter again.
The function of this setting is associated with the gradual display of rendered elements on a page. In practice, a page is not loaded completely at once, but it is loaded gradually. Every time a new element is loaded, the page is refreshed, and the default interval for this function is set to 0.12 seconds (in other words, the page displays new elements every 0.12 seconds).
However, since these redraws will increase the total page load time, you can set a new value of 500000
(in ms) which corresponds to 0.5 sec.
Note that the next setting has to be set to true
in order for this one to work.
Content.notify.ontimer
The content.notify.ontimer
setting has a direct relationship with the previous setting.
Similarly to before, it is not listed along with the other settings, so you will have to create it like previously.
So, right-click anywhere and select New -> Boolean.
and in the first window type content.notify.ontimer
and click OK.
In the second window, select the value true
, and click OK.
This will actually tell the browser to follow the rules set by the content.notify.interval
setting.
Content.switch.threshold
With this last configuration you can improve the browser’s loading times.
Since it is not listed with the rest of the settings, you have to create it on your own, like the previous two settings.
So, right-click anywhere and select New -> Integer.
In the first window type content.switch.threshold
and hit Enter.
Then, in the second window type 250000
and hit Enter again.
Firefox is configured to apply low frequency mode after 0.75 seconds of user inactivity. Every time the browser goes to low frequency mode, it becomes faster at loading pages.
Therefore, it is beneficial to reduce the time it takes for Firefox to enter low frequency mode. Thus, a value of 0.25 seconds (250000
ms) should be fine for that purpose.
Conclusion
After having tweaked all those hidden settings in the about:config page in Firefox, you should definitely notice a slight improvement in performance.
Keep in mind though, that the improvement will be nowhere near “shocking”. Additionally, it’s possible that you will experience issues at certain times, since these settings change substantial elements of the browser’s behavior, so you might want to keep track of its performance for a while, before deciding to leave these settings altered permanently.
If you have any questions, problems or suggestions, don’t hesitate to let us know in the comments section below!
[Source: PC Steps]