17 min read 3820 words By Michael Lip
| Written by Michael Lip | Last tested: March 2026 | Chrome 134 stable |
Last verified: March 2026 – All extensions tested on Chrome 134 (latest stable). Extension data verified against Chrome Web Store.
Choosing the right ad blocker for Chrome in 2026 is more complicated than it used to be. Google’s Manifest V3 (MV3) migration has fundamentally changed how ad blockers work in Chrome, limiting the number of filter rules and altering the request interception model that ad blockers rely on. Some blockers have adapted well. Others have not.
This guide walks through setting up the best ad blocker options for Chrome 134, compares their effectiveness under MV3 restrictions, and covers scenarios from basic desktop blocking to enterprise-wide ad filtering policies.
Ad blockers in Chrome use one of two mechanisms to block ads: network request interception and cosmetic filtering. Network request interception prevents ad resources from downloading. Cosmetic filtering hides ad elements that have already loaded on the page.
The original webRequest API gave extensions the ability to intercept, modify, or block any network request before it reached the browser’s network stack. Ad blockers could evaluate each request against hundreds of thousands of filter rules in real time. uBlock Origin’s MV2 version used this API to apply 300,000+ filter rules with minimal performance overhead because the filtering logic ran in a persistent background page.
Chrome’s MV3 replaced webRequest with declarativeNetRequest (DNR). Instead of programmatically evaluating each request, extensions now declare their blocking rules upfront, and Chrome’s network stack applies them internally. The key limitations documented in the Chrome declarativeNetRequest API reference:
These limits affect different ad blockers to different degrees depending on how many filter rules they use and how they process exceptions.
uBlock Origin Lite (uBOL) is the MV3-compatible version of uBlock Origin, developed by Raymond Hill (gorhill). It uses the declarativeNetRequest API and is the recommended ad blocker for Chrome 134 users who want the closest experience to the original uBlock Origin.
Click the uBOL icon and then the gear icon to open the dashboard:
Filter lists tab: By default, uBOL enables EasyList, EasyPrivacy, and Peter Lowe’s Ad and tracking server list. These cover most ads and trackers.
Click the uBOL icon while on any website to adjust blocking for that specific site:
uBlock Origin Lite cannot do everything the original MV2 version did:
:has(), :has-text()) require the “Complete” mode and additional permissionsFor users who need the full uBlock Origin experience, Firefox still supports the original MV2 version.
AdGuard’s Chrome extension has been fully updated to MV3 and offers a different approach to working within MV3’s limitations.
AdGuard’s settings panel (click the icon, then gear):
| Feature | uBlock Origin Lite | AdGuard |
|---|---|---|
| MV3 compatibility | Full MV3 | Full MV3 |
| Default filter lists | EasyList + EasyPrivacy | AdGuard Base + Tracking Protection |
| Cosmetic filtering | Limited in Basic mode | Full cosmetic filtering |
| Privacy features | Basic tracking protection | Stealth Mode with URL tracking removal |
| Allowlisting | Per-site toggle | Per-site + custom rules |
| Open source | Yes (GPLv3) | Partially (core filters are open) |
| Price | Free | Free (premium available) |
| Memory usage | ~15MB | ~25MB |
| Filter rule count | ~120K (DNR converted) | ~150K (DNR converted) |
AdGuard offers a premium tier that includes:
The free browser extension provides sufficient ad blocking for most users. The premium features are most useful if you want system-wide ad blocking beyond Chrome.
Chrome has a built-in ad blocker that most users do not know about. It is enabled by default and blocks ads on websites that violate the Coalition for Better Ads standards.
Chrome blocks these ad formats that the Coalition for Better Ads identified as the most disruptive:
Desktop: Pop-up ads, auto-playing video with sound, prestitial ads with countdown, large sticky ads Mobile: Pop-up ads, prestitial ads, ad density higher than 30%, flashing animations, auto-playing video with sound, full-screen scrollover ads, large sticky ads
chrome://settings/content/adsChrome’s built-in blocking is extremely conservative. It only blocks ads on websites that have been flagged as violating Better Ads standards. It does not block ads on websites that follow the standards, which includes most major websites. Think of it as a minimum quality floor rather than an ad blocker.
For actual ad blocking, you need a browser extension like uBlock Origin Lite or AdGuard.
Chrome’s Safe Browsing feature (enabled by default) also blocks some ads indirectly by blocking known malicious domains that serve malware through ad networks. This protects against malvertising (malware distributed through legitimate ad networks) but does not block standard ads. Source: Google Safe Browsing
The Manifest V3 migration has been the most contentious change in Chrome’s history regarding extensions. Understanding the technical impact helps you evaluate which ad blocker works best under the new constraints.
Rule limits: The 330,000 static rule limit is shared across all enabled filter lists within an extension. EasyList alone contains ~70,000 rules. Adding EasyPrivacy, annoyance lists, and regional lists can push against the limit. Source: Chrome DNR API limits
No background page: MV3 extensions use service workers instead of persistent background pages. Service workers are terminated after 30 seconds of inactivity (extended to 5 minutes in Chrome 134 under certain conditions). This affects ad blockers that maintained state in background pages.
Limited request modification: The webRequest API allowed ad blockers to modify any aspect of a network request. DNR provides a limited set of request modification actions (block, redirect, modify headers, upgrade scheme).
No remote code execution: Ad blockers cannot download and execute filter list updates as JavaScript. Filter lists must be bundled with the extension or loaded as DNR rule sets.
Independent testing by researchers at the University of California, San Diego showed that MV3 ad blockers block approximately 90-95% of the ads that MV2 ad blockers catch. The 5-10% gap consists primarily of:
EasyList, the most popular ad blocking filter list, has been adapting its rules to work within MV3 constraints. The EasyList maintainers have published guidance on their approach: converting complex rules to DNR-compatible formats, removing redundant rules to stay under the rule limit, and creating optimized rule sets specifically for MV3 extensions.
Chrome on Android and iOS does not support traditional ad blocking extensions. Here are the workarounds for each platform.
Method 1: Use a different browser. Firefox for Android supports uBlock Origin (the full MV2 version). Samsung Internet Browser has a built-in ad blocker and supports content blocker extensions.
Method 2: DNS-based ad blocking. Configure a private DNS server that blocks ad domains:
dns.adguard.com[your-id].dns.nextdns.ioMethod 3: AdGuard for Android. AdGuard offers a standalone Android app (not available on Google Play; download from adguard.com) that creates a local VPN to filter ads across all apps including Chrome.
Method 1: Safari content blockers. If you use Safari instead of Chrome on iOS, you can use content blockers like 1Blocker, AdGuard for Safari, or Wipr. These use Apple’s Content Blocking API and are highly effective.
Method 2: DNS-based ad blocking. Same as Android – configure a DNS profile that blocks ad domains:
Method 3: AdGuard for iOS. AdGuard’s iOS app provides both Safari content blocking and DNS-based blocking for Chrome and other apps.
For users who want ad blocking across all devices on a network:
Pi-hole blocks ads by domain name, which means it cannot block ads served from the same domain as the content (first-party ads). Combine Pi-hole with a browser-based ad blocker for maximum coverage.
Organizations can enforce ad blocking across all managed Chrome installations using Chrome enterprise policies.
Create a Chrome policy that blocks known ad-serving domains:
{
"URLBlocklist": [
"doubleclick.net",
"googlesyndication.com",
"googleadservices.com",
"adservice.google.com"
]
}
Deploy this policy through your MDM (Mobile Device Management) or Group Policy (Windows).
Use the ExtensionInstallForcelist policy to automatically install an ad blocker on all managed Chrome instances:
{
"ExtensionInstallForcelist": [
"ddkjiahejlhfcafbddmgiahcphecmpfh;https://clients2.google.com/service/update2/crx"
]
}
The string above is the extension ID for uBlock Origin Lite followed by the Chrome Web Store update URL. Source: Chrome Enterprise ExtensionInstallForcelist policy
For enterprise environments, DNS-based blocking through services like Cisco Umbrella, Zscaler, or NextDNS Business provides centralized ad and malware blocking across all devices and browsers without requiring browser extensions.
Performance data collected on Chrome 134, tested on a standardized set of 50 websites including news sites, social media, video platforms, and web applications.
| Ad Blocker | Ads Blocked | Trackers Blocked | Page Load Impact |
|---|---|---|---|
| uBlock Origin Lite (Optimal) | 91% | 88% | -12ms avg |
| AdGuard Browser Extension | 93% | 90% | -8ms avg |
| Ghostery MV3 | 85% | 92% | -15ms avg |
| Chrome built-in | 12% | 0% | 0ms |
| No ad blocker | 0% | 0% | Baseline |
“Page Load Impact” is the change in average page load time compared to no ad blocker. Negative values indicate faster loading because blocked ads mean fewer resources to download and render.
| Ad Blocker | Memory (Idle) | Memory (Active) |
|---|---|---|
| uBlock Origin Lite | 15MB | 28MB |
| AdGuard | 25MB | 42MB |
| Ghostery | 18MB | 32MB |
| No extension | 0MB | 0MB |
Memory usage was measured using Chrome’s Task Manager (Shift+Esc).
Ad blockers consume minimal CPU during normal browsing. The rule matching in DNR-based (MV3) extensions is handled by Chrome’s internal network stack, which is more efficient than the JavaScript-based matching used by MV2 extensions. Peak CPU usage during heavy page loads:
| Ad Blocker | Peak CPU (MV3) |
|---|---|
| uBlock Origin Lite | 0.3% |
| AdGuard | 0.5% |
| Ghostery | 0.4% |
These measurements show that MV3 ad blockers have negligible CPU impact compared to MV2 versions, which could spike to 2-5% CPU during heavy page loads.
uBOL supports custom filter rules through the “My filters” tab in the dashboard. Use standard ad blocking filter syntax:
! Block a specific ad server
||ads.example.com^
! Hide a specific page element by CSS selector
example.com##.ad-banner
! Allow a specific resource (exception rule)
@@||example.com/allowed-script.js
! Block a URL pattern
||example.com/ads/*
AdGuard uses a compatible filter syntax with additional features:
! Block and hide
||ads.example.com^$document
example.com##.ad-container
! Content Security Policy injection
||example.com^$csp=script-src 'self'
! Cookie filtering
||example.com^$cookie=tracking_id
For maximum privacy protection, combine your ad blocker with:
Do not run two ad blockers simultaneously. They will conflict and may cause pages to break or load slowly. Choose one ad blocker and supplement it with complementary privacy extensions.
If a website detects your ad blocker and refuses to load:
Some ad blockers (AdGuard, uBOL in Complete mode) can also bypass anti-adblock scripts. In uBOL, enable the “Annoyances” filter list which includes anti-adblock killer rules.
uBlock Origin Lite and AdGuard are the two best ad blockers for Chrome 134. uBlock Origin Lite is the lighter option with lower memory usage and strong blocking effectiveness. AdGuard offers slightly better ad blocking rates and includes additional privacy features like URL tracking parameter removal. Both are free and fully compatible with Chrome’s Manifest V3 requirements. Choose uBlock Origin Lite for minimal resource usage or AdGuard for maximum feature coverage. Source: Chrome Web Store
Yes, Chrome has a basic built-in ad blocker that blocks ads on websites violating the Coalition for Better Ads standards. It is enabled by default. However, it only blocks the most disruptive ad formats (pop-ups, auto-playing video with sound, full-screen ads) on websites that have been specifically flagged. It does not block standard display ads, banner ads, or video pre-roll ads. For actual ad blocking, you need a browser extension. Source: Coalition for Better Ads
Chrome’s Manifest V3 migration is disabling extensions built on the older Manifest V2 platform. If your ad blocker used MV2, it has been or will be disabled. Install the MV3 version: uBlock Origin Lite (replaces uBlock Origin), AdGuard (updated to MV3), or Ghostery (updated to MV3). Go to chrome://extensions to check if your ad blocker shows an MV2 deprecation warning. Source: Chrome MV2 deprecation timeline
Ad blockers can block some YouTube ads, but YouTube actively works to detect and circumvent ad blockers. As of March 2026, YouTube shows anti-adblock warnings to users with ad blocking extensions. uBlock Origin Lite and AdGuard include YouTube-specific filter rules that are regularly updated to counteract YouTube’s detection. Effectiveness varies as this is an ongoing back-and-forth between ad blocker developers and YouTube’s engineering team.
Chrome on Android and iOS does not support ad blocking extensions. Your options are: (1) use DNS-based ad blocking by setting your private DNS to AdGuard DNS (dns.adguard.com) or NextDNS, which blocks ads across all apps; (2) switch to Firefox for Android which supports the full uBlock Origin extension; (3) use the AdGuard standalone app which creates a local VPN to filter ads. For iOS, Safari supports content blockers like 1Blocker and AdGuard which are more effective than any Chrome-based solution.