A WordPress broken link checker does a small, unglamorous job that quietly matters: it finds the dead links on your site before your visitors do. Pages move, external sites disappear, a URL gets a typo, a product is discontinued — and the link that used to work now lands on a “404 Not Found.” Each one is a tiny dead end that frustrates a visitor and chips away at how search engines judge your site. This is a practical guide to finding broken links, fixing them the right way (which is not just deleting them), and the other quiet checks a good host runs so problems get caught before you’d ever notice.
Why broken links are worth caring about
Two reasons, one about people and one about search.
For visitors, a dead link is a small betrayal of trust. Someone clicked expecting to get somewhere, and instead hit an error page. Do that enough times and a site starts to feel neglected — and a site that feels neglected is one people hesitate to buy from or contact.
For search, broken links are a soft negative. They waste the crawl budget search engines spend on your site, they signal a page that isn’t being maintained, and they leak the value that would otherwise flow through a working link. It’s SEO-adjacent rather than a headline ranking factor, but it’s the kind of small, cumulative hygiene that separates a healthy site from a drifting one — the same way the technical foundations covered here quietly add up.
How to find broken links
You don’t need anything fancy to start:
- Google Search Console. Free, and it reports crawl errors and 404s Google has actually hit on your site — the ones real search traffic is finding. This is the most honest signal because it reflects live visits, not a theoretical scan.
- An online broken-link scanner. Several free web tools will crawl your site from the outside and list every dead internal and external link. Good for a periodic sweep without installing anything.
- A checker plugin — but be careful which. There are WordPress plugins that scan continuously, but the well-known always-on ones are resource-heavy and can bog a site down or even get flagged by hosts, because they hammer the server crawling every link on a schedule. If you use one, prefer a lightweight or run-on-demand option, and turn it off when you’re done rather than leaving it grinding in the background.
How to fix them the right way
This is the part people get wrong. When you find a broken link, the lazy fix is to delete it — pull the link out, or worse, delete the whole reference. Don’t. That link was there for a reason: it pointed a reader (or a search engine) at information they wanted.
The right fix is to re-point it to a live equivalent. Find the page that now holds the same information — the moved page, the renamed product, the updated resource, or a comparable source if the original is truly gone — and point the link there. You keep the value and the reader’s journey intact instead of quietly amputating it. Only when there is genuinely no live equivalent, and the link no longer serves any purpose, does removing it make sense — and even then, redirect any dead URL of your own to the closest relevant page so old inbound links don’t 404.
That “re-point, don’t delete” rule is exactly how we handle it on the sites we care for: a dead link gets sent to a live page with the same information, never just unlinked.
The other checks running quietly in the background
Broken links are one item on a much longer list of things that need watching on a live WordPress site. On a DIY site, each of these is a task you have to remember; on a cared-for site, they run whether or not anyone’s thinking about them. The full routine is in our WordPress maintenance checklist, but here’s the shape of it:
- Malware and content scanning. Regular scans catch injected spam pages or malicious code early — ideally before Google ever attaches a warning to your listing.
- Uptime monitoring. Automated uptime monitoring, so a site that goes down at 2am is caught and dealt with, instead of you being the last to know.
- Verified updates. WordPress itself, plugins, and themes kept current — and then the site checked afterward, with before-and-after verification, so an update never silently breaks a layout or a form.
- Certificate renewals. HTTPS certificates renewed automatically, so a visitor never hits an expired-certificate warning.
- Performance checks. Watching for the slow creep — a heavy new image or plugin dragging load times — so speed problems get caught while they’re small.
- Backups, verified. Not just “a backup exists” but confirming it’s complete and restorable. Off-site, monitored backups 3 times a day (locked for 90 days against changes or deletion, even by ransomware) mean even a bad day is just a restore.
The “we handled it before you noticed” story
Here’s the honest value of proactive care, and it’s a quiet one. The best version of maintenance is the version you never hear about — the dead link re-pointed, the certificate renewed, the update verified, the scan that came back clean — all done before it ever became your problem. It’s easy to undervalue exactly because it’s invisible; nothing broke, so nothing demanded your attention. That’s the point.
Doing all of this yourself isn’t hard task-by-task. What’s hard is doing it consistently, forever, on a busy week — which is the real case for handing it off, laid out in managed care versus DIY maintenance.
Where we fit
Finding and re-pointing broken links, and every check above, is part of the care that’s included with every plan — not an upsell, not a separate retainer — run by real US-based people, at a flat price for brochure sites ($29.99) and shared store plans starting at $39.99, with no traffic metering, so it doesn’t move with your traffic. We can’t promise you rankings, and we won’t pretend to; what we can promise is that the ordinary upkeep a healthy site needs actually happens, on schedule, whether or not anyone remembers it. See exactly what’s included on our hosting page, and if you’d like us to take an honest look at a site you’re tired of babysitting, just ask — and if we’re a fit, the migration is on us.