Onsite Link Verdict — Broken Link Checker
Onsite Link Verdict checks the links and images in your whole WordPress site (posts, pages, custom post types and comments) and tells you which ones are dead. Install it, and you can check links in WordPress from your own dashboard, on the same server that runs the site. A server that refuses a robo
Onsite Link Verdict checks the links and images in your whole WordPress site (posts, pages, custom post types and comments) and tells you which ones are dead. Install it, and you can check links in WordPress from your own dashboard, on the same server that runs the site.
A server that refuses a robot is not taken as proof that the page is gone. Links to LinkedIn ( 999 ), Amazon ( 429 , 503 ), X ( 403 ) or a site behind a bot firewall are kept out of your list of broken links: refusals go to their own tab, “Unverifiable”, and server errors wait under “Warnings” to be checked again. And the checking runs in small background batches, so it does not slow down your site.
It knows the difference between “broken” and “I could not check it”
This distinction is the whole reason this plugin exists.
Plenty of servers refuse automated requests. Amazon answers 503 to bots. X answers 403 . LinkedIn answers 999 . A site behind a firewall throws a challenge page. None of those links are broken — they open perfectly well in your browser. Report them as broken and you hand the user a list of two hundred problems, of which one hundred and ninety are not problems, and they stop trusting the list.
So Onsite Link Verdict only ever calls a link broken when it has proof:
- The destination server says the page is gone — 404 or 410 . And even then we ask a second time, with a different method, before accusing the link: there are servers that answer 404 to one kind of request and 200 to another, and a wrong accusation here is the most expensive kind.
- Or there is no server answering at all, three checks in a row — a domain that expired, a host that vanished.
Everything else goes to a separate “Unverifiable” tab , with a plain-language note about what happened. If a server answered us — with 403 , 503 , a rate limit, a challenge page, anything that is not 404 or 410 — it answered, and that is not proof the page died. Your list of real problems stays short, and short means believable.
It speaks your language
The plugin ships translated into Portuguese (Portugal), Portuguese (Brazil), Spanish, French, German, Italian and Dutch , as well as English. That includes the explanations, not just the buttons — which is the point: 403 reads the same in every language, and “the server is refusing automated checks, it is not saying the page is gone” does not.
If your language is missing, the translation template in /languages is generated from the current version and covers every text in the plugin.