How to Get Notified the Moment a Link Breaks (Free + Automated)
Most people find out a link broke from a customer email, a Slack DM, or worse — a client. That's because the standard workflow is "run a manual link audit when I remember," which usually means once a quarter, which means the average link is broken for weeks before anyone notices. This guide walks through the automated version: how to set up a recurring check that emails you the moment a URL flips from healthy to broken — and crucially, how to keep it from emailing you about every transient blip.
The problem with manual link audits
Here's the typical agency or SEO team workflow: every month or two, run Screaming Frog or Ahrefs against your site or your client's backlinks. Pull the broken-links report. Fix what you can. Send the client a summary. Repeat in six weeks.
The problem is everything that happens between audits. If a partner site removes the page that links back to you, you might lose three weeks of referral traffic before you notice. If a CDN-cached resource starts 404ing intermittently, you find out when a user complains. If your client's competitor links to them and the link rots, that's gone too. The lag between break and detection is where the damage accumulates.
And the workaround — "just run the audit more often" — does not scale. Manual audits are someone's analyst hour. Weekly audits mean weekly analyst hours.
What "monitoring" actually means
A broken-link monitor (sometimes called a "scheduled link checker") does three things on a recurring schedule:
- Re-checks the same list of URLs at the cadence you set (daily, weekly, monthly).
- Computes a diff between this run and the previous run — which URLs newly broke, which recovered, which are still broken from last time.
- Alerts you on change, not on every run. The whole point is silence when nothing's wrong; noise when something is.
That third part is where most cheap monitors fall down. They ping you on every status flip — including the transient 503 that recovers a minute later, or the rate-limit 429 that doesn't actually mean the page is broken. After a week of false-positive alerts, you mute the channel, which defeats the entire point.
The "no noise" threshold
A good monitor lets you set a change threshold: don't alert me unless the total number of new breaks since the last run is at least N.
- Threshold = 1: tell me about everything. Right for high-stakes lists (payment redirects, key client deliverables).
- Threshold = 3: ignore one-off flaps; alert me when something is actually wrong. Right for medium-stakes lists (large backlink sets).
- Threshold = 10: only alert me on big regressions (post-deploy site-wide breakage). Right for very large lists where a few 404s are expected background noise.
The threshold turns the monitor from a flap-driven nuisance into a signal-only inbox notification. That's the difference between a monitor you keep using and one you mute in week two.
Setting it up with Bulk URL Checker (5 minutes)
Here's the concrete walkthrough using our monitor — but the general approach applies regardless of which tool you use.
Step 1 — Drop in your URL list
Paste your URLs (or upload a CSV). For SEO use cases this is usually your backlinks export from Ahrefs / Semrush / GSC. For docs teams it's your outbound links. For agencies it's the client's published URLs. Up to 75,000 URLs per schedule on our side.
One nice trick: if you've already run a one-time check on these URLs, you can convert it to a schedule directly from the results page in one click — no need to re-paste.
Step 2 — Pick the cadence
Match the cadence to the stakes. Daily is the floor across our paid plans (we deliberately don't do hourly because that looks like aggressive scraping to your target sites and degrades response quality). For most cases:
- Daily for high-stakes lists you can't afford to be a day behind on.
- Weekly for SEO backlinks and link-audit deliverables.
- Monthly for content hygiene where you don't need urgency.
Step 3 — Configure alerts
Email is the default. Pick the threshold that matches the noise tolerance of the list. If you're on a plan that supports it, add a Slack webhook so alerts land in your team channel. The same diff (new failures, new recoveries, still-broken) goes through email, Slack, and webhook so you can split delivery by team.
Step 4 — Leave it alone
That's the whole loop. The next time you hear from the monitor it's because something actually broke — and then you have a list of exactly which URLs, what the new status code is, and when each one flipped.
What to expect in the first week
A few practical notes from observed behavior:
- Run 1 is the baseline. You won't get an alert from the first scheduled run even if there are broken links — "new failures" means new since last run, and there's no previous run yet. The dashboard still shows the baseline.
- The first real alert usually surfaces something you didn't know about. Most lists have at least one URL that broke quietly before you set up the monitor. Expect it.
- Tune the threshold after week 2. If you're getting alerted on flaps, bump the threshold to 3 or 5. If alerts feel sparse and you missed a real break, drop to 1.
Why this beats a generic uptime monitor
You could technically point Pingdom or UptimeRobot at each of your URLs individually. People do this. It doesn't scale because:
- Uptime monitors are priced per-URL or per-check, which gets expensive fast at 1,000+ URLs.
- They alert per URL, not per diff. 50 URLs broken at once = 50 alerts, not one summary.
- They don't classify 4xx vs 5xx vs connection errors. They just tell you "down."
- They don't handle target rate-limiting gracefully — they treat 429s as outages.
A purpose-built broken-link monitor handles the URL-list case directly: one bill, one summary alert per run, classified results, aware of how big-list checking actually works in practice.
Get started
If you already have a list of URLs you check periodically, set up a monitor on it right now — it takes about two minutes. See how the monitor works, or jump straight to the app and create your first schedule. The first one-time check on any list is free; scheduling requires a paid plan starting at $9/mo for one weekly schedule.
Related Articles
How to Check for 404 Errors on Your Website →
Find and fix 404 errors hurting your SEO with Google Search Console, crawlers, and bulk checkers.
Free vs Paid Broken Link Checkers →
When free tools are enough and when you need a paid broken link checker.
How to Find Broken Links on Any Website (2026 Guide) →
Free methods, browser tools, and bulk checking to find and fix broken links on any website.