Fast, private ad blocker for Chrome — built on Manifest V3.
GoaBlockAD blocks ads at two levels: network requests are killed before they load (via declarativeNetRequest), and leftover DOM elements are hidden with cosmetic filtering. No remote servers, no data collection, no bloat.
- Network-level blocking — Requests to Google Ads, Amazon, Criteo, Taboola, Outbrain, and 20+ ad networks are blocked before they reach your browser
- Cosmetic filtering — Hides empty ad containers, sticky banners, and overlay placeholders that survive network blocking
- Per-page counter — The badge and popup show how many requests were blocked on the current page
- Allow list & pause — Disable blocking on a site, or everywhere for 15 minutes
- Custom filters — Block extra domains; invalid lines are reported instead of breaking the list
- Dashboard — Manage settings, allowed sites and custom filters
- Multilingual — English, French, Spanish, German, Italian and Brazilian Portuguese, following the browser language
- 100% local — Everything runs in your browser. Zero telemetry, zero external calls
- Lightweight — No jQuery, no framework, just vanilla JS + CSS. Extension size under 200KB
git clone https://github.com/AbrahamOP/GoaBlockAD.git- Open
chrome://extensions - Enable Developer mode (top right)
- Click Load unpacked
- Select the
GoaBlockADfolder
Download the latest .zip from Releases, extract, and load unpacked.
Browser request → declarativeNetRequest rules (33 patterns)
↓ blocked → never loads
↓ allowed → page renders
↓
content.js scans DOM
hides ad containers via content.css
↓
badge shows the page's blocked count
Blocked networks include: Google (doubleclick, googlesyndication, googleadservices), Amazon (amazon-adsystem), Facebook (facebook.com/tr), Criteo, Taboola, Outbrain, AppNexus, Rubicon, PubMatic, Index Exchange, and more.
| Component | Technology |
|---|---|
| Extension manifest | Chrome Manifest V3 |
| Ad blocking | declarativeNetRequest API |
| Cosmetic filtering | Content script (vanilla JS + CSS) |
| UI | Popup + Dashboard (vanilla HTML/CSS/JS) |
| Storage | chrome.storage.local |
| CI/CD | GitHub Actions (auto-release on version bump) |
Releases are automated. Push a version bump in manifest.json to main:
The CI will:
- Validate JSON and JS syntax
- Build
GoaBlockAD-v1.4.0.zip(excluding.git,.github,_metadata) - Create a Git tag + GitHub release with auto-generated notes and the ZIP attached
Manual trigger is also available via Actions → Release → Run workflow.
GoaBlockAD processes everything locally. It does not:
- Send any data to external servers
- Track your browsing history
- Collect analytics or telemetry
- Require any account or sign-in
See PRIVACY.md for the full privacy policy.
Issues and PRs welcome — especially new blocking rules for ad networks not yet covered.

