See the change log at the end for a complete revision history.
First and foremost, use only uBlock Origin (uBO) by Raymond 'gorhill' Hill (here's the uBlock Origin page on the Firefox Add-ons website). While there may be some legitimate forks, there are also many ripoffs out there and i would highly recommend avoiding them.
Following are my personal preferences for setting up uBlock Origin. There are no "best" settings since every use case is different, however i like to think they are generally sensible settings to start with. The configurations in the 2nd and 3rd columns of the table are intended to be used with the The Firefox Privacy Guide For Dummies! and the Firefox Configuration Guide for Privacy Freaks and Performance Buffs, respectively. In the former case the advanced mode option is disabled because i felt it would be too overwhelming for 1st time users and followers of the 'dummy' guide.
Regardless of which guide you are following, it is essential that you read the uBlock wiki with the exception of the Advanced-user-features section. If you are not following either guide i would highly suggest enabling the advanced mode option in uBO in order to leverage its dynamic filtering capability, as well as reading the Advanced-user-features section of the wiki.
Once uBO is installed, click its toolbar icon to reveal its popup user interface, then click the little sliders icon to reveal the "secret" Dashboard (i say "secret" because apparently quite a few people don't know it exists). These are the settings i recommend:
Settings not shown here are optional.
||'Dummy' guide settings
||Advanced guide settings
|Hide placeholders of blocked elements 1||disabled||optional|
|Show the number of blocked requests on the icon||enabled||optional|
|I am an advanced user 2||disabled||enabled|
|Disable hyperlink auditing 3||disabled||disabled|
|Block CSP reports||enabled||enabled|
|Uncloak canonical names||enabled||enabled|
|Disable cosmetic filtering||enabled||enabled|
|Block media elements larger than  KB||disabled||optional|
|Block remote fonts 4||disabled||disabled|
1 - If you are new to uBO and content filtering, you should probably not enable this option. Leaving this option disabled will sometimes provide a visual indication when something is blocked in the form of a placeholder where the object was, thus letting you know that something was blocked.
2 - This option may be enabled only after reading the Advanced user features section of the uBO wiki.
3 - This option can be left disabled as long as
dom.security.https_only_mode is enabled in prefs.js, or in user.js or user-overrides.js if you're using the 'arkenfox' user.js, otherwise it should be enabled.
4 - Instead of blocking remote fonts globally and then allowing them per-site, you can automatically allow all 1st party fonts while blocking only 3rd party fonts. See the 'My filters tab' section below for more information. Novice users, or those that simply don't want to fool with filters for unblocking a 3rd party font needed for a given domain, may find it easier to set this to 'enabled' and then allow all remote fonts (1st and 3rd party) as needed from the uBO Dashboard.
<noscript> HTML tags. A potential problem with this is that some page elements that might have been displayed had the
'Filter Lists' tab
|Auto-update filter lists||enabled|
|Suspend network activity until all filter lists are loaded||enabled|
|Parse and enforce cosmetic filters||disabled|
|Ignore generic cosmetic filters||enabled|
|uBlock filters – Badware risks||enabled 1|
|uBlock filters – Privacy||enabled|
|uBlock filters – Resource abuse||enabled|
|uBlock filters – Unbreak||enabled|
|AdGuard Mobile Ads||disabled 2|
|AdGuard Tracking Protection||disabled|
|AdGuard URL Tracking Protection||enabled|
|Block Outsider Intrusion into LAN||enabled|
|Online Malicious URL Blocklist||enabled|
|Phishing URL Blocklist||enabled|
|PUP Domains Blocklist||enabled|
|AdGuard Social Media||disabled|
|EasyList Cookie||disabled 3|
|uBlock filters – Annoyances||enabled|
|Dan Pollock’s hosts file||disabled|
|Peter Lowe’s Ad and tracking server list||enabled|
1 - Optional for Linux users, highly suggested for non-technical Windows users
2 - Enable if using Firefox on a mobile device
3 - Enabling this list will hide a lot of those idiotic cookie notices however this list is already included in the Fanboy’s Annoyance.
4 - This list will shorten links - see here for further information
5 - This list eliminates the need for the Clear URLs add-on - for a description see this
Don't worry about the 'Regions, languages' section unless you browse sites in languages other than English in which case you'll want to enable those languages.
As of this writing you can find over 12 million filter lists on the FilterLists website, however i strongly advise you to be very careful about what ones you add, if any. In my experience the default filter lists offered by uBO are quite sufficient for general web browsing and adding more will use more memory, slow things down and potentially cause more conflicts and break more web pages.
'My filters' tab
You might wish to disable the 'Block remote fonts' option on the 'Settings' tab add the following to the 'My filters' settings instead. Depending on which line you uncomment (remove the ! ) you can allow all 1st party fonts while blocking all 3rd party fonts, or block all 3rd party fonts except for a single domain, or block all 3rd party fonts except for multiple domains. As written, the code below will allow all 1st party fonts while blocking all 3rd party fonts. All lines beginning with ! are comments and are not read by uBO. Only uncomment one line.
! >>> UNCOMMENT ONLY ONE LINE AND EDIT IT AS NECESSARY <<< ! uncomment the line below to allow 1st party fonts + block 3rd party fonts (default): *$font,third-party ! uncomment the line below to allow 1st party fonts + allow 3rd party fonts for a single domain (example.com): !*$font,third-party,domain=~example.com ! uncomment the line below to allow 1st party fonts + allow 3rd party fonts for multiple domains: !*$font,third-party,domain=~example.com|~example2.net
'My rules' tab settings
If you are following the Firefox Configuration Guide for Privacy Freaks and Performance Buffs or otherwise using uBO on its own, and you have enabled the 'I am an advanced user' setting, you can optionally replace the default
behind-the-scene rules on the 'My rules' tab with the the following, however understand that these filters can break some websites for which you may need to add exceptions by using uBlock's logger feature:
no-large-media: behind-the-scene true behind-the-scene * 1p-script block behind-the-scene * 3p block behind-the-scene * 3p-frame block behind-the-scene * 3p-script block behind-the-scene * image noop behind-the-scene * inline-script block
If you are using the LocalCDN add-on you will need to add some rules to the 'My Rules' tab in the uBO Dashboard. The rules can be found in the preferences section of the LocalCDN add-on from where you will copy the rules specific to uBlock and paste them on a new, blank line in the 'Temporary rules' section of the 'My Rules' tab. Make sure to save and commit the changes. When adding the rules, be sure to remove any conflicting rules for the same domains if there are any (there won't be if you're starting fresh).
If you are running uBO with the 'I am an advanced user' option enabled in order to activate dynamic filtering, i recommend setting the following rules in the 'Global rules' column of the popup interface:
NOTE: If you block 3rd-party globally or locally, uBO will not be able to update its filter lists until you create a 'noop' rule (allow) for the Filter Lists settings page which you can do from the dashboard pop-up interface while viewing that page.
Click to expand...
- set EasyList Cookie list to 'disabled' and edited the footnote to explain why
- corrected an error where the URL for what was supposed to be the Clear URLs custom filter list pointed to the Legitimate URL Shortener list instead
- added correct URL for the 'Clear URLs for uBO' custom filter list
- enable AdGuard URL Tracking Protection
https://raw.githubusercontent.com/DandelionSprout/adfilt/master/LegitimateURLShortener.txtto Custom > Import
- moved the 'Suspend network activity' setting to the 'Filter lists' table (thanks to commenter 'Xenthos' for pointing that out)
- enabled Peter Lowe’s Ad and tracking server list
- corrected some mistakes given the changes to the Firefox configuration guides
- updated filter list information - big thanks to 'Xenthos'
- changed the global dynamic filter settings in the 'Dynamic filtering' section
- edited the 'My filters tab' section to remove my personal filter
- changed 'Block remote fonts' setting in the 'Settings tab' section for advanced users and added a footnote
- remove 'Prevent WebRTC from leaking local IP addresses' in 'Settings tab' table since it's no longer present
- removed 'Advanced guide settings, with uMatrix' column in 'Settings tab' table since uM is no longer developed
- removed all references to uMatrix
- removed the '
behind-the-scene * * block' filter from the 'My rules' tab settings section
- added 'Block Outsider Intrusion into LAN' filter setting in the 'Filter Lists' tab section
- misc. edits
- changed setting for WebRTC and updated the footnote - thanks to commenter 'black_mamba'
- added a footnote regarding WebRTC
- added the 'Uncloak canonical names' setting
- removed 'Fanboy’s Enhanced Tracking List' (thanks to 'tiger_man' for informing me of a change)
- minor edits
- re-added the 'My filters tab' section with code to block all 3rd party fonts while allowing all 1st party fonts
- minor edits
- several edits and a few changes to the 'Settings tab settings' section
- changed the value of the
behind-the-scene * imagefilter from 'block' to 'noop' in the 'My rules tab settings' section
- minor edits
- changed the setting for the 'Disable hyperlink auditing' option
- fixed formatting and made minor change to the 'My rules tab settings' section
- added missing settings for 'images' and '3rd-party' rules
- rewrote the 'Dynamic filtering' section
- minor edits
- edited information regarding remote fonts
- reversed order of change log items (newest first)
- minor edits
- updated the information for the
- updated 'Filter Lists tab settings' section - credit to reader '512Kb' for reminding me :)
- removed link: Blocking Web Fonts for Speed and Privacy | InfoSec
- minor edit: expanded instructions for adding LocalCDN rules to uBO
- edited unclear/incorrect information
- added a 4th column to the 'Settings tab' section for advanced users not following either of my guides and using uBlock Origin without uMatrix
- misc. minor edits
- minor edits
- corrected an error in the 'My rules tab settings' section - thanks to commenter 'Hash' for notifying me
- removed information regarding the CSP (Content Security Policy) issue since this is fixed with Firefox v77
- replaced reference to Decentraleyes with LocalCDN and added additional information
- changed 'I am an advanced user' setting from 'enabled' to 'disabled' for the 'Advanced guide settings' - i don't know why i ever had this set to 'enabled', especially for those using uMatrix, which is the case in the advanced guide
- removed filter lists no longer included with newest version of uBO - thanks to 'theltalpha'
- minor edits
- removed Adblock Warning Removal List (thank you 'someone')
- updated filter list settings
- minor edits
cnameAliasListfrom uBO settings (depreciated)
- minor edits
- changed value of
- separated settings according the Firefox guide being followed
- added a table of contents
- misc. edits
- added info regarding
- article first published
Note that both reader and my comments, while they may have been accurate at the time, might be inaccurate today. This is a highly dynamic environment so please verify the accuracy of comment content should you wish to utilize it. Failing that, ask me and i'll give it a crack.