Skip to content
6 min read · UI/UX

Ecommerce 404 Page Examples That Recover the Visit

IWritten byIzazul Islam TusharHead of Design
Updated on 16 August 2026
A generic unbranded ecommerce 404 page reading we cannot find that page, with a search field carrying the typed query walnut side table, six category tiles and a recently viewed row of four products priced £129.00, £64.00, £249.00 and £38.00

A good ecommerce 404 page does three things on one screen. It says plainly that the page is not there, it hands over a search field big enough for a product name, and it offers routes: four to six category tiles and a row of products with prices on them. What it must never do is return a 200 status or a cartoon and a link home.

Every store has one page that receives traffic it already paid for and offers nothing for sale. It is usually whatever the theme shipped, it usually contains an illustration of something falling over, and it is almost always the only template on the site nobody has ever opened a report on.

This article is about that one template and the near miss beside it, the out-of-stock product. The wider inventory of dead ends, meaning the empty cart, zero search results and the order-failure screen, belongs to the empty states article and is not repeated here.

What a good ecommerce 404 page contains

The visitor arriving here is not lost in the browsing sense. They followed a link, typed a URL or clicked an email from March, and they had something specific in mind. The page has one job, which is to get them back to a product without making them start again.

  • A heading that names what happened in the store’s own voice, and no joke that delays the answer by a sentence.
  • A search field, focused, wide enough to take a full product name, because the visitor can usually still tell you what they wanted.
  • Four to six top-level category tiles, which cover the visitor whose intent was broader than one product.
  • A row of recently viewed products with prices, falling back to best sellers or new arrivals for a first-time visitor.
  • A report-a-broken-link control, which costs nothing and turns a dead end into a bug report somebody can close.
  • The full site header, footer and basket, because stripping the chrome removes every route the visitor already knew about.

Then check it on a phone, which is where most of this traffic lands and where most 404 templates put the search field below the fold under a large graphic. A recovery screen that needs scrolling has already lost the argument it exists to win.

Five patterns, and when each one is wrong

Nothing in the list above is universal. Each pattern recovers a specific kind of visit, and two of them actively misfire on the wrong store, so it is worth being explicit about which is which before copying a screenshot from a design gallery.

Recovery patterns on an ecommerce 404 page: what each one recovers, and the situation in which it is the wrong choice.
PatternRecoversWrong when
Search fieldA visitor who can still name the productYour site search returns nothing useful, in which case fix search before decorating the 404
Category tilesA broad intent on a large catalogueThe catalogue is small enough that the whole range fits on one collection page
Recently viewed rowA returning visitor mid-session, which is most 404 traffic from internal linksA first session, where best sellers or new arrivals do the same job honestly
Suggested match from the URLA deleted or renamed product with an obvious successorThe guess is a guess, because a confidently wrong suggestion reads worse than none
Report a broken linkThe link itself, so the next visitor never arrives hereNobody owns the inbox it posts into

The search row carries a dependency worth naming. A 404 that leads with search is only as good as the search behind it, and on plenty of stores the honest sequence is to fix site search first and rebuild the 404 second.

The out-of-stock page is the expensive one

It is not a 404 and it should never be turned into one. The visitor arrived with exactly the intent the store spends its budget buying, and deleting the page or bouncing it to a collection throws away the ranking and the intent in the same move.

An out-of-stock product page at £129.00 with the walnut variant struck through and marked unavailable, a disabled out-of-stock button, a coral back-in-stock email panel stating next delivery expected 12 September, and three available alternatives at £119.00, £139.00 and £145.00

The strongest pattern is also the least implemented. Baymard Institute reports that 68% of ecommerce sites do not allow users to place orders for temporarily out-of-stock products, and that when a site simply says an item is unavailable, 30% of users are likely to abandon and look for it elsewhere: baymard.com/blog/handling-out-of-stock-products. Where your operation can support it, selling with a stated delivery date beats every alternative on this page. A notify-me field is a supplement, not the answer.

Where it cannot, the page still owes the visitor three things: a dated expectation rather than a vague promise, a back-in-stock capture that asks for nothing beyond an email address, and the nearest genuine alternatives in the same category and price band rather than a generic best-sellers rail. And handle variants honestly. One colour out of stock should mark that option unavailable in place rather than hiding it, because a hidden option makes the shopper doubt they ever saw it.

Get the status code right before you get the design right

A designed 404 served with a 200 status is worse than an ugly one served correctly. Google’s documentation on HTTP status codes is direct about both halves: URLs returning a 4xx status are dropped from the index, and "if the content suggests an error for Google Search, an empty page or an error message, Search Console will show a soft 404 error" regardless of what the server claimed, at developers.google.com/search/docs/crawling-indexing/http-network-errors.

So three rules, in order. A missing page returns 404. Something deliberately and permanently withdrawn returns 410, which is the honest code and stops the crawler retrying. And nothing gets blanket-redirected to the homepage, because that pattern discards the only information the visit carried, which was the URL they asked for.

Finding your own dead ends

This is the part that turns a design exercise into a prioritised list, and it is narrower than instrumenting every failure screen. Here the question is only which URLs your store is currently 404ing, and where those visits came from. Three sources, in descending order of usefulness:

  • The page indexing report in Search Console, which lists the not-found URLs Google has crawled and, on most of them, the pages still linking to them.
  • Server access logs filtered to 404 responses, which catch everything Google never crawled: mistyped URLs, old campaign links, app deep links and anything behind a parameter.
  • Your analytics page-path report filtered to the 404 template, with the referrer dimension attached, because the referrer decides which fix applies.
  • A crawl of your own site, which finds internal links still pointing at deleted products. This is the cheapest category to fix and usually the largest.

The referrer is the whole point of the exercise. A 404 with an internal referrer is a bug in your own site and should be fixed at the link. One with an external referrer is a redirect you owe somebody, usually from a migration nobody finished. And one with no referrer at all is a typo or an old bookmark, which no redirect can help and which is precisely what the search field on the page is for.

Build it in this order

Status codes first, because a wrong one makes every later measurement lie. Then the 404 template itself, with search, categories and a product row above the fold on a phone. Then the out-of-stock rule, which is where the money is. Then the referrer report, which is the step that funds the next round by turning a template nobody looks at into a list of specific broken links with owners.

Error screens are the clearest test of whether a store treats interface design as a system or as a set of happy paths, because they only exist when something has gone wrong and they are always the last thing anybody reviews. If nobody at your company can say what your 404 currently shows on a phone, that is where to start.

Sharein𝕏f

The questions people ask first

Three things on one screen: a plain sentence saying the page is not there, a search field wide enough for a product name, and routes onward in the form of four to six category tiles and a row of recently viewed or best-selling products with prices. Keep the site header, footer and basket, because stripping the chrome removes every route the visitor already knew.

No. A blanket redirect throws away the one piece of information the visit carries, which is the URL they asked for, and it hands somebody who wanted a specific product a page selling everything. Return a real 404 and use the page to offer search, categories and a plausible alternative instead.

A 404, or a 410 for something deliberately and permanently removed. Google drops URLs returning a 4xx status from the index, which is the correct outcome for a page that is gone. A designed error page served with a 200 status is the failure mode to avoid, because Search Console logs it as a soft 404 and the URL lingers.

Stay published and stay indexed. Baymard Institute finds that 68% of ecommerce sites will not let users order temporarily out-of-stock products, and that 30% of users are likely to abandon to a competitor when told simply that an item is unavailable. Where operations allow it, selling with a stated delivery date beats a notify-me field, which is a supplement rather than the answer.

Three sources, in order of usefulness. The page indexing report in Search Console lists the not-found URLs Google has crawled along with referring pages. Server access logs filtered to 404 responses catch everything Google never saw, including mistyped URLs and old campaign links. Then your analytics page-path report filtered to the 404 template, with the referrer attached, because the referrer is what tells you which fix applies.

IWritten byIzazul Islam TusharHead of Design

Izazul has been sketching wireframes on printouts since before it was retro, and still can't work without a marker in hand.

Do you like what you see?

Optimize your store