Out of Stock Product Pages SEO: 404, 410 or 301?

How do you handle out of stock product pages for SEO?
Handling out of stock product pages means keeping each unavailable product's URL, ranking signals and user value intact while you return the right status code and the right content. If the product returns, you keep the page. With a close replacement, you use a 301. If nothing replaces it, you return a 404 or 410.
There is no single rule, because not every stock-out is the same. Also, a supplier delay and a discontinued model call for different actions.
In our ecommerce work, we start with one question: will this product come back? So the answer decides the fate of the page.
This guide walks through the decision tree, availability markup, Merchant Center consistency and the user experience. In practice, our goal is a procedure your team can apply today.
We also avoid invented numbers. Then we rely on Google's official documentation, and we label the rest as field experience.
First, build a quick inventory. Which products are out of stock, which are gone for good, and which have external links? Those three answers set your priorities.
What is the difference between temporary and permanent stock-outs?
A temporary stock-out means the product will be sold again after some time. A permanent one means it will not. This single distinction decides whether you keep the page.
Temporary cases include supplier delays, sell-outs after a campaign and seasonal gaps. Permanent cases include a model that left production, a brand contract that ended and a product replaced by a newer version.
In practice, there is a third group: unknown. However, if your supplier gives no date, treat the product as temporary. However, do not let uncertainty last forever.
Set a review limit. For example, our team reviews unknown items at regular intervals and moves the ones with no realistic return into the permanent group.
For example, an electronics store often retires an old model when a new one arrives. First, a winter coat, on the other hand, may be out of stock all summer and return in autumn. Treating both the same is a mistake.
So we recommend giving every product a status label. Temporary, permanent or unknown: the label helps your team and your automation, and the page behavior can follow it.
- Temporary: supplier delay, seasonal gap, sell-out after a campaign.
- Permanent: discontinued model, ended brand contract.
- Unknown: no date given, needs a periodic review.
Why should you not delete out of stock product pages right away?
Deleting a page throws away the backlinks, history and search traffic that URL has collected. When the product returns, you start from zero.
Google removes a URL from its index when it returns a 4xx error. According to the official documentation, the indexing pipeline drops a previously indexed URL after a 4xx response. So the moment you delete a page, you also give up its place in search results.
There is a user cost as well. Someone searching for the product sees an error page and moves to a competitor. Instead, a page that shows the stock status clearly lets that visitor wait or look at alternatives.
Backlinks are often the invisible asset. For example, a blogger or a news site may link to your product. Also, if you remove the page without a redirect, that value is lost.
Shoppers also bookmark products and share links. So when they open those links months later, an honest stock message beats an error page.
That is why the golden rule for temporary stock-outs is simple: keep the page, be honest about the status and restore it when the product returns. Reserve deletion for products that will not return, and only after you have considered alternatives.
What do you do on the page during a temporary stock-out?
You keep the page live with a 200 status code. You keep the price and product information, disable the buy button and state the stock status clearly.
According to Google Merchant Center documentation, an out of stock product should appear with "sold out" text or a disabled button on the page. In practice, if the page and the data source disagree, the product can be disapproved.
Do not leave the visitor with nothing. Then a back-in-stock email form, an estimated return date and similar product suggestions make the page useful.
For example, if you know the expected return date, write it on the page. However, if you do not know it, do not invent one; "we will notify you when stock is updated" is more honest.
Keep the notification form simple. An email address is enough. Also state clearly that you use it only for the stock notice.
You do not have to add "sold out" to the title tag or meta description during a temporary stock-out. Those fields can stay the same, because you would have to change them back when stock returns.
- Keep the page live with a 200 status.
- Disable the buy button and show "sold out".
- Set availability to OutOfStock in your markup.
- Add a back-in-stock form.
- Show similar products on the page.
Which decision tree should you use for out of stock product pages?
The decision tree works with two questions: will the product return, and is there a replacement? Those answers give you the action directly.
The table below is our working framework from field experience. First, it is a starting point, not a guarantee.
| Situation | Page decision | Status code | Schema value |
|---|---|---|---|
| Product returns soon | Keep page, add notification form | 200 | OutOfStock |
| Product returns, date known | Show the date, keep page | 200 | BackOrder or OutOfStock |
| Product gone, exact successor exists | Redirect to the successor | 301 | Not needed |
| Product gone, close category exists | Redirect to category or keep an informative page | 301 or 200 | Discontinued |
| Product gone, no equivalent, low value | Remove the page | 404 or 410 | Not needed |
Use the table as a conversation starter, not a rigid rule. For products with high traffic and backlinks, keeping an informative page is often worth more than a redirect.
Then turn the tree into a status field in your admin panel. Give each product a status value, so the template chooses the right page behavior on its own.
For high-value products, add human review. For example, track your top hundred products in a separate list and review every stock change on that list by hand.
The next sections explain the reasoning behind each row.
When is a 301 redirect right for a discontinued product?
A 301 is right only when a real replacement page exists. Google treats a 301 as a strong signal that the target URL should be processed.
Relevance is the critical point. Google's search documentation says that redirecting many old URLs to one irrelevant destination, such as the home page, is confusing and can be treated as a soft 404.
For example, redirecting an old phone model to the page of its newer model makes sense. Instead, sending the same page to the home page does not.
Also watch out for redirect chains. For example, if the successor product is discontinued too, the chain grows. Also, our guide on redirect chains and how to fix them explains the problem.
For bulk jobs, match old and new URLs with the redirect mapping tool and verify the result with the redirect checker.
Google's redirect documentation recommends permanent server-side redirects when you move a page. See Google's guide to redirects for details.
When you choose the successor, think about user intent. So a product with the same function and a similar price range is a good successor. An unrelated product from the same brand is not.
After redirecting, make sure the target page is in stock. Otherwise you send the visitor from one out of stock page to another.
Should you choose a 404 or a 410?
According to Google's documentation, all 4xx errors except 429 are treated the same. So do not expect a practical difference in search between a 404 and a 410.
A 410 says "removed permanently" more clearly. In practice, a 404 says "not found", and Google reduces crawling gradually.
We prefer 410 for products we remove on purpose and 404 for unclear cases. Then that is not a requirement; it is a habit that keeps our team consistent.
What matters more is the error page itself. Build the 404 body with a search box, category links and popular products.
Google does not stop crawling a 404 URL at once, it lowers the frequency gradually. However, that detail makes it easier to bring back a product you removed by mistake. First, you can read it in Google's HTTP status code documentation.
When stock returns, reopen the same URL. Creating a new address means throwing away the history of the old one.
- 404: not found, may be temporary.
- 410: removed permanently.
- In both cases, offer useful links in the page body.
What is a soft 404 and how does it appear on out of stock pages?
A soft 404 happens when the server returns 200 but the page is empty or shows an error message. Google flags this conflicting signal in Search Console.
The most common mistake on out of stock pages looks like this: the product details are removed, the page only says "product not found", yet the status stays 200. The page is then neither a product page nor a real error page.
A second common scenario is an irrelevant redirect. Instead, sending discontinued products in bulk to the home page looks like a soft 404 to Google.
The fix is simple. Either keep a real page full of product information and stock status, or return a proper 404 or 410. There is no middle path.
To detect the problem, open the page indexing report in Search Console. For example, our guide on finding unindexed pages in Search Console shows a detailed method.
Add a template-level check too. When the product data comes back empty, make the template return 404 instead of 200. Also, that way the error does not repeat.
A practical way to find soft 404s is to crawl your 200 pages that have very little content. List pages with a low word count that contain "not found", then decide on each one.
How do you write product availability markup?
You add the availability property to the Offer object with a schema.org ItemAvailability value. When stock runs out, updating that value keeps the markup consistent with what visitors see.
Google recommends using product structured data and a Merchant Center feed together. Combined, they maximize your eligibility for search experiences.
If you do not want to write the markup by hand, our schema generator produces a draft. For general background, read our guide to schema markup.
The critical rule is consistency. So if the page says "sold out" but the markup says InStock, you mislead both the user and the search engine.
On dynamic sites, connect this to your stock data. When stock reaches zero, the template should switch the value automatically, because manual updates get forgotten.
Compare your fields with Google's product structured data guide. In practice, it explains which fields product snippets and merchant listings rely on.
For example, on a single-product page, you set availability inside the Offer to OutOfStock and leave the price as it is. Then do not remove the price; you would have to add it again when the product returns.
Test the markup before publishing with Google's Rich Results Test. However, if it contains errors, fields such as stock status may not show.
When do you use InStock, OutOfStock, SoldOut and Discontinued?
Schema.org defines several values for ItemAvailability. In practice, we cover most situations with a handful of them.
| Value | Meaning | When you use it |
|---|---|---|
| InStock | Available | The product can ship right away |
| OutOfStock | Not available | Temporary stock-out, product will return |
| SoldOut | Sold out | Limited stock or limited production runs |
| Discontinued | No longer produced | The product is gone but the page stays for information |
| BackOrder / PreOrder | Orders accepted for later | The product is coming and you take orders |
Writing values as full URLs, such as https://schema.org/OutOfStock, is common and safe. See schema.org ItemAvailability for the full list.
Be honest when you choose a value. First, marking an unclear product as Discontinued closes the door on its return for no reason.
Use Discontinued carefully. It says the product is no longer made, so it fits pages you keep for spare parts, accessories or information.
Other values such as LimitedAvailability exist as well. Before you use them, however, make sure the page shows the same information clearly.
Why does stock status matter in Google Merchant Center?
Merchant Center wants the stock information in your data source to match your website. Google's documentation says that a product is disapproved when they do not match.
The supported values are in_stock, out_of_stock, preorder and backorder. For preorder and backorder items, the page must show the expected date to the customer.
A problem we see often is a late feed update. Instead, the product sells out on the site, the feed still says in stock, the ad click is wasted and the product gets disapproved.
So set your feed frequency according to how fast your stock moves. For fast-selling products, consider intraday updates.
Product disapproval is not only about stock. Even so, a stock mismatch is one of the most common reasons, so check the product diagnostics regularly.
Google's availability attribute documentation explains how each value should look on the page. For example, read it once with your team.
Also do not forget the date field on preorder products. Also, marking a product as preorder without a date causes trouble.
We covered the basics of shopping ads in our Google Shopping and Merchant Center guide.
How do you build the user experience of out of stock product pages?
A good out of stock page tells the visitor three things at once: the product is not sold right now, when it may return and what the alternative is.
Show the stock status near the price with a clear label. So the button can stay disabled, but explain why.
A back-in-stock form is the most useful element. In practice, the visitor leaves an email and hears when the product returns. Then it turns a lost visit into a future sale.
Similar product suggestions do the same job. However, show items from the same category and a similar price range.
Think about mobile users in particular. On a small screen, the stock label and the notification form should be visible without scrolling. Otherwise the visitor does not understand why they cannot buy.
Accessibility matters too. First, do not signal a disabled button by color alone; say it in text as well. Instead, that way, a visitor with a screen reader understands the status.
For general page design principles, see our ecommerce product page guide.
- A visible stock label.
- Back-in-stock form.
- Block of similar products.
- An honest return date or explanation.
What do you do with out of stock products on category pages?
Hiding sold-out products completely from category lists looks tempting. However, it cuts the internal links to those products and pushes them deeper into the site.
Our preference: move temporarily sold-out products to the end of the list and show them with a "sold out" label. The page then keeps its internal link value, and visitors still see the product.
Remove permanently discontinued products from the list. Also clean up the internal links that pointed to them, or you collect broken links.
Offering an "in stock only" filter is good user experience. For example, if that filter creates a separate indexable URL, though, make a conscious canonical and noindex decision.
Think about sort order as well. Showing in-stock items first supports conversion. Removing sold-out items entirely, on the other hand, erases your popular products from the shop window.
If you use pagination, it is normal for sold-out items to drift to the last pages. Still, keep the links from the first category page strong to protect internal link value.
For large catalogs, read our article on category structure for large websites.
How do you manage sitemaps and internal links during a stock-out?
Temporarily sold-out products can stay in the sitemap, because the page still returns 200 and carries value. Remove URLs you have removed permanently.
Leaving 404 or redirecting URLs in the sitemap sends Google conflicting signals. So generate the sitemap from your stock and status data.
Update the lastmod field only when the page changes in a meaningful way. Also, a stock status change can count as meaningful. Automatic changes that repeat every hour, however, weaken trust. See our lastmod guide for details.
The same logic applies to internal links. So clean up links to discontinued products from blog posts and category pages.
If you need to build a sitemap by hand, the XML sitemap generator does the job.
On a large ecommerce site, splitting the sitemap into parts makes management easier. For example, you can create separate files for in-stock, sold-out and new products. In practice, that way you watch the indexing status of each group separately in Search Console.
Set up an automatic check for internal links too. Run a broken link crawler weekly and list the internal links that return 404 or a redirect.
How do you set up ads for out of stock product pages?
Showing ads for a product that is out of stock wastes budget. It also raises the risk of a Merchant Center mismatch.
In shopping and Performance Max campaigns, stock status flows through the feed. Then if the feed is current, out of stock products drop out of ads naturally.
In text ads and campaigns with custom landing pages, you keep control. However, pause the ad group of the sold-out product, or point the landing page to the category.
So make stock data and ad management talk to each other. As a team, we turn this into a weekly checklist item.
Do not forget dynamic remarketing lists either. Visitors who saw the sold-out product stay on your list, yet showing them an ad for an unavailable product is a poor experience.
For example, you can set up an automation that notifies shoppers when stock returns. First, if you have their consent, a reminder to someone who added the product to the cart can be a natural use.
For campaign setup, see our Performance Max for ecommerce guide and our Google Ads management service.
How do you handle partial stock-outs on product variants?
When only some sizes or colors sell out, you keep the product page. Deleting the page punishes the healthy variants too.
Show the sold-out variant as unselectable or with a "sold out" label. Instead, the visitor should see which options are available at a glance.
If you use one offer per variant in your markup, write each availability value according to its own stock. For example, when total stock runs out, switch to OutOfStock at the page level.
On sites where variants have separate URLs, pointing the sold-out variant to the canonical main product is a consistent approach. Settle this decision with your technical setup.
The biggest trap in variant strategy is publishing a separate page for a sold-out variant and deleting it later. Letting the visitor choose the variant on one main URL reduces such problems.
Whichever way you go, stay consistent. Also, your platform decides the mechanics, but the principle is the same: give the user the most accurate information and the search engine the clearest signal.
For the wider product and category SEO framework, our ecommerce SEO guide for product and category pages is a good start.
Which metrics should you track after a stock-out?
You cannot know whether the approach works without measuring it. We suggest tracking three groups: indexing, traffic and conversion.
On indexing, watch the soft 404, not found (404) and redirected page counts in Search Console. Unexpected increases signal a problem.
On traffic, compare the organic sessions of sold-out products with how fast they recover after restocking. So that is where the benefit of keeping the page shows.
On conversion, track back-in-stock form signups and how many of them turn into sales. Calculate that rate from your own data; do not take it from outside.
Review the report in a monthly meeting with three questions: did the problem grow, did our sold-out products lose traffic and did we recover any sales? In practice, a short, steady rhythm keeps the work from being forgotten.
Also keep an exception list. Record every product where you left the procedure and the reason. New team members then understand the logic of each decision.
- Search Console: soft 404 and 404 counts.
- Analytics: organic sessions of sold-out pages.
- Ecommerce: form signups and recovered sales.
- Ads: spend on out of stock products.
What are the most common mistakes with out of stock products?
Most mistakes come from rushed decisions. Stock runs out, the team deletes the page and the consequence follows.
The second common mistake is a bulk redirect. Then sending hundreds of discontinued products to a single page carries a soft 404 risk.
The third mistake is a mismatch between markup and page. Markup says InStock while the page says sold out.
The fourth mistake is not updating sitemaps and internal links. Broken links pile up and crawl budget is wasted.
| Mistake | Result | Fix |
|---|---|---|
| Deleting the page right away | Loss of ranking and link value | Keep the page during a temporary stock-out |
| Redirecting everything to the home page | Soft 404 risk | Relevant successor or 404/410 |
| Markup and page mismatch | Merchant disapproval, lost trust | Bind markup to stock |
| Not updating the sitemap | Conflicting signals | Generate the sitemap from status data |
The common thread is that the decision comes from a quick reflex rather than a process. So writing the procedure down is the cheapest improvement you can make.
If you are building a new shop, it is much easier to bake these decisions into the template from the start. Fixing them later can mean reviewing thousands of URLs by hand.
Also read our article on why product pages are not indexed for related problems.
How does content pruning fit with stock management?
Permanently discontinued products are natural candidates for content pruning. Pruning means merging, redirecting or removing pages that carry no value.
For product pages, you decide with the same criteria: traffic, links, conversion and a successor product. However, you keep pages that have value and remove those that do not.
We explained this approach in general terms in our content pruning guide. Out of stock product pages are the ecommerce application of that framework.
As a team, we list permanently discontinued products once a quarter and take them through a pruning decision. First, that keeps the index clean.
The difference between pruning and stock management is timing. Instead, Stock management is instant, while pruning is periodic. For example, if you tie both to the same data source, they do not collide.
For example, at the end of a quarter, list the products that got no orders, have no backlinks and are permanently discontinued. You then decide on 404 or 410 for them in bulk.
If you want to turn this into a company process, our ecommerce consulting and SEO consulting services support you in this area.
What does a checklist for out of stock product pages look like?
Finally, let us collect all the steps in one list. Treat it as a procedure your team can reach for at the next stock-out.
- Decide whether the product returns: temporary or permanent.
- If temporary, keep the page at 200 and disable the button.
- Update the availability value in your markup to match stock.
- Update the Merchant Center feed at the same time.
- If permanent, look for a successor and use a 301 when one exists.
- Without one, return a 404 or 410 and offer useful links in the body.
- Clean up the sitemap and internal links.
- Pause ads or change the landing page.
- Watch the results in Search Console.
You should adapt this list to each site's setup, but the core does not change: an honest page, the right status code and consistent data.
Turn the procedure into an internal document. At the next stock-out, the person in charge runs through the list step by step. Decisions then depend on the process, not on a person.
From our field experience, teams that write the procedure down get this problem under control within a few weeks. Also, that is not a guarantee, only our observation; every site is different.
Managing out of stock product pages is really a small matter of discipline. Once you set up the procedure, you do not rethink it at every stock-out.
If you want to build this process together on your own site, you can get in touch with us.




