Your 404 Obsession is Probably Wasting Your Time
The errors everyone panics about and almost nobody handles correctly—they're not hurting your rankings. But some of them are still your problem
Do 404 Errors Hurt My Site?
No. Not directly. But before you close this tab feeling vindicated, let me explain why you probably still need to pay attention to some of them.
404 errors don’t tank your rankings. Google has said this repeatedly. I’ve said this repeatedly. And yet, every few months, someone panics about their Search Console report like it’s a cancer diagnosis.
Here’s the thing: HTTP 404 is a status code. It means “I looked for this thing and it doesn’t exist.” That’s it. It’s not a penalty. It’s not a red flag. It’s just... information.
The real question isn’t “are 404s bad?” It’s “why is this 404 happening, and should I care?”
External 404s: Someone Else’s Problem (Mostly)
When someone links to a page on your site that doesn’t exist, that’s an external 404. Could be a typo. Could be they linked to something you removed. Could be someone hacked your site six months ago and injected URLs that you’ve since cleaned up.
The question you need to ask: Should this URL exist?
If yes—redirect it. If no—ignore it and move on with your life.
Google doesn’t know which URLs matter to you. It reports everything it finds. That’s actually useful, but it doesn’t mean every reported error needs action.
Internal 404s: Now We’re Talking
This is where it gets more interesting. Internal broken links are links on your site pointing to URLs on your site that don’t work.
If you’re linking to pages that don’t exist, you’re wasting crawl budget, creating dead ends for users, and generally making your site feel like a building with hallways that lead to brick walls.
Search Console won’t tell you about these. You need to crawl your own site. Screaming Frog for smaller sites (under ~20k URLs), Sitebulb or OnCrawl for bigger ones.
Fix these. Not because Google will punish you, but because it’s sloppy and users notice.
Internal Origin, Internal Destination: Clean Your House
When both the link and the broken destination are internal, you have full control. There’s no excuse for letting these accumulate.
A site with a high percentage of internal broken links is a site that hasn’t been maintained properly. Unless you’re a government website, in which case broken links are basically a feature.*
*Every time I work with a government site (Brazilian or Portuguese, take your pick), I’m amazed at how much information just... vanishes. Entire systems go offline without explanation. If you bookmark government pages, good luck.
What About Soft 404s?
A soft 404 is when your server returns a 200 OK status (or a redirect) for a page that should return 404. Classic examples: redirecting deleted product pages to the homepage, or showing a “page not found” message while the server claims everything is fine.
Google hates these. Why? Because you’re lying to it. You’re saying “this page exists and is fine” when it doesn’t and isn’t.
If a page doesn’t exist, return a proper 404 (or 410 if it’s permanently gone). Don’t try to be clever with redirects unless you’re actually redirecting to equivalent content.
The Redirect Trap
Here’s where most people get it wrong: they think every 404 needs a redirect.
Wrong!
Redirecting a 404 makes sense when:
The content moved to a new URL
There’s a logical replacement page with similar content
Redirecting a 404 is a bad idea when:
The URL never should have existed
It came from spam or hacked content
You’re just trying to make the error go away
Redirecting garbage URLs to your homepage is how you turn legitimate redirects into soft 404s at scale. Google will eventually start ignoring your redirects altogether if enough of them are bogus.
Sitemaps: Keep Them Clean
If you have 404s in your XML sitemap, you’re telling Google “please crawl these URLs that don’t exist.” Every time. Forever.
During a migration, having some temporary noise in your sitemap is fine. Leaving it there for months? That’s how you train Google to stop trusting your sitemap.
The robots.txt Mistake
Some people try to block 404 URLs in robots.txt. This is backwards.
If Google can’t crawl the URL, it can’t see the 404 status. Which means it might keep the URL indexed, thinking it’s being blocked for a reason. Let Google see the 404. That’s how it learns the page is gone.
So What Should You Actually Do?
Find the 404s that matter. Use a crawler on your own site. Internal broken links are your responsibility.
Check Search Console, but don’t panic. External 404s are often noise. Look for patterns—if important pages are being linked to incorrectly, fix them. If it’s random garbage, ignore it.
Redirect when it makes sense. Old URL moved? Redirect. Random spam URL? Let it 404.
Return proper status codes. 404 for pages that are gone. 410 if they’re gone forever and you want to be explicit about it. Don’t fake 200s.
Keep your sitemap clean. Only canonical, indexable URLs. If it’s not something you want indexed, it shouldn’t be in there.
404s aren’t something Google punishes you for. They’re a normal part of how the web works. Content comes and goes. Links break. That’s life.
What matters is understanding why they’re happening and whether you should do something about it. Usually, the answer is “fix the ones you control, ignore the ones you don’t.”
And if you’re spending hours chasing every 404 in Search Console, you’re probably optimising the wrong thing.


