Critical · free tool

Free 404 Checker

Enter a URL to scan up to 10 pages of your site for 404 errors and broken internal links. No login required - this can take up to a minute as it crawls multiple pages.

Last updated 6 October 2026
Runs the same check as a full AuditZap audit
No signup required - results in seconds
We don't store the URLs you check
Free foreverNo signupNo URLs stored

What this 404 checker does

This is a free 404 checker and 404 tester with no login required, built to scan a site rather than one page at a time. Enter a page of your site and it crawls up to 10 pages of it, checks the status of the internal links it finds on them, and reports every link that lands on a 404, a 410 or another error status. Each broken URL is listed in full, and the result shows the status code for the first five.

Because it moves from page to page, it catches broken links that only appear deep in your navigation. It works as a free 404 error checker for WordPress, Shopify, Webflow, and any other platform, because it reads your live pages over HTTP rather than plugging into your CMS.

Checking many pages at once

A bulk 404 scan is only useful if you know what it covered, so here is exactly what one run does:

  • It fetches the page you enter, then queues the internal links on that page, topping up from your /sitemap.xml when the page links to fewer than nine others, until it has up to 10 pages in total.
  • It only follows URLs on the same hostname as the page you entered, so subdomains and other websites are left alone, and it skips files such as images, PDFs, stylesheets and scripts.
  • It then checks the status of the internal links found across those pages, up to 50 unique internal links per run. Pages it already fetched are not checked twice, and /about and /about/ count as one URL.
  • Links that redirect are judged by where they finally land, so a 301 to a live page is not reported as broken. A URL from your sitemap that now returns an error is reported too, when it is one of the pages fetched.
  • The whole run stops after 45 seconds. Links it did not reach in time, and links where the site answered 401, 403, 407 or 429 (a login wall, a bot challenge or a rate limit), are reported as could not be verified, never as broken.

Why 404 errors hurt

A 404 is a dead end. For visitors, clicking a link that leads nowhere is a fast route to leaving your site. For search engines, internal links to 404s waste crawl budget and stop link equity flowing to the pages that should rank.

404s accumulate quietly: a deleted product, a renamed post, a typo in a menu link. They rarely announce themselves, so regular 404 error detection, not a one-off check, is the only reliable way to find them before they pile up.

How to test your custom 404 page

A custom 404 page is good for users, but it must still return the 404 status code in its HTTP header. A common misconfiguration is a friendly "page not found" design that returns a 200 OK status, known as a soft 404. Search engines then treat the error page as a real page and may index it, which is worse than a clean 404.

To test it, visit a URL on your site that you know does not exist, such as your domain followed by /this-page-does-not-exist, and read the status code the server actually sent, not how the page looks. In Chrome or Firefox, open developer tools, go to the Network tab, reload, and read the status column. From a terminal, "curl -I" followed by the URL prints the status on its first line. A correctly configured custom 404 page returns 404.

This checker cannot spot a soft 404 for you: a page that answers 200 OK looks healthy to any status check, which is why the manual test matters. What it does find is the internal links, within the pages it crawls, that send visitors to your 404 page in the first place. If a link is flagged but the URL shows a nicely designed error page in your browser, the flag is still correct: fix the link, not the error page.

404 vs soft 404 vs 410

These three are easy to confuse, and they tell search engines different things:

  • 404 Not Found: the server says nothing exists at this URL. It is the right answer for any missing page.
  • 410 Gone: the server says the page was removed on purpose and is not coming back. Use it for content that is gone for good with no replacement. Search engines drop both 404 and 410 URLs from their index over time; a 410 simply states the intent more plainly.
  • Soft 404: the page says "not found" but the server returns 200 OK, so search engines have to guess. Google Search Console lists these separately as "Soft 404" in its page indexing report.

404 checker vs broken link checker

Both tools run the same broken internal links check as a full AuditZap audit. The difference is how far they look:

  • The broken link checker checks one page: up to 20 internal links on the URL you enter, with a 5 second timeout each. Use it right after editing a page.
  • This 404 checker crawls up to 10 pages and checks up to 50 unique internal links across them, so it finds 404s that only show up deeper in your navigation, plus dead URLs it reaches through your sitemap.
  • Neither tool checks links to other websites: both look only at internal links on your own hostname.

How to fix the 404 pages you find

For each broken URL, pick the right resolution. The guide to finding and fixing 404 errors covers which 404s matter most and how to cross-check them in Google Search Console.

  • If the target moved, update the link to the new URL, or add a 301 redirect from the old URL to the new one.
  • If the target is gone for good, remove the link so it no longer points at a dead end, and let the old URL return 404 or 410.
  • If a custom 404 page is returning a 200 status, fix your server or CMS so genuine missing pages return a real 404.

Honest limits

This tool crawls up to 10 pages and checks up to 50 unique internal links, and it can take up to a minute because it visits multiple pages. Links it could not reach in time are reported as unchecked rather than confirmed broken. For all 40 checks on those same 10 pages, run a full free audit: full detail plus one AI fix. Pro adds an AI fix for every issue, a PDF report and up to 100 pages. For a quick single-page scan, use the broken link checker.

Frequently asked questions

Is this bulk 404 checker free with no login?

Yes. It is free and needs no account. To keep the crawl fair for everyone, multi-page scans are limited to 5 per hour per IP; single-page tools like the broken link checker allow more.

Can I check many pages at once?

Yes, that is what it is for. One run crawls up to 10 pages of your site and checks up to 50 unique internal links across them, all within 45 seconds. There is no paste-a-list mode: it discovers pages from your links and your sitemap. For a deeper crawl, a full free audit runs the same broken links check with all 40 checks across up to 10 pages, and Pro goes up to 100 pages.

How do I test my custom 404 page?

Visit a URL on your site that you know does not exist, then check the HTTP status code the server returns, not how the page looks. In browser developer tools, open the Network tab, reload and read the status column; from a terminal, run "curl -I" against the URL. A correctly configured custom 404 page returns 404. If it returns 200, it is a soft 404, and the fix is a server or CMS setting, not the page design. This tool finds the links that send people to your 404 page, but it cannot detect a soft 404, because a 200 looks healthy to any status check.

What is the difference between a 404, a soft 404 and a 410?

A 404 says nothing exists at the URL. A 410 says the page was removed on purpose and is not coming back. A soft 404 is an error page that wrongly returns 200 OK, so search engines may index it as a real page. This checker reports internal links to 404 and 410 URLs alike, because either way the visitor who clicks hits a dead end.

Should I use the 404 checker or the broken link checker?

Use the broken link checker for one page: it checks up to 20 internal links on the URL you enter. Use this 404 checker for a wider sweep: up to 10 pages and up to 50 unique internal links, including dead pages it finds through your sitemap. Both run the same check, and neither checks links to other websites.

How do I fix the 404 errors it finds?

If the page moved, update the link or add a 301 redirect from the old URL to the new one. If it is gone for good, remove the link and let the old URL return 404 or 410. Avoid redirecting every dead URL to your homepage. The guide to finding and fixing 404 errors walks through each case.