What we keep seeing is this: ecommerce teams tend to make the same out-of-stock mistake in one of two directions. They either remove the product page too quickly, or they keep it live with no useful next step for the shopper.
Both choices leak value.
Google’s guidance is still clear on the temporary-out-of-stock case. In its Search Central advice for pausing a business online, Google explicitly says it is better to keep the page live and mark it out of stock rather than remove it from Search, because people still need first-hand information about the product (Google Search Central). Its product structured-data documentation also supports explicit availability values such as OutOfStock, BackOrder, PreOrder, Discontinued, and SoldOut (Google Search Central).
The UX side is just as important. Baymard’s updated product-page research says 68% of sites still do not allow users to purchase temporarily out-of-stock products by increasing delivery time, and 30% of users are likely to abandon to a competitor if they hit a dead-end out-of-stock state (Baymard). Baymard’s apparel research adds another warning sign: 39% of participants discovered on product pages that the item they liked was not available in their size, forcing a fresh search (Baymard).
An out-of-stock product page is not just an inventory status. It is a recovery moment.
What an out-of-stock product page should signal
The first job of the page is clarity.
Users should know immediately whether the item is:
- temporarily unavailable
- backorderable
- available for pre-order
- discontinued
- replaced by a newer model
- unavailable only in a specific size, color, or variant
If that distinction is vague, the shopper cannot make a sensible next decision.
That means the availability state should be visible in the main purchase area, not buried in fine print or hidden behind a failed add-to-cart interaction.
Why deleting or redirecting too fast creates avoidable loss
Many teams treat out-of-stock states as a cleanliness problem. A product is unavailable, so they either remove the page or redirect it somewhere “close enough”.
That can be the wrong move for three reasons.
First, you lose a page that may still rank, attract links, or satisfy branded and model-specific searches.
Second, you remove first-hand information that shoppers may still need, even if they cannot buy right now. This is exactly why Google recommends keeping temporarily unavailable product pages live instead of removing them from Search.
Third, you waste a strong intent signal. A user on an unavailable product page has already told you the kind of item they care about. If the page vanishes or redirects too broadly, the store loses the opportunity to route them toward the next-best product, family, or collection.
This is similar to the dead-end problem we covered in our ecommerce no results page guide. In both cases, the store already knows what the shopper wanted. The worst possible response is to remove the context and make them start over.
Temporary, seasonal, and permanently unavailable are not the same case
| Product state | Best default action | Why |
|---|---|---|
| Temporarily out of stock | Keep the page live and mark availability clearly | Preserves search value and shopping intent |
| Backorder or pre-order | Keep page live and allow commitment where operationally possible | Captures demand without forcing users elsewhere |
| Variant unavailable but product family active | Keep page live, surface other variants and nearest matches | Helps users recover without leaving the product family |
| Seasonal but expected to return | Keep page live, explain timing, capture alerts, show related products | Retains demand and context |
| Permanently discontinued with close replacement | Keep page live or 301 depending on context and user need | Choose based on search demand and product similarity |
| Permanently discontinued with no clear successor | Usually keep the page live with alternatives instead of redirecting broadly | Preserves intent and avoids misleading redirects |
Most ecommerce mistakes happen because teams force all of those cases into one rule.
What to do with temporarily out-of-stock products
Keep the page live
If the product is expected back, keeping the page live is usually the right default. That lets users understand what happened, compare specs, and choose whether to wait or switch.
It also lets search engines keep seeing the canonical product URL rather than a shifting redirect pattern.
Mark the status clearly in the buy box
Users should not need to infer availability from a disabled button, a missing size, or a tiny stock note. Put the message in the main purchase area and make the meaning specific:
Temporarily out of stockBack in 2-3 weeksPre-order for May dispatchOnly size M unavailable
Specificity matters more than tone here.
Offer the strongest next action, not just an email alert
Baymard’s out-of-stock research is blunt on this point: email-me buttons and waitlists are much less effective than allowing an order or pre-order when the business can operationally support it.
So the decision ladder should look like this:
- allow purchase with delayed dispatch if operationally possible
- allow pre-order if stock timing is reliable
- offer a restock alert if neither of the above is possible
If restock alerts are your only strategy, make sure they are not the only visible action on the page. Show replacement products and related category paths too.
Keep users inside the product family
When a specific variant is unavailable, shoppers should not have to backtrack through the catalogue.
Show:
- available colors
- available sizes
- close sibling products
- the parent collection
- replacement models where relevant
This is also why product families need strong internal linking. If the page has no route to sibling variants, the inventory problem becomes a discovery problem. That is covered more broadly in our ecommerce internal linking guide.
What to do with discontinued or replaced products
The permanent-unavailability case is more nuanced.
If there is a clear successor, consider whether the old page still carries search intent
If users searching the old product are genuinely best served by the new model, a 301 redirect can be sensible. But only do this when the replacement is genuinely close in function and expectation.
If the replacement differs materially in specification, price point, compatibility, or audience, a broad redirect can feel misleading.
If the old product still answers a real search need, keep the page and turn it into a transition page
This is often the better choice for products with:
- branded demand
- model-number demand
- external links
- review and comparison visibility
- compatibility relevance
In that case, the page can stay live while clearly stating the product is discontinued and prominently promoting the best next options.
Avoid redirecting every unavailable product to the parent category
This is a common shortcut, but it is often too broad. If the user wanted a particular office chair, redirecting them to “Furniture” or even just “Office Chairs” may be technically neat and commercially weak.
The more precise the next route, the better.
Structured data and feed hygiene matter more than most teams think
Google’s current product documentation gives two important signals here.
First, mark availability explicitly in structured data using the correct value for the real product state.
Second, Google’s product-variants documentation warns that JavaScript-generated Product markup can make Shopping crawls less frequent and less reliable, which matters for fast-changing content such as product availability and price (Google Search Central).
That means availability updates should not depend on fragile front-end rendering alone.
At a practical level:
- keep page content and structured data aligned
- keep feed availability aligned with on-page availability
- make sure variant relationships are coherent
- do not leave stale
InStockmarkup on unavailable products - avoid delayed frontend-only availability rendering for fast-moving catalogues
If your product data stack is drifting here, the problem is larger than a single page template. That is usually a sign to step back and run a broader ecommerce tech stack audit checklist.
The most common out-of-stock mistakes
Hiding the page entirely
If the product is only temporarily unavailable, this is usually too aggressive.
Leaving the page live but making it a dead end
This is the most common UX failure. The status is shown, but there is no meaningful next action.
Using vague inventory language
Unavailable is weaker than Back in late April, Only black unavailable, or Ships in 10 days.
Failing to distinguish variant stock from product-family stock
A user seeing one size unavailable should not assume the whole product family is gone.
Treating email alerts as a complete solution
Alerts can help, but they do not replace alternatives, pre-orders, or stronger next-step merchandising.
Ignoring apparel and compatibility contexts
Variant stock issues hurt harder in categories where fit, size, and compatibility are essential. Baymard’s finding that 39% of participants discovered size unavailability only after reaching the product page shows how easily this friction compounds.
EcomToolkit’s Take
Our view is simple: an unavailable product page should still behave like a useful page.
If it keeps ranking, attracts links, or captures product-specific demand, deleting it too early is usually wasteful. If it stays live but offers no route forward, it becomes a commercial dead end. Neither outcome is strong.
The stores that handle this well usually do three things consistently. They separate temporary from permanent unavailability, they make the status obvious in the main purchase area, and they treat the unavailable page as a routing layer into replacements, variants, or related collections.
That sounds operationally basic, but many teams still handle stock states as a binary yes-or-no flag. Real stores need a more useful model than that.
If you want the practical default, use this:
Keep temporary pages live, make the stock state explicit, and always give the user a next-best path.
That one rule solves more of the problem than most complicated flowcharts.
Final checklist for out-of-stock product pages
- distinguish temporary, variant-level, seasonal, and permanent unavailability
- keep temporarily unavailable pages live
- show stock status clearly in the primary purchase area
- allow backorder or pre-order where operationally realistic
- do not rely on restock alerts as the only next action
- surface alternatives, sibling variants, and parent-category routes
- use precise redirects only when a true successor exists
- keep discontinued pages live if they still satisfy model-specific demand
- align on-page messaging, structured data, and feed availability
- avoid JS-only availability logic for fast-changing stock states
- treat unavailable pages as recovery moments, not cleanup targets
If you are also cleaning up the paths around those pages, the next useful reads are our guide on ecommerce internal linking for stores with deep catalogs and the broader ecommerce no results page guide.