Best Ad Blocker for Chrome: Setup Guide for uBlock Origin, AdGuard, and More

By Michael Lip · 2026-03-18
Zovo Verified Last updated Reading time
Tested and verified on Chrome 146.0.7680.80 (latest stable) · 2026-03-18

Wikipedia Definition

Ad blocking is a software capability for blocking or altering online advertising in a web browser, an application or a network. This may be done using browser extensions or other methods, such as browsers with inside blocking.

Source: Wikipedia - Ad blocking · 2026-03-18

🔥 Developer Discussion

Trending conversations from Hacker News

UBlock-LLC taking code from ad blocker uBlock Origin without proper attribution
▲ 151 points 💬 22 comments 2018-11-17
An Anti-Adblock Defuser for Nano Adblocker and uBlock Origin
▲ 34 points 💬 3 comments 2019-03-30
In June 2024, ad blockers such as uBlock Origin will be disabled in Chrome 127
▲ 143 points 💬 52 comments 2023-11-21

Source: Hacker News · Updated 2026-03-18

📋 Top Developer Questions

Real questions from the Stack Overflow community

jQuery Ajax post request stuck on pending on Chrome
⬆ 21 votes 💬 1 answers 👁 7.8k views ✓ Answered
Images Fail to Load, net::ERR_CONTENT_LENGTH_MISMATCH
⬆ 6 votes 💬 3 answers 👁 9.2k views ✓ Answered
AADSTS50058 when calling AAD causes refresh loops
⬆ 4 votes 💬 2 answers 👁 4.5k views ✓ Answered

Source: Stack Overflow · Updated 2026-03-18

> 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. Best Ad Blocker for Chrome: Setup Guide for 2026 Choosing the right ad blocker for Chrome in 2026 is more complicated than it used to be. Google's Manifest V3 (MV3) migration has 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. Table of Contents [How Ad Blocking Works in Chrome 134](#how-ad-blocking-works-in-chrome-134). [uBlock Origin Lite: Setup and Configuration](#ublock-origin-lite-setup-and-configuration). [AdGuard Browser Extension](#adguard-browser-extension). [Chrome's Built-in Ad Blocking](#chromes-built-in-ad-blocking). [MV3 Impact on Ad Blockers](#mv3-impact-on-ad-blockers). [Mobile Ad Blocking](#mobile-ad-blocking). [Enterprise Policy Ad Blocking](#enterprise-policy-ad-blocking). [Comparing Ad Blockers: Performance Data](#comparing-ad-blockers-performance-data). [Advanced Configuration](#advanced-configuration). [FAQ](#faq). How Ad Blocking Works in Chrome 134 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 Old Way: webRequest API (MV2) 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. The New Way: declarativeNetRequest API (MV3) 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](https://developer.chrome.com/docs/extensions/reference/api/declarativeNetRequest): - Maximum 330,000 static rules per extension (shared across all filter lists) - Maximum 30,000 dynamic rules that can be updated without extension reload - No ability to modify request headers for blocking purposes (replaced with limited header modification rules) - No programmatic evaluation of requests (cannot run custom JavaScript logic per request) 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: Setup and Configuration 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. Installation Open the [Chrome Web Store](https://chromewebstore.google.com/) and search for "uBlock Origin Lite". Click "Add to Chrome". After installation, the uBOL icon appears in the toolbar (click the puzzle piece icon and pin it). Initial Configuration Click the uBOL icon and then the gear icon to open the dashboard: 1. Filter lists tab: By default, uBOL enables EasyList, EasyPrivacy, and Peter Lowe's Ad and tracking server list. These cover most ads and trackers. 2. Adding filter lists: Click "Filter lists" and enable additional lists: - EasyList (default, enabled), blocks most display ads - EasyPrivacy (default, enabled), blocks tracking scripts - Fanboy's Annoyance List, blocks cookie notices, newsletter popups, and social widgets - Malware Domain List, blocks known malicious domains - Regional lists, language-specific ad blocking lists for non-English websites 3. Filtering mode: uBOL offers three modes: - Basic: Blocks ads using static rules only. Lowest permission requirement. - Optimal: Blocks ads and applies some cosmetic filtering. Recommended for most users. - Complete: Maximum blocking including procedural cosmetic filters. Requires additional permissions. Per-Site Configuration Click the uBOL icon while on any website to adjust blocking for that specific site: - Click the power button to disable blocking on the current site - Use the slider to adjust the filtering level for the current site - Report missed ads using the report button (opens GitHub issue) Limitations Compared to Original uBlock Origin uBlock Origin Lite cannot do everything the original MV2 version did: - Fewer filter rules: Some complex rules from the original cannot be expressed in DNR format - No dynamic filter evaluation: Cannot make per-request decisions based on context - Cosmetic filtering is limited: Some procedural cosmetic filters (`:has()`, `:has-text()`) require the "Complete" mode and additional permissions - No logger: The original's network request logger is not available For users who need the full uBlock Origin experience, Firefox still supports the original MV2 version. AdGuard Browser Extension AdGuard's Chrome extension has been fully updated to MV3 and offers a different approach to working within MV3's limitations. Installation and Setup Search "AdGuard" on the Chrome Web Store. Install "AdGuard AdBlocker". AdGuard's onboarding wizard walks you through initial configuration. Configuration AdGuard's settings panel (click the icon, then gear): 1. Ad Blocking: Enable/disable ad blocking filter lists - AdGuard Base filter (default) - AdGuard Tracking Protection filter - AdGuard Annoyances filter (cookie notices, popups) - Language-specific filters 2. Stealth Mode: Privacy-focused features: - Block trackers - Remove tracking parameters from URLs - Self-destructing cookies - Block WebRTC IP leak 3. Allowlist: Add websites where you want to disable ad blocking AdGuard vs. uBlock Origin Lite | 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 Premium Features AdGuard offers a premium tier that includes: - DNS-level ad blocking (blocks ads across all apps, not just Chrome) - Parental controls - Custom DNS servers - Advanced tracking protection 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's Built-in Ad Blocking 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](https://www.betterads.org/) standards. What Chrome Blocks Automatically Chrome blocks these ad formats that the Coalition for Better Ads identified as the most disruptive: Pop-up ads, auto-playing video with sound, prestitial ads with countdown, large sticky ads Pop-up ads, prestitial ads, ad density higher than 30%, flashing animations, auto-playing video with sound, full-screen scrollover ads, large sticky ads Check Your Settings Go to `chrome://settings/content/ads`. The default setting is "Block ads on sites that show intrusive or misleading ads". You can add specific sites to a block list or allow list. Limitations Chrome'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. Safe Browsing Integration 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](https://safebrowsing.google.com/) MV3 Impact on Ad Blockers 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. What MV3 Changed for Ad Blockers 1. 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](https://developer.chrome.com/docs/extensions/reference/api/declarativeNetRequest#property-MAX_NUMBER_OF_STATIC_RULESETS) 2. 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. 3. 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). 4. 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. Real-World Impact 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: - Ads served through first-party domains (same domain as the content) - Ads that require procedural cosmetic filters to hide - Ads that use randomized URLs to evade static filter rules - Anti-adblock scripts that MV2 extensions could neutralize but MV3 extensions cannot The EasyList Perspective 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 improved rule sets specifically for MV3 extensions. Mobile Ad Blocking Chrome on Android and iOS does not support traditional ad blocking extensions. Here are the workarounds for each platform. Android 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: 1. Open Android Settings > Network & Internet > Private DNS 2. Enter a DNS provider that blocks ads: - AdGuard DNS: `dns.adguard.com` - NextDNS: `[your-id].dns.nextdns.io` 3. This blocks ads across all apps, not just Chrome Method 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. iOS 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: Download a DNS configuration profile from AdGuard DNS or NextDNS. Install the profile: Settings > General > VPN & Device Management > DNS. Select the installed DNS profile. Method 3: AdGuard for iOS. AdGuard's iOS app provides both Safari content blocking and DNS-based blocking for Chrome and other apps. Pi-hole and Network-Level Blocking For users who want ad blocking across all devices on a network: Set up a [Pi-hole](https://pi-hole.net/) on a Raspberry Pi or any Linux machine. Configure your router's DHCP to point to the Pi-hole as the DNS server. All devices on the network get DNS-level ad blocking automatically. 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. Enterprise Policy Ad Blocking Organizations can enforce ad blocking across all managed Chrome installations using Chrome enterprise policies. Block Ads via Policy Create a Chrome policy that blocks known ad-serving domains: ```json { "URLBlocklist": [ "doubleclick.net", "googlesyndication.com", "googleadservices.com", "adservice.google.com" ] } ``` Deploy this policy through your MDM (Mobile Device Management) or Group Policy (Windows). Force-Install an Ad Blocker Use the `ExtensionInstallForcelist` policy to automatically install an ad blocker on all managed Chrome instances: ```json { "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](https://chromeenterprise.google/policies/#ExtensionInstallForcelist) DNS-Based Enterprise Blocking 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 Performance data collected on Chrome 134, tested on a standardized set of 50 websites including news sites, social media, video platforms, and web applications. Blocking Effectiveness | 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. Memory Usage | 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). CPU Usage During Page Load 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. Advanced Configuration Custom Filter Rules in uBlock Origin Lite 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 Custom Rules 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 ``` Combining Ad Blockers with Privacy Extensions For maximum privacy protection, combine your ad blocker with: - Privacy Badger (EFF): Learns which third parties track you and blocks them automatically - ClearURLs: Removes tracking parameters from URLs - HTTPS Everywhere: Forces HTTPS connections (partially redundant with Chrome 134's HTTPS-First mode) 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. Allowlisting Specific Sites If a website detects your ad blocker and refuses to load: Click the ad blocker icon in the toolbar. Click the power button or toggle to disable blocking on the current site. Reload the page. 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. FAQ What is the best ad blocker for Chrome in 2026? 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](https://chromewebstore.google.com/) Does Chrome have a built-in ad blocker? 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](https://www.betterads.org/) Why did my ad blocker stop working in Chrome? 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](https://developer.chrome.com/docs/extensions/develop/migrate/mv2-deprecation-timeline) Can I block YouTube ads with a Chrome extension? 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. How do I block ads on Chrome mobile? 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. **Lighthouse Score (Mobile, March 2026):** Performance: 65/100 | SEO: 100/100 | Accessibility: 91/100 | Best Practices: 96/100
ML
Michael Lip
Chrome extension engineer. Built 16 extensions with 4,700+ users. Top Rated Plus on Upwork with $400K+ earned across 47 contracts. All extensions are free, open source, and collect zero data.
zovo.one GitHub