In a recent case, we assisted a client in realizing that despite encountering a "404 Not Found" error for a page on their site, their web server was incorrectly indicating a "200 OK status." This 200 OK status suggested the page was found at the specified location. We shared with them that this is an accessibility issue and an issue for search engines. A 200 OK status implies that the page was found and the request was successful, which is not the case.
Giving the correct status code informs users and search engines when pages do not exist.
It can cause unnecessary page traversing for your users, particularly users that utilize a screen reader while browsing. Lawsuits have cited this problem as a significant factor contributing to a website’s overall accessibility. If you return a 404 status, the screen reader will relay this information upon page load to the website visitor. If a web server returns a 200 response with a 404 page, the user may unnecessarily spend time traversing the page to get to the content to then find out that the page is simply a 404 page.
For search engines, it is important to return 404s where appropriate so the search results don’t link to non-existent pages. 404s tell search engines to remove those results from potential listing results.
You don’t even need DubBot to test your 404 pages' status. We’ve found this third-party (free) service useful for quick testing. We’d recommend testing a URL you know does not exist on your website and verify that a proper 404 status is returned. You can see in the below screenshot where we tested https://dubbot.com/url-that-doesnt-exist as our test. The second red arrow points to a 404 result.
You can find more information on "good" 404 pages on this older blog post of ours.