Domain batches
Scan Entire Domain in chunks (default 50 new pages). Skip URLs already in History for that root domain, or pick a random sample each run.
Chrome extension · fully local · MIT
A lightweight Chrome side-panel toolbox that checks HTTP links on the page you’re viewing, stores results in this browser only, and exports clean tables for Sheets or Excel — no account, no API keys, no cloud crawl.
How it works
The extension reads the live DOM, checks reachable HTTP(S) URLs with throttled GET requests, and highlights broken targets on the page. Same-origin crawls can walk a small BFS when you ask for it.
Scan Entire Domain in chunks (default 50 new pages). Skip URLs already in History for that root domain, or pick a random sample each run.
Open the extension on any http(s) page. Review links by page, recheck, and jump to markers without a separate dashboard.
Completed and failed scans stay in IndexedDB on this device. Delete one scan or wipe everything from Options → History.
Copy table for Sheets/Excel, or download CSV. Nothing is sent to a server — paste is yours to own.
Per-host throttle, concurrency caps, and honest handling of 429 / timeouts so rate limits don’t look like “broken.”
On-page fragments are verified in the DOM. mailto, tel, and other non-page protocols are skipped on purpose.
Entire domain
Entire Domain is capped per run so Chrome stays responsive. With skip-already-scanned enabled, each new run on the same root domain continues with the next set of pages.
Default is 50 new pages. Change it under Options → Settings → Pages per batch.
History supplies the “already done” list for that domain. Turn skip off only when you want a full rescan.
Follow links in discovery order, or take a random sample from the queue when you only need coverage, not a full map.
Next Entire Domain scan on the same site picks new pages. When none remain, you’ll get a clear message instead of a stuck spinner.
Install
Chrome Web Store listing may come later. Until then, install from the open-source package — same flow as any developer extension.
broken-link-checker-v1.1.1.zip from this page or the
GitHub Releases tab.
chrome://extensions, turn on Developer mode (top right).
manifest.json).
FAQ
No. Scans and history stay in Chrome’s local storage / IndexedDB on your machine. There is no analytics endpoint and no account. See PRIVACY.md.
The extension backs off on 429/503, respects Retry-After, and runs a slow auto-retry pass so most busy responses become OK or truly broken. Leftovers stay unverified (not broken). Lower concurrency in Settings or use Recheck unverified.
Yes. Entire Domain uses Pages per batch (default 50). With Skip pages already scanned for this domain enabled, each new run continues with URLs not yet in local History. Choose discovery order or a random sample under Settings → Domain batches.
No. It is a lightweight on-page / same-origin helper. Domain mode uses a bounded BFS with your max-page setting. It does not replace full SEO crawlers, authenticated lab crawls, or CI link checkers.
Only what the tab can already see. If you are not authenticated, or a route loads after the scan starts, those URLs may be missed. Re-run after the UI settles.
In History, expand a scan, use Copy table (or Open in Sheets for a blank sheet), then paste with Ctrl/Cmd+V. Nothing is uploaded automatically.
No. Independent open-source project by Gobinda Tarafdar. “Chrome” is a trademark of Google LLC. This extension is not affiliated with or endorsed by Google.
Support the workshop
Broken Link Checker is MIT-licensed and ships without ads or tracking. A GitHub star helps others find it. A small donation funds coffee and continued polish.
If GitHub Sponsors isn’t available yet, use the donate link on the maker’s site or star the repo — both help.
About the maker
WordPress product marketer · stubborn problem-solver · lifelong Harry Potter devotee
By day I am the Product Marketing Specialist at WPBakery, the page builder that quietly powers a sizeable corner of the WordPress universe. Before that, I helped a single plugin cross 400,000+ active users through positioning, user research, and a relentless focus on what actually moves the needle.
When the day-job owl flies home, I tinker on my own little workshop of spells. Broken Link Checker is one of them: a local toolbox so you can catch dead links without handing your crawl to the cloud.