Skip to content
SEO 13 min read

404 Error, How to Find and Fix Broken Pages

404 error explained: common causes, SEO impact, free detection tools and step-by-step fixes to keep your website clean for visitors and search engines.

Share
404 error

A 404 error appears when a visitor or search engine tries to reach a page that doesn’t exist, or no longer exists, on your website. It’s the HTTP code your server sends back to say “I can’t find what you’re looking for”. Every site generates a few over time, but when they pile up without anyone noticing, they waste Google’s crawl budget, break your internal links, and send potential customers straight to your competitors.

What exactly is a 404 error?

A 404, or “404 Not Found”, is an HTTP response code that means the server received the browser’s request but couldn’t find any page at the requested address. Unlike a 500 error (the server itself has a problem) or a 403 (access is forbidden), a 404 specifically points to a missing resource.

http 404 code

When you type an address into your browser, it sends a request to the server hosting the website. The server looks for the matching page and, if it finds one, returns a 200 code (“everything’s fine, here’s the page”). If it doesn’t find anything, it returns a 404 and displays an error page, either the server’s default (often a plain white screen with a single line of text) or a custom page if the site owner has set one up. The browser shows this page instead of the expected content, and the visitor understands something went wrong.

There’s also a lesser-known but problematic variant called a “soft 404”. In this case, the server returns a 200 code (success) even though the page displays an error message like “this page doesn’t exist”. To a human visitor, the difference is invisible, but for Google it’s a problem because the search engine believes the page exists and keeps indexing it. Google Search Console flags these false positives in its reports, and they need to be fixed just like real 404 errors.

Why does your site show 404 errors?

404 errors appear whenever a URL that once existed, or that’s referenced somewhere, no longer matches any page on your server. Several common situations create this gap between what the visitor or Google expects and what the server actually finds.

causes of 404 errors

The most common cause, by far, is deleting a page without setting up a redirect. You remove a product from your catalog, merge two blog posts, or reorganize your services, you delete the page, and every link pointing to it (from other pages on your site, from Google, from third-party sites) leads to nothing. This happens especially often during a website redesign, when dozens of URLs change at once without a redirect plan.

The second cause is changing a URL without redirecting the old one. You edit the title of a blog post, your content management system automatically changes the page address, and the old URL now returns a 404. The third cause is typos in internal links or in links shared by email, on social media, or in printed materials. One extra character, a missing hyphen, a misplaced capital letter, and the URL becomes invalid.

Pages can also disappear because of technical problems on the server side or in the content management system: a corrupted database, a poorly managed hosting migration, a conflict between plugins. A less obvious source is external links from other websites or from old marketing materials that were never updated after a site change. Someone shared your page address in a forum post three years ago, you’ve since reorganized your site, and that old link now drops visitors into a 404 with no warning on your end. In every case, the result is the same: the visitor hits a dead end, and if nobody monitors, nobody notices.

How do 404 errors affect your SEO?

404 errors don’t directly lower your rankings in Google, and Google has confirmed this publicly on multiple occasions. But their indirect consequences are real and can weigh heavily on a business or e-commerce site.

seo impact of 404 errors

Every time Google crawls a page that returns a 404, it spends part of its “crawl budget” (the number of pages it visits on your site during each pass) on a dead page instead of using it to crawl your actual content pages. On a small 30-page site, the impact is negligible, but on a site with 500 pages or more and dozens of 404 errors, Google may end up spacing out its visits or neglecting entire sections of your site.

When a page that received inbound links (links from other websites) returns a 404, all the value of those links is lost. It’s like someone recommending your shop to their friends, but the front door being bricked up: the recommendation still exists, but it doesn’t bring you anything anymore. If you’re working to rank your website on Google, every inbound link counts, and losing them to uncorrected 404 errors means wasting work you’ve already done.

And then there’s the impact on your visitors’ experience. A potential customer who clicks a Google result and lands on an error page instead of the information they were looking for isn’t going to dig through your site to find it. They’ll hit the back button and click the next result, your competitor’s. This behavior sends a negative signal to Google (the user came back very quickly), and it costs you a visitor, potentially a customer, in a direct and immediate way. On an e-commerce site, every 404 on a product page is a lost sale that you could have recovered with a simple redirect to the current version of that product or to the relevant category page.

How to detect 404 errors on your site

You can find 404 errors on your site with free tools, without any special technical skills, as long as you know where to look and do it regularly.

detecting 404 errors

The first tool to check is Google Search Console. If you haven’t set it up yet, now is the time, because it gives you Google’s own view of your site. In the “Pages” report (which was called “Coverage” before 2024), filter by the “Not found (404)” category to see every page that Google tried to crawl and that returned a 404 code. For each URL, you can see when Google last crawled it and, by clicking on it, which pages on your site or elsewhere link to it. This is your starting point for prioritizing fixes.

To go further and scan your entire site in one pass, use a crawling tool like Screaming Frog (free for up to 500 URLs). You enter your site’s address, the tool follows all your internal links, and it lists every link that leads to a 404 code. The advantage over Search Console is that you also catch 404s that Google hasn’t found yet, particularly internal links to recently deleted pages.

Building this check into a regular website audit lets you catch problems before they pile up. If you only do one check per quarter, focus on Search Console, it’s the fastest and the most directly tied to what Google sees.

How to fix a 404 error step by step

Fixing a 404 error depends on why the page disappeared, and the right answer isn’t always the same. Here are the three most common scenarios and what to do in each one.

fixing 404 errors

If the page simply moved to a new address (you changed an article title or reorganized your categories), the solution is a 301 redirect. This redirect tells the browser and Google “this page has permanently moved, here’s its new address”. The visitor is automatically sent to the right page, and Google transfers the link value to the new URL. On most hosts, you can set up these redirects in an .htaccess file (for Apache) or in your content management system’s settings. If you use a managed service like Vercel or Cloudflare, these redirects go in a dedicated configuration file.

If the page was permanently deleted and no equivalent page exists on your site, you have two options. You can return a 410 code (Gone) to explicitly tell Google the page no longer exists and won’t come back, which speeds up its removal from the index. Or you can redirect to the closest page in terms of content, for example the parent category or a similar article, if it makes sense for the visitor. Never redirect a deleted page to your homepage by default, because Google eventually figures out it’s a fake redirect and treats the link as a 404 anyway.

If the 404 comes from a badly written internal link (typo, incomplete URL), just fix the link at its source. Open the page that contains the broken link, correct the address, and publish the change. This is often the simplest and most lasting fix, because it eliminates the problem at its root instead of working around it with a redirect.

What’s the difference between a 301 redirect and a 410 code?

A 301 redirect transfers the visitor and the SEO value to a new address, while a 410 code asks search engines to remove the page from their index without replacing it. The choice between them comes down to one question: does a relevant replacement page exist for the visitor?

301 redirect vs 410 code

Use a 301 redirect when the page moved to a new address (the content still exists, just somewhere else), when you merged two articles into one, or when an equivalent page can meet the visitor’s need. Google typically takes a few weeks to process a 301 and transfer the link value to the new URL. This is the most common solution and the one that best preserves your SEO work.

Use a 410 code when the page was deleted with no replacement, for example a product pulled from your catalog with no equivalent, an article that became irrelevant, or a past event page. The 410 tells Google clearly “this page is gone for good”, and Google removes it from the index faster than with a plain 404. The difference in treatment between a 404 and a 410 is subtle but real: Google eventually removes both from its index, but a 410 is processed within days where a 404 can stay indexed for several weeks before being dropped.

When in doubt, a 301 redirect to a relevant page is almost always the better choice. The visitor finds useful content, Google transfers the link value, and nobody sees an error page. A 410 is only really needed when no redirect makes sense for the visitor.

How to create a custom 404 page that keeps visitors on your site

A custom 404 page turns a dead end into a crossroads that guides visitors toward the content they were looking for, instead of leaving them staring at a blank screen that makes them want to leave.

custom 404 page design

The default 404 page on most servers and content management systems is a white screen with a line of text like “Not Found” or “The requested page could not be found”. That’s technically correct, but it’s also the fastest way to lose a visitor, because they have no indication of what to do next. A custom 404 page keeps the same header and navigation menu as the rest of your site, which reassures the visitor that they’re still in the right place, and it offers concrete paths to find what they were looking for.

At minimum, your 404 page should include a short, clear message explaining the situation in plain language (“this page no longer exists” rather than technical jargon), a visible link to your homepage, and three to five links to your most important or most visited pages. If your site has a search engine, add it to this page, because a visitor who can type what they were looking for has a good chance of finding a relevant page. On an e-commerce site, including your main product categories and a product search bar can save a sale that would otherwise be lost.

One point that’s often overlooked: verify that your custom 404 page actually returns a real HTTP 404 code and not a 200. If your server returns a 200 code for your beautiful custom error page, Google will index it as a normal content page, which creates exactly the soft 404 problem discussed earlier. The check is simple: open your browser’s developer tools (F12), go to the Network tab, load a deliberately wrong URL on your site, and confirm that the response code shown is indeed 404. Some website builders and content management systems return a 200 by default on custom error pages, so this verification is worth doing right after you set yours up, even if the page looks correct to the naked eye.

How to prevent 404 errors going forward

Preventing 404 errors from appearing in the first place is better than fixing them after the fact, and most prevention measures only require a bit of organization when you modify your site.

preventing 404 errors

The most important rule is to never delete a page without setting up a redirect. Before removing any content, first check whether it receives visits (in your analytics), whether it has inbound links (in Search Console), and whether it’s referenced in your internal linking structure. If so, create a 301 redirect to the most relevant page before deleting anything. If not, a 410 code does the job.

When you’re planning a redesign or site migration, prepare a mapping table that matches every old URL to its new address. This work is tedious but it saves you weeks of corrections after launch, and it protects the SEO value your pages have accumulated over time. A well-planned site structure from the design stage also reduces the need to reorganize later.

Make it a habit to check for 404 errors in Google Search Console at least once a month, and deal with them before they accumulate. Build this check into your regular website maintenance routine, alongside security updates and backups. If you use a content management system with multiple editors, establish a simple rule: nobody deletes a page without first checking whether it has traffic or inbound links, and every deletion comes with a redirect. A site that’s clean from a 404 perspective is a site where every link leads somewhere, where Google efficiently crawls your content pages, and where your visitors never hit a dead end with no way out.

Make 404 error monitoring a recurring priority

404 errors aren’t a problem you fix once and never think about again. Every content change, every URL modification, every deleted page can create new ones. The real solution isn’t chasing errors after they appear, but putting a simple routine in place: check Search Console once a month, fix errors that affect pages with traffic or links, set up redirects systematically when you move content, and keep a custom 404 page that guides your visitors instead of losing them. It’s quiet work, but it’s also one of the most worthwhile things you can do for your site’s long-term health.

Frequently asked questions

A 404 error means the page wasn't found, without specifying whether the absence is temporary or permanent. A 410 (Gone) explicitly states that the page has been permanently removed. Google processes a 410 faster than a 404 and removes the page from its index within days instead of weeks.

Google has confirmed that 404 errors don't directly lower a site's rankings. But they waste Google's crawl budget, dilute the value of internal links pointing to those pages, and degrade user experience, all of which hurt SEO indirectly.

Log into Google Search Console, open the Pages report (formerly Coverage), and filter by the Not found (404) category. The list shows every affected URL, when Google last crawled it, and which pages link to it.

Not necessarily. Focus on the ones that receive traffic, have valuable inbound links, or appear in your internal linking structure. Errors on pages that never had visitors or links can safely be ignored.

A good 404 page includes a clear message explaining the situation, a link back to your homepage, a search bar if your site has one, and three to five links to your most visited pages. Keep the same header and footer as the rest of your site so visitors don't feel lost.

A soft 404 happens when your server returns a 200 (success) code for a page that displays an error message. Google flags it in Search Console because it misleads the crawler into thinking the page exists. Fix it by configuring your server to return a proper 404 or 410 code when a page doesn't exist.

Newsletter

Join us!

Enjoyed this article? Get my tips and advice to succeed with your website or SaaS, straight to your inbox. No spam, one-click unsubscribe.

By subscribing, you agree to receive my articles by email. Your data stays private, see the privacy policy .

Share this article
Nicolas Lecocq

Written by

Nicolas Lecocq

A developer-entrepreneur working between France and Switzerland, building custom SaaS products, e-commerce platforms and internal applications.

All articles