{"id":22873,"date":"2026-08-30T08:36:32","date_gmt":"2026-08-30T06:36:32","guid":{"rendered":"https:\/\/www.curiaweb.ch\/?post_type=docs&#038;p=22873"},"modified":"2026-08-30T08:36:33","modified_gmt":"2026-08-30T06:36:33","password":"","slug":"find-and-fix-404-errors","status":"publish","type":"docs","link":"https:\/\/www.curiaweb.ch\/en\/hilfe\/seo-monitoring\/404-fehler-finden-beheben\/","title":{"rendered":"Find and fix 404 errors"},"content":{"rendered":"<p class=\"wp-block-paragraph\">You click on a link and instead of the expected page, \u201ePage not found\u201c appears? Then this is often a 404 error.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The HTTP status code <code>404 Not Found<\/code> means that the server is reachable, but the resource expected under the requested URL was not found.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Individual 404 responses are completely normal on the internet. They primarily become problematic when important pages have accidentally disappeared, internal links point to URLs that no longer exist, or old addresses are left behind without a proper redirection after a website relaunch.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">In this guide, we will show you how to find 404 errors, narrow down their cause, and decide whether the URL should be corrected, restored, redirected, or intentionally left as non-existent.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\"><strong>Briefly explained:<\/strong> <code>404 Not Found<\/code> doesn't automatically mean that your entire website or web server is down. The server was reached, but could not find the specifically requested resource under this URL.<\/p>\n<\/blockquote>\n\n\n\n<h2 class=\"wp-block-heading\">What does the status code 404 mean?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">When you call a URL, your browser sends an HTTP request to the responsible web server.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If the requested resource exists and can be successfully delivered, the response is typically:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>200 OK<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If the requested resource cannot be found under this URL, the server can respond with:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>404 Not Found<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">To put it simply, it looks like this:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Browser\n   \u2193\nhttps:\/\/example.com\/produkte\/test\/\n   \u2193\nWeb server\n   \u2193\nResource under this URL not found\n   \u2193\n404 Not Found<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">A 404 error does not automatically mean a server outage<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">This is an important distinction.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">In a classic 404 error, the web server was basically able to process the request. The problem concerns the requested resource or URL.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Other HTTP status codes may indicate other causes. An <code>403<\/code> means something different than a <code>404<\/code>, and errors from the field <code>5xx<\/code> indicate server-side issues.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">You can find an overview at <a href=\"\/en\/help\/seo-monitoring\/http-status-codes-explained\/\">HTTP status codes explained: 200, 301, 404, 403, and 500<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">What does a 404 error look like?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">What a 404 page looks like visually depends on the respective website.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">For example, you can see messages like:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>404 Not Found\n\nPage not found\n\nPage not found\n\nThe requested page was not found.<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Many websites use a custom-designed error page with navigation, a search function, or a link back to the home page.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">However, not only the visible text is decisive. For the technical evaluation, the HTTP status code actually returned by the server is authoritative.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Why do 404 errors occur?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">There are numerous possible causes. Frequently, a page has been deleted, renamed, or moved while links to the previous URL still exist.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Even a simple typo in an address can cause a 404 error.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Example:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Correct:\n\/kontakt\/\n\nIncorrect:\n\/kontkat\/<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">The server cannot know that actually <code>\/contact\/<\/code> that was meant. For him, these are two different paths.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Deleted pages as the cause<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">If a page is deleted, its previous URL may no longer exist.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Assuming that previously existed:<\/p>\n\n\n\n<figure class=\"wp-block-embed\"><div class=\"wp-block-embed__wrapper\">\nhttps:\/\/example.com\/alte-leistung\n<\/div><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">The page is being deleted and there is no longer any content at this address. A later visit can then with <code>404 Not Found<\/code> be answered.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Whether this is a problem depends on whether the resource was intentionally removed and whether there is a sensible successor.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Changed URLs as a cause<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">404 errors occur particularly often when the address of a page is changed.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Before:<\/p>\n\n\n\n<figure class=\"wp-block-embed\"><div class=\"wp-block-embed__wrapper\">\nhttps:\/\/example.com\/webdesign-chur-alt\n<\/div><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Afterwards:<\/p>\n\n\n\n<figure class=\"wp-block-embed\"><div class=\"wp-block-embed__wrapper\">\nhttps:\/\/example.com\/webdesign-chur\n<\/div><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">If the old URL simply disappears, old links can continue to point to the previous address.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Therefore, in the case of a permanent URL change, a suitable 301 redirect is often advisable.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">We explain how to set these up at <a href=\"\/en\/help\/seo-monitoring\/301-weiterleitung-einrichten\/\">Set up a 301 redirect: Permanently redirect URLs<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Broken internal links<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">A common and avoidable cause is broken links within your own website.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Example:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Page A\n   \u2193\nLink to \/preise-alt\/\n   \u2193\n404 Not Found<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">If the correct landing page is now under <code>\/pricing\/<\/code> is accessible, the internal link should be changed directly to this current URL.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">An existing 301 redirect can still catch old external links. Nevertheless, you should try to set your own internal links directly to the current destination whenever possible.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Broken external links<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Other websites can also link to a URL that no longer exists on your site.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">You cannot always change such links yourself.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If the old resource now has a suitable new successor, a redirection can make sense.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If there is no longer any comparable content to replace it, an arbitrary page should not be chosen as the redirection target solely because of the external link.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">404 error after a website relaunch<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">A relaunch is a particularly critical time.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If the URL structure changes in the process, many previously working addresses can disappear at the same time.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Example:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Old website:\n\/produkte\/hosting.html\n\/service\/kontakt.php\n\/unternehmen\/ueber-uns.html\n\nNew website:\n\/hosting\/\n\/kontakt\/\n\/ueber-uns\/<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Without a proper mapping of the old and new URLs, numerous 404 errors can occur after the relaunch.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\"><strong>Important during a relaunch:<\/strong> Old URLs should be recorded before the change whenever possible and assigned to the respective suitable new target pages. A redirect plan is helpful precisely for this purpose.<\/p>\n<\/blockquote>\n\n\n\n<h2 class=\"wp-block-heading\">404 errors due to typos are normal<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Not every 404 hit indicates a problem with your website.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">For example, a visitor can manually enter a non-existent address:<\/p>\n\n\n\n<figure class=\"wp-block-embed\"><div class=\"wp-block-embed__wrapper\">\nhttps:\/\/example.com\/diese-seite-gibt-es-gar-nicht\n<\/div><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Bots and automated scanners also regularly request random or known paths that may have never existed on your website.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">That your server returns a 404 status for a resource that does not actually exist is fundamentally correct behavior.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\"><strong>Basic rule:<\/strong> The goal is not to build a website that never returns a 404 status. The goal is to detect unintentional 404 errors on actually relevant URLs and handle them meaningfully.<\/p>\n<\/blockquote>\n\n\n\n<h2 class=\"wp-block-heading\">How do I find 404 errors?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">There are several possibilities. Which of these makes sense depends, among other things, on whether you are investigating a single problematic URL or systematically finding errors on a larger website.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">For a single address, you can first access it directly in the browser.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">For a larger website, additional crawling tools, website monitoring, server information, or Google Search Console can also provide clues about problematic URLs.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Systematically check internal links<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">A website crawler can follow the internal links of your website and thereby identify which linked URLs return an error status.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This is especially helpful after:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Website relaunch\nURL changes\nDeletion of many pages\nRestructuring of the navigation\nMigration to another CMS\nMajor content cleanup<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Afterward, the evaluation of the finding is important. A tool can show you that a URL returns a 404 status. Whether this URL should be restored, redirected, or intentionally left removed is something you must decide based on the content.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">404 error in Google Search Console<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Google Search Console can also provide clues about URLs that Google has visited but could not successfully index.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">In doing so, you should not reflexively treat every 404 URL listed there as a critical error.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Check first:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Did this URL actually exist in the past?\n\nIs it supposed to still exist today?\n\nIs there suitable new content available?\n\nIs it still being linked to internally?\n\nIs the URL merely an old or unknown path?<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">We will cover how to set up the Google Search Console in general later under <a href=\"\/en\/help\/seo-monitoring\/google-search-console-einrichten\/\">Set up Google Search Console and verify website<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Check 404 error using browser developer tools<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">If you want to check the actual HTTP status of a URL, you can use the developer tools of a modern browser.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">In the network view, you can see which request was made and what status code the server returned.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This allows you to distinguish, for example, whether actually <code>404<\/code> is returned or whether the page merely looks like an error page visually.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">What is a soft 404?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">With a so-called soft 404, a page looks to the visitor as if the desired content does not exist, but the server does not return a corresponding error status.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">For example, a non-existent resource could display a page with the text \u201eContent not found\u201c, but technically with:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>200 OK<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">answer.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This creates a contradiction:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Content says:\n\"Page not found\"\n\nHTTP response says:\n\"200 OK\"<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Search engines can detect such situations as soft 404s or treat them accordingly.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\"><strong>Important:<\/strong> A well-designed error page should still return the technically appropriate HTTP status. The design of an error page and its HTTP status are two different things.<\/p>\n<\/blockquote>\n\n\n\n<h2 class=\"wp-block-heading\">When should a 404 error be fixed?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Action is required, in particular, when a URL should actually work.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This is the case, for example, when an important page has been accidentally deleted, an internal link is incorrect, or a logical successor exists after a URL change.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The correct solution depends on the cause.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Case 1: The page should continue to exist<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">If the resource was accidentally deleted, incorrectly published, or stored at the wrong address, you should restore the actual page or correct the configuration.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A redirect is not automatically the right solution if this exact URL is actually supposed to keep working.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Case 2: The URL has been permanently changed<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">If the previous content is permanently available at a new URL, a 301 redirect can make sense.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>old URL\n   \u2193 301\nmatching new URL<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">As a result, the old address no longer leads to a 404 error, but directly to the actual successor.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Case 3: An internal link is incorrect<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">If only a link within your website was misspelled, you should correct this link.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Example:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Wrong:\n\/kontakt-us\/\n\nRight:\n\/kontakt\/<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">It would be unnecessary to permanently set up a redirect for every internal typo if you control the broken link yourself and can correct it directly.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Case 4: Content was deleted without replacement<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">If a resource has been deliberately and permanently removed and there is no functionally appropriate replacement, the URL does not need to be redirected to any other page.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A 404 status may be technically understandable in this case.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">It is important that your own website no longer prominently links to the removed resource.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Should every 404 be redirected to the homepage?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>No.<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A blanket rule such as:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>every unknown URL\n        \u2193 301\nhomepage<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">is not a clean solution.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">For example, a visitor who accesses an old trade article does not automatically expect the home page.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Even technically, a permanent redirect to the homepage does not meaningfully describe what happened to any given unknown resource.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\"><strong>Practical Tip:<\/strong> Use a redirect only if you can determine a comprehensible and content-appropriate destination.<\/p>\n<\/blockquote>\n\n\n\n<h2 class=\"wp-block-heading\">What about very similar alternative pages?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">If an old page has been removed and a new page serves the same or a very similar purpose, it can be a suitable redirect target.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Example:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>ALT:\n\/anleitungen\/wordpress-backup-alt\/\n\nNEU:\n\/hilfe\/wordpress\/wordpress-backup-erstellen\/<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">What is crucial is not that both URLs look similar. What is crucial is that the new resource actually makes sense for a visitor expecting the old content.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Design a user-friendly 404 page<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Even with technically correct 404 responses, you can help visitors.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A good error page should clearly state that the requested page was not found and offer a useful way to continue browsing the website.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Depending on the website, the main navigation, a search function, or a link to the homepage, for example, can be helpful.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Avoid, on the other hand, error messages that do not explain to the visitor what has happened.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">The 404 page is allowed to link to the homepage<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">There is an important difference here compared to automatic forwarding.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Of course, a 404 page may contain a visible link to the homepage.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The visitor then decides for themselves whether they want to switch there.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">That is different from automatically redirecting every unknown URL to the homepage via a 301.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">404 pages shouldn't become dead ends themselves<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">When a visitor lands on a non-existent URL, they shouldn't necessarily have to leave the website using the back button.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">An understandable error page with navigation can help finding a suitable area.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">For extensive websites, an additional search function can also be useful.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Fix internal links on 404 pages first<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">When prioritizing, you should pay particular attention to errors caused by your own website.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If a frequently visited article links to a non-existent internal page, you can fix this error directly.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This is usually more relevant than a random non-existent URL that some bot tried out.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">404 error and external backlinks<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">If a URL that no longer exists is linked from other websites, you should check whether there is a suitable successor content.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If so, a permanent redirect can make sense.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If not, you should not choose an off-topic landing page solely because of the existing external link.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">404 error after a domain or website migration<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">After a migration, 404 errors can occur if URL paths were not completely transferred or the page structure has changed.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">In such cases, you should not only correct individual errors, but also check whether a pattern exists.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Example:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>OLD:\n\/knowledgebase\/artikel-1\/\n\/knowledgebase\/artikel-2\/\n\/knowledgebase\/artikel-3\/\n\nNEW:\n\/hilfe\/kategorie\/artikel-1\/\n\/hilfe\/kategorie\/artikel-2\/\n\/hilfe\/kategorie\/artikel-3\/<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">With structural changes of this kind, a complete mapping of the old URLs to their new equivalents is much more reliable than subsequently repairing individual 404 error messages.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Avoiding redirect chains during troubleshooting<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">If a redirect already exists for an old URL and its destination changes again later, a redirect chain can be created.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>URL A\n \u2193 301\nURL B\n \u2193 301\nURL C<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">If <code>URL C<\/code> meanwhile the final goal is, it should be checked whether <code>URL A<\/code> straight to <code>URL C<\/code> can refer.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This allows you to avoid unnecessary stopovers.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Regularly check for 404 errors<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">A small static website usually generates fewer URL changes than a website that is continuously expanded or redesigned.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Therefore, a new check is particularly worthwhile after major changes.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">These include in particular:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Relaunch\nCMS migration\nChanging the permalink structure\nDeleting a lot of content\nRenaming important pages\nDomain change\nMajor navigation overhaul<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Not every 404 URL found is equally important<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">On a larger website, tools can report numerous non-existent URLs.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">First, prioritize URLs that are actually relevant.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">For example, pages that are no longer accessible but have internal links, known old URLs after a relaunch, or addresses to which relevant external links still point are particularly important.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Randomly generated bot requests for paths that never existed have a different priority.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Google continues to report an old 404 URL<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Search engines can know URLs even if they are no longer linked on your current website.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">For example, a URL may have existed previously or have been discovered via an external link.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If the resource was intentionally removed and has no suitable replacement, you do not necessarily have to create a new page or redirect just so the URL no longer appears as a 404.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If, on the other hand, the page is accidentally missing or has a clear successor, you should act accordingly.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Google is not indexing an important page<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">A 404 status is just one of many possible reasons why a URL does not appear in search results.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Other technical settings, internal linking, URL findability, and processing by Google can also play a role.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">We will cover this topic in detail later under <a href=\"\/en\/help\/seo-monitoring\/google-is-not-indexing-website\/\">Google is not indexing my website: Check causes<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">404 or other issue?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Before choosing a solution, you should ensure that a 404 status actually exists.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A page may not function as expected for various reasons.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>404 \u2192 Resource not found\n\n403 \u2192 Access forbidden\n\n500 \u2192 Internal server error\n\nRedirect \u2192 Another URL is being accessed\n\nDNS issue \u2192 Domain may not be reachable at all<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">The error message or the actual HTTP status helps to determine the correct level of troubleshooting.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">How to handle a 404 error<\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code>404 URL found\n        \u2193\nDid the URL exist previously?\n        \u2193\nShould the content continue to exist?\n        \u2193\n \u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2510\n YES           NO\n \u2193              \u2193\nRepair or     Is there a\nrestore       suitable successor?\npage              \u2193\n              \u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2510\n              YES           NO\n              \u2193              \u2193\n           Appropriate    404 can\n           redirect       be correct\n              \u2193\n          Update internal\n          links<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">404 Troubleshooting Checklist<\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code>Call affected URL directly\n        \u2193\nCheck HTTP status\n        \u2193\nRule out typos\n        \u2193\nCheck internal link\n        \u2193\nClarify if page existed previously\n        \u2193\nSearch for suitable successor\n        \u2193\nRepair page OR\nSet up 301 OR\nIntentionally leave 404\n        \u2193\nUpdate internal links\n        \u2193\nTest solution again<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Summary<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The HTTP status code <code>404 Not Found<\/code> means that the server could not find the requested resource at the accessed URL.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A 404 status is not fundamentally an error that always needs to be fixed. If a resource truly does not exist and has no meaningful successor, a 404 response can be completely correct.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Action is required in particular regarding accidentally missing pages, faulty internal links, and old URLs for which suitable new content exists following a permanent change.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">In this case, depending on the cause, you should restore the page, fix the broken link, or set up a suitable 301 redirect.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Avoid, on the other hand, blanket redirects of all 404 URLs to the homepage.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>In the event of a 404 error, the most important question is not \u201eHow do I get rid of the 404?\u201c, but rather \u201eWhat should logically happen at this URL?\u201c<\/strong><\/p>","protected":false},"excerpt":{"rendered":"<p>Du klickst auf einen Link und statt der erwarteten Seite erscheint \u201eSeite nicht gefunden\u201c? Dann handelt es sich h\u00e4ufig um einen 404-Fehler. Der HTTP-Statuscode 404 Not Found bedeutet, dass der Server erreichbar ist, die unter der angeforderten URL erwartete Ressource jedoch nicht gefunden wurde. Einzelne 404-Antworten sind im Internet vollkommen normal. Problematisch werden sie vor [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_joinchat":[],"footnotes":""},"doc_category":[85],"doc_tag":[],"class_list":["post-22873","docs","type-docs","status-publish","hentry","doc_category-seo-monitoring"],"year_month":"2026-09","word_count":2659,"total_views":"9","reactions":{"happy":"0","normal":"0","sad":"0"},"author_info":{"name":"Silvio Mazenauer","author_nicename":"admin-curia","author_url":"https:\/\/www.curiaweb.ch\/en\/author\/admin-curia\/"},"doc_category_info":[{"term_name":"SEO &amp; Monitoring","term_url":"https:\/\/www.curiaweb.ch\/en\/hilfe-kategorie\/seo-monitoring\/"}],"doc_tag_info":[],"knowledge_base_info":[],"knowledge_base_slug":[],"_links":{"self":[{"href":"https:\/\/www.curiaweb.ch\/en\/wp-json\/wp\/v2\/docs\/22873","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.curiaweb.ch\/en\/wp-json\/wp\/v2\/docs"}],"about":[{"href":"https:\/\/www.curiaweb.ch\/en\/wp-json\/wp\/v2\/types\/docs"}],"author":[{"embeddable":true,"href":"https:\/\/www.curiaweb.ch\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.curiaweb.ch\/en\/wp-json\/wp\/v2\/comments?post=22873"}],"version-history":[{"count":1,"href":"https:\/\/www.curiaweb.ch\/en\/wp-json\/wp\/v2\/docs\/22873\/revisions"}],"predecessor-version":[{"id":22875,"href":"https:\/\/www.curiaweb.ch\/en\/wp-json\/wp\/v2\/docs\/22873\/revisions\/22875"}],"wp:attachment":[{"href":"https:\/\/www.curiaweb.ch\/en\/wp-json\/wp\/v2\/media?parent=22873"}],"wp:term":[{"taxonomy":"doc_category","embeddable":true,"href":"https:\/\/www.curiaweb.ch\/en\/wp-json\/wp\/v2\/doc_category?post=22873"},{"taxonomy":"doc_tag","embeddable":true,"href":"https:\/\/www.curiaweb.ch\/en\/wp-json\/wp\/v2\/doc_tag?post=22873"}],"curies":[{"name":"WP","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}