Broken link check
Every link on your home page, followed to see whether it still goes anywhere.
Nobody clicks their own footer
Broken links are the most visible kind of neglect a website can have and the least likely to be found by the person who owns it. You know where everything is, so you never click to check — and the links that rot first are the ones in the footer and the sidebar that you stopped looking at years ago.
They are also among the easiest things on any site to fix. Most are a page that moved, a supplier who redesigned, or a typo that has been sitting there since launch.
What a broken link costs
A visitor who lands on a 404 usually leaves rather than hunting for the right page. If the link was in your navigation, that is a customer who reached your site and then could not reach what they came for.
Search engines read it as a maintenance signal. A page full of dead links is a page nobody is tending, and the crawler that has to spend its budget on addresses that do not exist visits the pages that do exist less often.
How this checks, and what it will not do
It reads your home page, takes the distinct links, and asks each one whether it is still there — internal links first, then external, and it stops at forty. That cap is deliberate: one click here should not become hundreds of requests to somebody else’s server, and this runs on shared hosting where a runaway job affects the whole site.
It is the home page only. That is the page with the most links and the one every visitor sees, but a dead link inside an old blog post will not appear here. For a whole site you want a crawler that runs on a schedule, which is a different kind of tool.
When a 403 is not a broken link
Some sites refuse anything that looks automated, and answer 403 to this check while working perfectly in a browser. Larger publishers and anything behind an aggressive firewall do it routinely.
Those are reported honestly rather than hidden, and marked as worth opening by hand before you change anything. A link removed because a checker was blocked is worse than the check never having run.

