Find broken links
How this broken link checker works
A broken link points to a page or file that no longer works: it was deleted, moved without a redirect, mistyped, or the other website went offline. Visitors hit an error page, and search engine crawlers waste time on dead ends. This broken link checker finds them for you.
It downloads the page the same way a search engine crawler does, reads the HTML (respecting any <base> tag), and collects every link. In Crawl website mode it then follows internal links to further pages, up to the limit you set, and repeats. Each unique URL is checked only once, however many pages link to it, and the report shows which page it was found on.
Checks use a fast HEAD request first. Many servers answer HEAD incorrectly, so any URL that returns an error is retried with a real GET request before it is reported as broken. That avoids most of the false positives other free broken link checkers show.
Status codes
What each result means
| Result | Meaning | What to do |
| 404 / 410 | Not found or gone | Update the link, or add a 301 redirect from the old URL if it was yours. |
| 5xx | Server error | Retry later. If it persists on your site, check server logs. |
| Timeout / No response | Server did not answer or the domain no longer resolves | Check the domain still exists. Remove or replace dead external sites. |
| Redirects | Works, but via one or more 301/302 hops | Point the link straight at the final URL to save a hop. |
| 403 / 429 / 999 | Blocked or rate limited | Often bot protection (LinkedIn returns 999). Open it in a browser to confirm. |
| 200 OK | Working | Nothing to do. |
A page that returns 200 but says "not found" is a soft 404. No checker can detect every soft 404 from status codes alone, so spot-check important pages.
Advertisement
Why it matters for SEO
Broken links, users and SEO
Google has said broken links are not a direct ranking penalty, but they still cost you. Internal links that 404 stop link value from flowing to your important pages, waste crawl budget on large sites, and send visitors to dead ends, which increases bounces. Broken outbound links make content look neglected. Broken images and missing CSS or JavaScript files can break layouts entirely.
A good routine is to run a website broken link check after every migration, redesign or bulk content change, and monthly on established sites. Fix internal links first, because you control both ends, then redirects that waste hops, then external links.
Bulk checks
Check a list of URLs in bulk
Already have the URLs, from a sitemap, a spreadsheet, Search Console or an old site export? Use Check a URL list to test up to 500 at once as a bulk 404 checker. It is a fast way to confirm that every old URL in a migration plan now redirects somewhere useful.
Options let you set the timeout for slow servers, cap the number of links per run, and skip URLs that contain certain text, such as /wp-admin or ?replytocom. The CSV report includes status, result, final URL after redirects, number of hops, anchor or alt text, internal or external, and the pages each URL was found on.
The checker identifies itself as BulkMakerBot, only requests public addresses, and never submits forms.
Schedule
How often to check for broken links
Run a crawl after every site migration, theme change or bulk content update, and monthly for active sites. External links break over time as other sites reorganise, so older articles with many outbound links deserve a check every few months.
FAQ
Broken Link Checker: frequently asked questions
What is a broken link checker?
A broken link checker requests every link on a page or website and reports the ones that fail, such as 404 Not Found, server errors and timeouts.
How do I find broken links on my website?
Choose Crawl website, enter your home page URL, set how many pages to crawl and click Check links. Broken links are listed first with the page they were found on.
Is this broken link checker free?
Yes. There is no sign-up and no limit on how many times you use it. Each run checks up to 500 links and crawls up to 25 pages.
Does it check images and other files?
Yes. Tick Images to check img src and srcset, CSS, JS and link tags for stylesheets and scripts, and Iframes, video and audio for embedded media.
Why does a working link show as broken?
Some sites block automated requests or rate limit them with codes like 403, 429 or 999. Open the link in a browser to confirm. Links that fail HEAD are always retried with GET first.
What is the difference between a 404 and a redirect?
A 404 means the page does not exist. A redirect (301 or 302) sends the visitor to another URL, so the link still works but takes an extra hop.
Can I check a list of URLs?
Yes. Use Check a URL list and paste up to 500 URLs, one per line.
Can I export the results?
Yes. Click Download CSV report for a spreadsheet with every URL, status, final URL, anchor text and where it was found.