← Articles

Manifest V3 and the Limits of Chrome Content Blocking in 2026

The full version of uBlock Origin no longer runs on Chrome. Google's published Manifest V2 support timeline records that Chrome 138 disabled Manifest V2 extensions for all users on all channels in July 2025, with no user option to turn them back on, and that the ExtensionManifestV2Availability enterprise policy was removed in Chrome 139. The same timeline sets 31 August 2026 as the date all remaining Manifest V2 extensions are removed from the Chrome Web Store. This is a completed migration, not a proposal.

RecordedMV2 disabled everywhere
24 Jul 2025
Chrome for Developers timeline
RecordedStore removal date
31 Aug 2026
Chrome for Developers timeline
RecordeduBOL default ruleset
~17K rules
uBO Lite FAQ
RecordedChromium static rule cap
30K guaranteed
declarativeNetRequest reference

What replaced the blocking API

Manifest V2 extensions could register a blocking webRequest listener, which lets an extension inspect each network request and decide in code whether to allow it. Manifest V3 replaces that with declarativeNetRequest, where the extension ships rules in advance and the browser applies them. Chrome's API reference sets a guaranteed minimum of 30,000 static rules across enabled rulesets, with a maximum of 100 declared rulesets and 50 enabled at once.

The practical consequence is that a blocker can no longer make a decision that depends on evaluating the request at the moment it happens. The uBlock Origin Lite documentation lists the filter capabilities this removes, including strict1p and strict3p, which test whether a request is same-origin as its initiator; entity-based values for the domain= option; redirect-rule=, because the rules API has no redirect-if-blocked concept; regex-based removeparam=; exceptions for modifier filters generally; replace=, which modifies a response body; and ipaddress=, which filters on the IP addresses in a DNS record. CNAME uncloaking, which resolves third-party trackers that appear as first-party through a CNAME record, is unsupported by every declarativeNetRequest implementation as of that documentation.

uBlock Origin Lite is a different extension, not an upgraded uBlock Origin. Its own documentation states that uBO will not automatically transition to uBO Lite in the Chrome Web Store, and that a user has to explicitly choose a replacement. Generic cosmetic filtering is off by default in uBO Lite and requires raising the blocking mode to Complete.

What still works on Chrome

Declarative blocking is not nothing. uBlock Origin Lite compiles filter lists into rulesets at build time and reports a default ruleset of roughly 17,000 rules in Optimal or Complete mode, rising slightly above 30,000 with all seven Annoyances rulesets, two Privacy rulesets and one large regional ruleset enabled. Because the rulesets are precompiled and packaged, uBO Lite makes no network requests to remote servers, and its filtering is reliable at browser launch even when the extension service worker is suspended. Its documented tradeoff is that rulesets update only when the extension itself updates through the store, rather than on a filter-list refresh schedule.

The gap shows up on sites that actively detect content blockers and on filters written to minimise site breakage, which is where the uBO Lite documentation says many filters cannot be converted into declarative rules. Chromium 145 added topDomains and excludedTopDomains rule conditions, which the uBO Lite maintainer describes as making per-site switches and dynamic filtering partially possible again, still without the ability to distinguish first-party from third-party relative to the top domain.

Firefox kept the blocking API

Mozilla stated in its Manifest V3 plan that Chrome's removal of blocking webRequest would limit the capabilities of privacy extensions without an adequate replacement, and that Mozilla would maintain support for blocking webRequest in Manifest V3 while also shipping declarativeNetRequest for compatibility. That decision is why the unmodified uBlock Origin still runs on Firefox.

The uBlock Origin project documents several capabilities that exist only on Firefox: CNAME uncloaking, IP address filtering, HTML filtering of a response body before the browser parses it through webRequest.filterResponseData(), reliable blocking in already-open tabs at browser launch, reliable prefetch prevention, and WebAssembly code paths for core filtering. On Chromium the project notes that tracker payloads can reach already-open tabs before the extension is ready.

Where this leaves a reader

  • On Chrome, the choice is a declarative blocker such as uBlock Origin Lite with the limits above, not the previous extension under a new name.
  • On Firefox, or a Firefox-derived browser such as LibreWolf, the full uBlock Origin still runs with the blocking API intact.
  • Tor Browser is Firefox-based and ships its own configuration; it is a separate threat model from tracker blocking on a daily browser.
  • Blocking at the resolver, covered in the private DNS setup guide, filters by domain across the whole device and is unaffected by extension manifest rules. It cannot do cosmetic filtering or per-request decisions.

None of these options is equivalent to the others, and no combination restores the exact filtering set that Manifest V2 allowed on Chrome. What a reader can verify is which capabilities each option documents, which is the basis for the comparison above. For a general method of checking claims like these before trusting a tool, see how to vet a privacy tool.

Status

Manifest V2 disablement is in force in Chrome and has been since Chrome 138. Chrome Web Store removal of remaining Manifest V2 extensions is scheduled for 31 August 2026 and had not occurred as of this review. Mozilla's commitment to blocking webRequest is stated policy and remains in effect. Current as of 6 August 2026.

Sources

Frequently Asked Questions

Does uBlock Origin still work in Chrome?

No. Google disabled Manifest V2 extensions for all Chrome users on all channels with Chrome 138 in July 2025, and removed the enterprise policy that allowed re-enabling them in Chrome 139. uBlock Origin is a Manifest V2 extension, so it no longer runs on current Chrome. Remaining Manifest V2 extensions are scheduled for removal from the Chrome Web Store on 31 August 2026.

Is uBlock Origin Lite the same extension?

No. The uBlock Origin Lite documentation states it is a separate, fully declarative extension and not an automatic replacement, and that filter capabilities including strict1p and strict3p, entity-based domain values, redirect-rule, regex-based removeparam, response-body replace, ipaddress filtering, and CNAME uncloaking cannot be translated into declarativeNetRequest rules.

Which browser still runs the full version of uBlock Origin?

Firefox. Mozilla stated it would maintain support for blocking webRequest in Manifest V3 while also shipping declarativeNetRequest for cross-browser compatibility. That blocking API is what the full uBlock Origin depends on.

What does uBlock Origin Lite still block?

Network filtering and scriptlet injection from precompiled declarative rulesets, which its documentation reports at roughly 17,000 rules in Optimal or Complete mode. Generic cosmetic filtering is off by default and requires raising the mode to Complete. Rulesets update only when the extension package itself updates.