Table of Contents
There are two kinds of ABP-compatible filters: network filters and cosmetic filters. Cosmetic filters are referred to as element hiding filters by Adblock Plus (ABP).
Network filters
Short answer: resources blocked: network requests are cancelled before they leave the browser.
The purpose of network filter is to prevent a network request to be made to a remote server, so as to prevent downloading a remote resource. uBlock Origin (uBO) will prevent the network request from even being made. This saves bandwidth, decrease privacy exposure -- as the remote server won't be able to log anything if you do not contact it.
Hosts file
Short answer: resources blocked: network requests are cancelled before they leave the browser.
uBO also support the parsing and enforcing of hosts files -- something which ABP does not. All entries in a hosts file are parsed as network filters, i.e. no resource will be fetch from a remote server which appear in a hosts file, no connection will even be attempted.
Blocked network requests are nipped in the bud.
Cosmetic filters
Short answer: resources hidden -- in various ways depending on the class of cosmetic filters.
These filters serve to visually remove DOM elements from a web page. They have no value privacy-wise, it is essentially to make web page look better by removing unwanted content, which usually cannot be blocked using network filters. Just like ABP, uBO will hide DOM elements on a web page which match cosmetic filters. uBO uses a different method than other big-name blockers to hide the DOM elements though.
Different classes of cosmetic filters are applied differently:
- Specific cosmetic filters: injected before page's root DOM is loaded
- No flickering
- Generic cosmetic filters: injected after page's root DOM is loaded
- These are cacheable
- Since these cosmetic filters are applied after page load, DOM elements may be hidden after they are rendered
- Notice the emphasized "may": generally, you won't see this: the slower the computer, the higher the likelihood
- Solution for when the behavior occurs and is an issue for a user: to create the appropriate specific cosmetic filter.
- Cached generic cosmetic filters: injected before page's root DOM is loaded
- No flickering
Also, a very simple test page to find out if cosmetic filtering can be bypassed in your blocker: http://raymondhill.net/ublock/adbox.html.
More details regarding network filtering
When a network request is filtered, both uBO and ABP will collapse the DOM counterpart -- if any -- of a blocked network request. They both work the same way in such scenario, in the absence of a cosmetic filter matching the DOM counterpart of a blocked network request.
In both uBO and ABP, this occurs after the DOM is loaded, so in both cases, users may be able to visually notice the placeholder collapsing after the page loads.
Yet, uBO is at an advantage in such case: since it does not inject thousands of CSS rules in a page (and frames within that page), this means it makes itself available sooner to handle the task of collapsing the DOM counterpart of blocked network requests. This can be clearly appreciated in the following test page:
- Chromium + uBO: minimal flickering (sometimes none)
- Chromium + ABP: noticeable flickering
- Firefox + uBO: no flickering
- Firefox + ABP: no flickering
Another advantage of uBO here is that these collapsed-DOM-counterpart-of-blocked-network-requests are cached as temporary specific cosmetic filters internally.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
- Wiki home
- About the Wiki documentation
- Permissions
- Privacy policy
- Info:
- The toolbar icon
- The popup user interface
- The context menu
- Dashboard
- Settings pane
- Filter lists pane
- My filters pane
- My rules pane
- Trusted sites pane
- Keyboard shortcuts
- The logger
- Element picker
- Element zapper
- Blocking mode
- Very easy mode
- Easy mode (default)
- Medium mode (optimal for advanced users)
- Hard mode
- Nightmare mode
- Strict blocking
- Few words about re-design of uBO's user interface
- Reference answers to various topics seen in the wild
- Overview of uBlock's network filtering engine
- Overview of uBlock's network filtering engine: details
- Does uBlock Origin block ads or just hide them?
- Doesn't uBlock Origin add overhead to page load?
- About "Why uBlock Origin works so much better than Pi‑hole does?"
- uBlock's blocking and protection effectiveness:
- uBlock's resource usage and efficiency:
- Memory footprint: what happens inside uBlock after installation
- uBlock vs. ABP: efficiency compared
- Counterpoint: Who cares about efficiency, I have 8 GB RAM and|or a quad core CPU
- Debunking "uBlock Origin is less efficient than Adguard" claims
- Myth: uBlock consumes over 80MB
- Myth: uBlock is just slightly less resource intensive than Adblock Plus
- Myth: uBlock consumes several or several dozen GB of RAM
- Various videos showing side by side comparison of the load speed of complex sites
- Own memory usage: benchmarks over time
- Contributed memory usage: benchmarks over time
- Can uBO crash a browser?
- Tools, tests
- Deploying uBlock Origin
- Proposal for integration/unit testing
- uBlock Origin Core (Node.js):
- Troubleshooting:
- Good external guides:
- Scientific papers
uBlock Origin - An efficient blocker for Chromium and Firefox. Fast and lean.