Out of Stock Products

How to handle out-of-stock and discontinued product pages for SEO: keep temporary stockouts live at 200 with OutOfStock schema, 301 permanent discontinuations to a relevant replacement, and avoid the soft-404 and noindex-toggle traps. Backed by Google's own guidance.

First published: Jun 25, 2026 · Last updated: Jul 18, 2026 · Advanced
demand #2 in Product Pages#14 in Ecommerce SEO#236 on the site
1 evidence signal on this page

Stockouts are inevitable; the wrong SEO response throws away rankings you'll want back. The decision splits three ways. Temporary (it'll return): keep the page live at 200 with substantive content, set schema availability to OutOfStock, and add a back-in-stock signup — don't 404, redirect, or toggle noindex. Permanently discontinued with a replacement: 301 to the genuinely similar replacement (Google doesn't guarantee a specific ranking or link-transfer outcome). Permanently discontinued with no replacement: 301 to the closest relevant page if it still has continuing value (support info, ongoing interest, or earned links), or 404/410 if there's nothing worth saving — 404s aren't a penalty. The two biggest mistakes are 404ing a page that has earned links (you lose that equity for nothing) and redirecting to an irrelevant page like the homepage (Google treats it as a soft 404, so the equity is lost anyway).

TL;DR — The treatment is driven by one question: is the product coming back? Temporary → keep the URL live at 200, set Offer.availability to OutOfStock, keep substantive content, add a back-in-stock signup, and update the Merchant CenterGoogle Merchant Center (GMC) is a free platform where retailers upload and manage product data so their products can appear across Google — Shopping, organic Search product grids, Images, Lens, and AI surfaces. Since 2020 it powers free (organic) product listings, not just paid Shopping ads. feed (the feed propagates faster than a page re-crawl). Don’t toggle noindex with stock status — Mueller says the fluctuation makes Google treat the page like a 404 and crawl it less. Permanently discontinued with a genuinely similar replacement301 to it. Permanently discontinued with no replacement301 to the closest relevant page if it still has continuing value (support info, ongoing interest, or earned links), else 404/410 (404s are not a penalty). The two failure modes that actually cost you: 404ing a backlinked page (equity lost for nothing) and redirecting to an irrelevant page like the homepage (Google reads it as a soft 404, so the equity is lost anyway). Watch for the soft-404 trap: Google can algorithmically demote a 200 out-of-stock page if its text reads like “no longer available” or the content is thin — substantive content is the defense.

Start with the right question

The HTTP status, the structured dataStructured data is a standardized way of labeling page content (using the schema.org vocabulary in JSON-LD, Microdata, or RDFa) so search engines can understand its meaning. It's not a direct ranking factor — its value is rich results and entity understanding., and the on-page content all flow from one decision: is this product coming back? Three branches:

  1. Temporary — it’ll be restocked (including seasonal recurrences).
  2. Permanently discontinued, replacement exists — you carry a genuinely similar successor.
  3. Permanently discontinued, no replacement — it’s gone, and nothing replaces it.

Everything below hangs off this. My own take on it, going back to my Ahrefs writeup on out-of-stock products, is that there’s no universal right answer — it depends — so the practical move is to set rules you’re comfortable with and apply them consistently rather than hand-deciding every SKU.

Availability is a lifecycle decision: temporary stockouts stay live; permanent removals route value or return a truthful error. Source: Patrick Stox

First ask whether the product is coming back. If yes, keep the page live and indexable at 200, set OutOfStock, and retain useful content and a notify-me option. If no, ask whether a genuinely similar replacement exists; if it does, 301 redirect to it and update internal links. Without a replacement, ask whether the old URL has links, traffic, or reference value. Preserve valuable URLs with a useful 200 tombstone or a redirect to the closest relevant category. Return 404 or 410 when there is no value to preserve.

© Patrick Stox LLC · CC BY 4.0 ·

Branch 1 — temporary: keep the page live at 200

This is the default for anything that’s coming back. Keep the URL returning 200, keep it indexable, and tell search engines it’s unavailable through structured data, not by removing the page. John Mueller’s framing from a 2021 Office Hours is the clearest statement of why:

“what works best for us is if we can keep the URL online for things that are really temporary… if the URL remains indexable and with structured data you tell us this product is currently not available. Then we can at least kind of like keep this URL in our indexStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed. and keep refreshing it regularly to pick up that change in availability as quickly as possible.”

So the recipe is:

  • HTTP status: 200.
  • Structured data: set the Offer.availability to https://schema.org/OutOfStock. Keep the price and currency in the markup — the offer still describes a real product. Evidence for this claim Schema.org and Google support OutOfStock as an Offer availability value. Scope: Visible page content, structured data, and product data should describe the same actual state. Confidence: high · Verified: Schema.org: OutOfStock Google: Merchant listing availability
  • On-page content: keep the full description, specs, images, reviews, and a back-in-stock notification signup. (Restock estimates, waitlists, and notify-me forms are the customer-friendly features that also keep the page substantive.)
  • Internal linksAn internal link is a hyperlink from one page on a website to another page on the same website. Internal links help search engines discover your pages and pass ranking signals (PageRank and anchor-text context) between them.: leave them in place. Mueller notes that linking a page from the homepage signals importance and gets it re-crawled faster — useful when you want a restock noticed quickly.

Update the Merchant Center feed too

If you’re in Shopping, your product feed is a parallel — and often faster — channel than waiting for a page re-crawl. Set the feed availability to out_of_stock so it matches the page. This matters because a mismatch is a disapproval: if the page shows out of stock but the feed says in_stock (or vice versa), Google disapproves the product. Keep the page, the feed, and the schema saying the same thing. Evidence for this claim Merchant Center requires submitted availability to match the landing page and product's actual availability. Scope: Mismatches can produce item issues; automatic updates do not replace accurate source data. Confidence: high · Verified: Google: Availability specification

Keep the two systems mentally separate. The schema.orgSchema markup is code that uses the schema.org vocabulary to label what your content means so search engines can understand it and show rich results. It's most often written in JSON-LD, and it's not a direct ranking factor. Offer.availability value on the page (OutOfStock, InStock, Discontinued, and so on) is Search’s structured-data vocabulary; the Merchant Center feed’s availability attribute uses its own, smaller set of literal submitted values (in_stock, out_of_stock, preorder, backorder) and governs Shopping ads and free listingsFree product listings (originally launched as \"Surfaces across Google\" in 2020) are unpaid, organic product placements Google generates from your Merchant Center feed or on-page Product structured data. There's no bid and no CPC — Google matches your product data to a query and decides whether and where to show it — across the Shopping tab, Google Search (Popular Products grids), Images, Lens, Maps/Business Profile, YouTube, and Gemini; AI Mode and AI Overviews aren't on Google's official surfaces list, though practitioner reporting links them to the same eligibility pool. They're enabled by default in most cases for new Merchant Center accounts., not organic indexingStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed. or ranking. Google’s Merchant Center docs describe several schema.org values folding into the narrower feed vocabulary, but don’t treat the two as interchangeable in your own copy — a disapproval is a Merchant Center/Shopping outcome, not a signal about how the page ranks in regular Search results.

Branch 1b — seasonal: keep live, soften the linking

Seasonal items (holiday goods, event-tied products) are just temporary stockouts on a schedule. Mueller’s guidance is to keep the page up with a good “coming soon” experience, pull it from prominent internal linkingLinks between pages on the same site. during the off-season, and restore those links when it returns — rather than deleting and rebuilding the URL each cycle.

For genuinely time-bound listings with a known end date, Google’s robots meta tag supports unavailable_after, which tells Google to stop showing the page after a specified date:

<meta name="robots" content="unavailable_after: 2026-12-31" />

It accepts RFC 822, RFC 850, and ISO 8601 date formats; an invalid format is ignored, and Google decreases the crawl rateCrawl rate is how fast a search engine crawler fetches pages from your site — the number of simultaneous requests it makes and the delay between them. Google sets it automatically based on your server's health; it's the supply side of crawl budget, not a ranking factor. of the URL considerably after the date passes. This is a niche tool — right for auction-style or event listings, wrong for anything that might be restocked on no fixed schedule.

One variant out of stock isn’t the whole product out of stock

Availability can differ by variant — one color or size sells out while the rest of the family is fine. Merchant Center’s landing-page rules require the linked page to identify the submitted variant and recommend preselecting it, so a shopper (and Google) can tell which option the listing describes. Treat this as a narrower decision than the whole-product branches above: a single sold-out variant shouldn’t automatically flip the parent product’s status, canonical, or retirement treatment. Mark the unavailable variant’s own offer OutOfStock (or Discontinued if that specific option is gone for good), keep the other variants live and purchasable, and only fall into Branch 1–3 above once every variant on the page is unavailable.

Branch 2 — discontinued with a replacement: 301

If you’ve genuinely replaced one product with another, redirectA redirect sends browsers and crawlers from a requested URL to a different one. An HTTP redirect specifically is a 3xx status code paired with a Location header; meta refresh and JavaScript redirects achieve a similar navigation without being a 3xx response themselves. Permanent redirects (301/308) are Google's signal the target should be canonical; temporary ones (302/303/307) aren't.:

“If you’re really replacing one product with another it might make sense to just redirect.”

A 301 to a closely comparable replacement can carry forward the link value the old page earned — if the pages are similar enough. That’s a practitioner rule of thumb, not a Google guarantee: Google documents the redirect mechanism and destination-relevance guidance, but it doesn’t publish a transfer percentage or promise a specific ranking outcome for any individual redirect. The catch is relevance: the redirect target has to actually be the same kind of thing. Which leads to the most common mistake.

Branch 3 — discontinued, no replacement

Two sub-cases, decided by whether the URL still does a real job for someone — not by backlinks alone.

It still has continuing value — support info, ongoing search interest, or earned links/traffic. 301 to the closest relevant page — usually the parent category. The homepage is a last resort, and a weak one. Google can treat a redirect from a specific product to an irrelevant page (like the homepage) as a soft 404A soft 404 is a URL that returns a success status code (usually 200 OK) even though the page is empty, missing, or shows a 'not found' message. It isn't a status code a server sends — it's a label search engines apply after comparing the response code against the rendered content, and they treat the page like a 404 for indexing., in which case the link equityPageRank is Google's original recursive link-graph algorithm: a page's score depends on the scores of the pages linking to it, and in the published model each page's score is split across its outbound links (the simplified version: links are weighted votes). Google says it's evolved since launch but still part of its core ranking systems. is lost anyway — you got the downside of a 404 without the cleanliness of one. So redirect to relevance, or don’t redirect.

It has nothing worth keeping. Let it 404 (or 410 for “permanently gone,” which Google processes a touch faster). This is the technically correct answer and it is not a penalty. Gary Illyes put it bluntly: “Whoever came up with the idea that having 404s gives a site any sort of penalty, you’re wrong. Utterly wrong.” Mueller’s more recent position is the same — proper error codes are the right way to handle URLs that no longer exist, even at large scale.

Or keep it as a tombstone. The test is whether the page still does a genuine job for someone: ongoing search interest, support documentation, compatibility notes, or a natural place to point to a successor. Backlinks are one input into that decision, not the trigger on their own — a page with links but nothing left to tell a visitor is a worse tombstone candidate than a page with real reference value and no links at all. When it passes that test, keep the page live and set availability to https://schema.org/Discontinued, explaining that it’s been discontinued and pointing to alternatives. Do this for a user-focused reason — not “just for SEO.” Keeping a dead page indexed purely to hoard a little link equity, with nothing useful on it, is how you end up with a soft 404 anyway.

The soft-404 trap

Here’s the mechanic that catches people: Google can demote a perfectly valid 200 out-of-stock page by algorithmically classifying it as a soft 404 — based on the content, not the status code. Mueller has been explicit:

“when [we] see that something is out of stock, we will assume it’s more like a soft 404 errorA soft 404 is a URL that returns a success status code (usually 200 OK) even though the page is empty, missing, or shows a 'not found' message. It isn't a status code a server sends — it's a label search engines apply after comparing the response code against the rendered content, and they treat the page like a 404 for indexing., where we will drop that URL from the search results as well.”

What triggers it is the page reading like a dead end — text like “this product is no longer available,” or a thin template with no real product information. The status code says 200; Google’s content analysis overrules it. There’s no fixed timeframe for this — it’s content-driven, not a countdown.

The defense is substance. As Mueller put it, it doesn’t have to happen at all:

“if you have a lot of information about that product anyway on those pages, then that page can still be quite relevant for people who are searching for a specific product.”

So keep the description, specs, reviews, related products, and a notify-me form on the page. And the reassuring part — this is a per-page concern, not a site risk:

“even if one product goes out of stock, the rest of the site’s rankings are not affected by that.”

You’ll find flagged pages under Search ConsoleGoogle's free tool for monitoring crawling, indexing, and search performance. → Pages → Not indexed → Soft 404.

The noindex-toggle trap

Tempting idea: noindex products while they’re out of stock, then remove it when they’re back. Don’t. Mueller’s warning is specifically about the fluctuation:

“if we see a page that is noindexed for a longer period of time we will assume that this is kind of like a 404 page and we don’t have to crawl it that frequently.”

“fluctuating with the noindexNoindex is a directive that tells search engines to keep a page out of their index, so it won't appear in search results. It works only on pages a crawler can actually fetch — a page blocked in robots.txt can never be noindexed. meta is counterproductive here, if you really want those pages to be indexed every now and then.”

The toggling teaches Google to crawl the page less, which makes re-indexing slower when the product returns — the exact opposite of the goal. noindex also cuts off the flow of PageRankPageRank is Google's original recursive link-graph algorithm: a page's score depends on the scores of the pages linking to it, and in the published model each page's score is split across its outbound links (the simplified version: links are weighted votes). Google says it's evolved since launch but still part of its core ranking systems. through the page. If a product is coming back, leave it indexable with OutOfStock schema and let the structured data carry the signal.

The whole reason 404ing a popular product is wasteful: a page with external backlinks that returns 404 stops passing that link equity to the rest of your site. The links don’t transfer; they just evaporate. That’s the cost — not a penalty, just pointless waste. So before you delete anything at scale, find out which dead/dying product URLs actually earned links:

  • Ahrefs → Site Explorer → Best by links, filtered for 404/410, surfaces removed pages that still have backlinks — your redirect candidates.
  • Ahrefs → Site Audit → Links report finds the internal linksAn internal link is a hyperlink from one page on a website to another page on the same website. Internal links help search engines discover your pages and pass ranking signals (PageRank and anchor-text context) between them. still pointing at dead products and any redirect chainsA → B → C instead of A → C. Each hop loses link equity and adds latency. to clean up.
  • Site Audit → page content / HTML search for “out of stock” text shows where that messaging appears across the crawl, so you can audit it at scale.

Redirect the ones with equity to a relevant page; 404 the rest with a clear conscience.

The 2026 Merchant Center buy-button rule

If you run Shopping ads or free listings, note a March 2026 policy tightening: out-of-stock product landing pages must show a visibly disabled (greyed-out) buy button or clear “Sold Out” / “Item Not Available” text. An active buy button on an out-of-stock page is non-compliant — and so is a hidden or removed one. Non-compliant landing pages get disapproved. Note what this rule does not say: it does not require a 404. Keeping the page live at 200 with proper “out of stock” messaging and a disabled buy button is fully compliant.

Where this sits in the cluster

Out-of-stock handling is one slice of ecommerce site structure. It connects directly to product page SEOProduct page SEO is the practice of optimizing an individual product detail page (PDP) so it ranks in organic search and earns rich results. It blends unique product copy, structured data, variant canonicalization, image SEO, and customer reviews — but the structured data earns rich results and eligibility for free product listings, it doesn't make the page rank. (the schema and content that keep these pages substantive), category pagesCategory page SEO is the practice of optimizing an ecommerce listing page (also called a PLP or collection page) — the page that groups products under a classification like /shoes/running/ — so it ranks for broad commercial queries and routes crawlers and link equity to the products beneath it. (your most common redirect target), and the broader Ecommerce SEOEcommerce SEO is the practice of optimizing an online store so its product and category pages rank in organic search and attract purchase-intent visitors. It uses the same Google algorithm as any other site, but compounds the usual SEO work with commerce-specific challenges like faceted navigation, product variants, and platform-imposed URLs. pillar. The redirect-vs-404 decision is a general technical-SEO pattern too — the difference between a clean 404/410 and a misfiring redirect that Google reads as a soft 404 applies well beyond products.

Add an expert note

Pin an expert quote

New person? Create their unclaimed profile at /admin/experts/ → Pin a quote first.