# How to Find Broken Links for Free: Search Console and a Crawler

> Find broken links on your website for free with Google Search Console and a 500-URL crawler, fix 404 errors the right way, and know when to automate.

_Source: https://professionalstoolkit.com/articles/how-to-find-broken-links — The Professional's Toolkit · updated October 2026_

---

To find broken links on your website for free, pair two tools. Google Search Console lists the 404 pages Google itself ran into, and a free crawler such as Screaming Frog's SEO Spider walks your pages and lists every link that returns an error, with the page it sits on. A broken link is any link that leads to an error, most often 404 Not Found. The method is short: crawl, list the errors, trace each one to its source page, then fix the link or redirect the old URL.


**~1 month** — How long a 404 for a deleted page stays in Search Console's report before it drops off



- **500 URLs** — Free crawl cap in Screaming Frog's SEO Spider
- **1,000** — Example URLs Search Console shows per issue
- **~2 weeks** — Typical time to validate a fix


## Three kinds of broken links, and where each one shows up

Broken links are not one problem, and no single free tool sees all of them. **Internal broken links** point from one of your pages to another of your pages that no longer exists. Outbound broken links point from your page to someone else's page that moved or died. Broken backlinks run the other way: another site links to a URL on your site that now returns a 404. Each kind has its own fix and its own place to look.

A crawler finds the first two, because it follows every link on your pages. Search Console catches the third, plus old URLs Google still remembers. Google says it may discover a 404 URL as a link from another page, or because the page existed before and was deleted [1]. Run both and the gaps close. Skip one and you see half the picture. Broken links are also just one check in a full [SEO audit](/articles/seo-audit-guide), so this is a good first pass before the rest.

## Find broken links in Google Search Console

Search Console is free for any site you verify. Its Page indexing report lists the URLs that returned a 404 to Google during the past month. Google treats a 410 Gone the same as a 404, so both land in the same place.

1. Open your property and open the Page indexing report.
2. Scroll to Why pages aren't indexed and click the row Not found (404).
3. Read the example URLs. Google caps that list at 1,000 items and doesn't promise it shows every affected URL.
4. Click a URL and run URL Inspection. Check the Discovery information to see whether a sitemap or another page pointed Google there.
5. Fix the cause on your site, then return to the issue page and click Validate fix.

Validation typically takes up to about two weeks, and Google rechecks only the URLs with that issue, not your whole site. If a fixed URL still shows up, check its last crawl date first: the fix may simply be newer than Google's visit. Our walkthrough on [fixing page indexing errors in Search Console](/articles/google-search-console-page-indexing-errors) covers every other status in the same report, including soft 404s.


> 💡 **Validate by sitemap for speed:** Google suggests submitting a sitemap with only your most important pages and filtering the report by it before you click Validate fix; a smaller set validates faster.


## Test broken links with a free crawler

Search Console tells you what Google saw. A crawler tells you what is on your pages right now, including links out to other sites. Screaming Frog's SEO Spider is free for crawls of up to 500 URLs, and its maker documents the broken-link workflow step by step [2].

1. Download the SEO Spider, type your homepage into the Enter URL to spider box and click Start.
2. Open the Response Codes tab and choose the Client Error (4xx) filter. Results fill in while the crawl runs.
3. Click a broken URL, then open the Inlinks tab at the bottom. From is the page holding the bad link, To is the dead target, and the anchor text tells you which words to look for.
4. For everything in one spreadsheet, use Bulk Export, then Response Codes, then Client Error (4XX) Inlinks.
5. To check a list of links instead of a whole site, switch to Mode, then List, and paste the URLs.

The Issues tab ranks them for you. **Internal broken links are flagged as high priority**, while broken links to outside sites count as low-priority warnings. That order is a sensible work queue: your own dead links first, outbound ones after. One quirk is worth knowing. The From column shows the last page that linked to the error, and sometimes that page is itself a redirect. The Type column then reads HTTP Redirect, and you follow the chain back to the real source.

## How to fix 404 errors in Google Search Console and on the page

Finding is half the job. Google is blunt about the rest: many 404s are not worth fixing, because a 404 doesn't harm indexing or ranking by itself [3]. So triage first. Fix the dead URLs that people and Google still reach: links on your own pages, URLs listed in your sitemap, and old addresses other sites keep linking to.

| What happened | The fix |
|---|---|
| A page moved to a new URL | Edit your links to the new URL and add a 301 redirect from the old one |
| A page is gone, with a close replacement | 301 redirect to that one replacement |
| A page is gone for good, nothing similar | Let it return 404 or 410 and remove your links to it |
| A common misspelling of a real URL | Redirect it to the right page |
| An outbound link to a dead page | Point it at the new address, swap the source, or remove it |
| A URL that never existed, linked from nowhere | Ignore it; it drops off the report after about a month |

Editing the link at its source beats leaning on redirects alone. A redirect still helps visitors arriving from old emails, bookmarks and other sites, but every internal link that passes through one adds a hop. Fix both. Two shortcuts make things worse: blocking dead URLs in robots.txt, and sending every 404 to the homepage.


> 💡 **Fix the link, then redirect:** Edit every internal link to the new URL at its source page, and keep the 301 for visitors and sites you can't edit.


Keep a short log while you work: the dead URL, the page that linked to it, and what you did. It takes a minute per row. The next time the same URL appears in a crawl or in Search Console, the log tells you whether it is a new problem or an old one Google hasn't rechecked yet. It also shows patterns, such as one template or one menu item that keeps producing dead links after every change.


> ⚠ **Never send all 404s home:** Redirecting missing pages to the homepage creates what Google calls soft 404s, which confuse visitors and search engines. Redirect only to a true replacement.


### A mini example: one renamed post

A bakery blog with about 80 posts renames its sourdough tips post to a new, longer URL. The next crawl shows the old address under Client Error (4xx), with six inlinks from older recipes. The owner edits those six links, adds one 301 from the old URL to the new one, and crawls again. Zero errors. In Search Console the old URL leaves the 404 list once Google recrawls it and finds the redirect. Total time: about twenty minutes.

## Where the free way stops

The free pair works well up to a point, and the point is concrete. Screaming Frog's free mode stops each crawl at 500 URLs. Tag pages, category archives and paginated lists count too, so a blog with a few hundred posts can pass that cap before the crawl reaches its oldest articles. Search Console has no such cap, but it is not a crawler. It reports what Google crawled, for your verified sites only, and a new broken link on a page Google hasn't revisited stays invisible.

The second limit is the calendar. Neither free tool checks your site on its own schedule; you have to remember. Broken links return every time you rename a page, delete a product or migrate a section, so a once-a-year sweep misses most of them. The third limit is broken backlinks. Search Console shows that Google still requests an old URL, but its link data is only a sample, not a full list of the outside sites that still link to it.

**The threshold, plainly:** under about 500 URLs, checked by hand after each change, the free way is enough. Past that size, or once you want an alert instead of a chore, a scheduled site audit takes over.

## Tools that find broken links for you

The three tools below crawl the whole site on a schedule and report the broken links they find. Ahrefs runs [Site Audit free on sites you verify](/articles/ahrefs-site-audit), with broken internal links and orphan pages in every crawl. Semrush [flags broken links in its Site Audit](/articles/semrush-site-audit) through the Internal Linking report and a broken-pages filter. SE Ranking pairs a full Website Audit with a separate checker for broken backlinks.


### Ahrefs — solves this

Site Audit crawls your verified site on a daily, weekly or monthly schedule and checks broken internal links and orphan pages in every crawl; the Broken backlinks report lists outside links that point to your 404s.

1. Create a project and verify the site
2. Schedule a daily, weekly or monthly crawl
3. Work Errors first, then Warnings, then Notices

- Where it stops: Site Audit is free only for sites you verify; sites over 5,000 pages need Starter or higher, and the full Broken backlinks report needs Standard.
- Plan: Ahrefs Free (verified sites); Starter or higher above 5,000 pages
- How Ahrefs does it: [Ahrefs Site Audit setup and limits](https://professionalstoolkit.com/articles/ahrefs-site-audit)
- More: [Ahrefs](https://professionalstoolkit.com/tools/ahrefs)



### Semrush — solves this

Site Audit crawls the site once, weekly or daily and shows broken links in the broken-pages filter and the Internal Linking report, each with a How to fix note; connecting Google Analytics surfaces issues on your most-viewed pages.

- Where it stops: The Free plan audits 100 pages; JavaScript rendering only on Pro+ and Advanced.
- Plan: Free (100 pages); Site Audit is included in the SEO plan
- How Semrush does it: [Running a Semrush Site Audit](https://professionalstoolkit.com/articles/semrush-site-audit)
- More: [Semrush](https://professionalstoolkit.com/tools/semrush)



### SE Ranking — solves this

Website Audit crawls the whole site on a weekly or monthly schedule and reports status codes, redirects and broken internal links with a fix for each; the Broken Backlink Checker finds outside pages linking to your dead URLs.

- Where it stops: No free plan; the trial audit stops at 10,000 pages, and region blocks or Cloudflare bot rules can stop its crawler until you whitelist it.
- Plan: Core or Growth
- More: [SE Ranking](https://professionalstoolkit.com/tools/se-ranking)


A common setup is a mix: Search Console stays on for free, since it is the only view of what Google itself hit, and a scheduled audit tool handles the crawling. For a side-by-side view of audit tools beyond broken links, see our guide to [SEO audit tools](/articles/seo-audit-tools).


## FAQ

**How do I test broken links on a single page?**

In Screaming Frog, switch to list mode, paste the page URL and raise Limit Crawl Depth to 1 so it checks that page's outlinks. Ahrefs also offers a free Broken Link Checker for any page.

**Do broken links hurt SEO?**

Google says a 404 by itself doesn't harm indexing or ranking. The cost is elsewhere: visitors hit dead ends, and links from other sites to a dead URL no longer lead to live content.

**What is the difference between a 404 and a soft 404?**

A 404 returns a Not found status code. A soft 404 returns a success code but shows an error or empty page, which confuses users and search engines; return a real 404 or 410 for pages that are gone.

**How often should I check my website for broken links?**

After every rename, deletion or migration, plus a regular sweep, monthly for a small site. A scheduled site audit removes the need to remember.


## The bottom line

Broken links are quick to find and quick to fix if you catch them early. Start with Search Console's Not found (404) list and a free 500-URL crawl, trace each error to the page that holds it, then edit the link or redirect to the one page that replaces it. Leave truly dead pages as a 404. Once your site outgrows the free crawl, or you keep forgetting to run it, move the crawling to a scheduled audit and keep Search Console for Google's own view.



## Sources

[1] Google Help — https://support.google.com/webmasters/answer/7440203 (Oct 2026)
[2] screamingfrog.co.uk — https://www.screamingfrog.co.uk/seo-spider/tutorials/broken-link-checker/ (Oct 2026)
[3] Google Help — https://support.google.com/webmasters/answer/2445990?hl=en (Oct 2026)

