Hardware FixRecommendedDevice not working? Your driver may be the problemCheck updates for common hardware issues.Fix DriversHalloween DealsAmazon USHalloween week deals: useful picks before month-endAmazon US: current deals, useful picks and tech finds.Check DealsWindows FixRecommendedWindows errors stealing your time? Find the fix fastScan stability, cleanup and performance issues.Fix Now×
Skip to content
VGSources
Blog

How to Hide Out-of-Stock Products in WooCommerce (and Handle Variations, Backorders, and Restock Alerts)

A complete guide to hiding unavailable WooCommerce products, including the exact admin path, variation conditions, backorder effects, restock-notification tradeoffs, advanced rules, custom queries, and troubleshooting.
WorldWooCommerce Length10 min Posted Quest giverVGSources Team

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

To hide unavailable products from WooCommerce catalog pages, go to WooCommerce → Settings → Products → Inventory, enable Hide out of stock items from the catalog, and select Save changes. The control is global: it is intended to remove out-of-stock products from customer-facing catalog views such as the shop and category archives.

That checkbox is not a complete inventory-visibility policy for every store. Variable products, backorders, product-page access, search, caching, theme templates, restock notifications, and custom queries can change what shoppers see. Use the procedure and checks below to make the result match your store’s actual rules.

As an Amazon Associate I earn from qualifying purchases.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

What the WooCommerce setting actually changes

The built-in setting is a catalog-visibility switch. When enabled, WooCommerce excludes products whose stock status is out of stock from the normal customer catalog. For a typical store, that means shoppers should no longer see those products in the main shop listing or in category and tag archives generated by WooCommerce.

WooCommerce describes the option as “Out Of Stock Visibility” and explains that ticking it hides out-of-stock items from the store catalog and customer view. It is a single, storewide preference rather than a rule that can be applied differently to individual categories, tags, customer roles, or stock levels.

What it does not guarantee

  • It does not automatically define how every theme’s custom product grid behaves.
  • It does not guarantee that a direct product URL, a search result, a custom query, or a cached page will disappear immediately.
  • It does not create redirects from unavailable product pages.
  • It does not provide category-specific, role-specific, threshold-based, or sorting rules.

After saving the setting, test the storefront in a private browser window and, if your site uses page or object caching, clear the relevant caches. Check the shop archive, a category archive, on-site search, and a direct product URL rather than assuming that one page represents every customer view.

How to enable “Hide out of stock items from the catalog”

  1. Sign in to the WordPress administrator account.
  2. Open WooCommerce → Settings.
  3. Select the Products tab.
  4. Open the Inventory section or sub-tab.
  5. Find Hide out of stock items from the catalog under the out-of-stock visibility options.
  6. Tick the checkbox.
  7. Click Save changes.

The setting takes effect as a global catalog preference. Products must have an out-of-stock stock status for WooCommerce to treat them as unavailable; a product with a positive quantity or an available status will remain eligible for catalog display.

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Confirm the result as a shopper

  1. Open the shop page in a logged-out browser or private window.
  2. Visit each relevant product category and tag archive.
  3. Search for a product that is definitely out of stock.
  4. Open that product’s direct URL to see how your theme handles a page that is no longer in catalog listings.
  5. Repeat the checks after purging full-page, CDN, and object caches if your site uses them.

Storefront behavior can be changed by theme overrides, custom loops, search plugins, or bespoke catalog queries. If an item still appears, first verify its stock status in the product editor, then inspect caching and any code or extension that builds the affected listing.

Variable products and variation dropdowns

Variable products follow more specific rules than simple products. Hiding the parent product from catalog archives is not the same as hiding an unavailable option in the variation selector on the product page.

When an out-of-stock variation is hidden

WooCommerce documents four conditions that must all be true for an out-of-stock variation to be removed from the product-page dropdown:

  1. Hide out of stock items from the catalog is enabled.
  2. Stock is managed at the individual variation level, not only on the parent product.
  3. The variation quantity is zero or its stock status is set to out of stock.
  4. Backorders are disabled for that variation.

If any of those conditions is different, the variation can remain visible. In particular, a variation that accepts backorders remains selectable because the store is still offering a way to purchase it.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Parent-level stock management

If inventory is managed on the parent variable product, WooCommerce cannot apply the variation-level hiding rule in the same way. The variations remain visible in the dropdown, even when shoppers might expect an unavailable combination to be removed. Review the inventory setting on the parent product and on each variation before changing the global catalog option.

When the parent variable product remains in the catalog

A variable product remains visible in shop and category pages when at least one of its variations is in stock. This lets shoppers reach the product page to select an available combination. If every variation is unavailable, the parent can be treated as out of stock and removed from normal catalog views when the global hide option is enabled.

For a game-merchandise example, a hoodie with Small and Medium available but Large unavailable should continue to appear as a product. The Large option can disappear from the selector only when variation-level stock management is active, Large has an out-of-stock status or zero quantity, and Large does not allow backorders.

Choose between hiding products and collecting restock requests

Removing unavailable products produces a cleaner catalog, but it also removes the normal discovery path for customers who want to know when an item returns. WooCommerce’s Back In Stock Notifications documentation states that customers cannot sign up for notifications when out-of-stock products or variations are hidden from the catalog.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Hide products when availability is the priority

  • Use the core checkbox when unavailable items should disappear consistently from ordinary shop and category browsing.
  • Keep it enabled when showing sold-out listings would create confusion or make a large catalog harder to navigate.
  • Test variable products separately so that only genuinely unavailable combinations are removed.

Keep products visible when demand capture is the priority

  • Disable the global hide option if shoppers should be able to join the official back-in-stock sign-up flow.
  • Leave the product or variation discoverable and show its out-of-stock state on the product page.
  • Explain whether the customer is joining an alert list, requesting a reservation, or merely bookmarking the item; the WooCommerce notification feature handles alerts, not guaranteed allocation.

When the store needs both outcomes

A store may want sold-out products omitted from broad category browsing while keeping selected products available for restock registration. The core checkbox cannot express that exception. Use selective visibility controls or a custom workflow, and verify that the chosen implementation leaves the intended product page and sign-up form reachable.

Advanced visibility rules with an extension

The official Sort or Hide Out of Stock for WooCommerce extension is designed for stores whose rule is more detailed than one global switch. Its documented controls include:

  • Hiding out-of-stock products storewide, by category, or by tag.
  • Showing or hiding products for particular user roles.
  • Applying stock-quantity thresholds instead of waiting for a zero quantity.
  • Redirecting visitors who open an unavailable product page.
  • Sorting out-of-stock products to the top or bottom rather than removing them.

These controls let a store distinguish, for example, between a sold-out seasonal game bundle that should vanish and a frequently replenished accessory that should remain visible with a restock message. They also allow a wholesale role to see inventory that retail visitors do not see, provided the extension and the rest of the site’s permission model are configured consistently.

Questions to answer before installing or configuring an extension

  • Does the rule affect archives only, or does it also block direct product URLs?
  • Does it apply to variable-product parents, individual variations, or both?
  • Is the threshold based on physical quantity, stock status, or a combination?
  • Are redirects applied before or after a page is cached?
  • Can selected products remain visible for back-in-stock registration?
  • Does the extension support the theme’s product blocks and custom loops?

Any third-party extension should be checked for current WooCommerce and WordPress compatibility, support coverage, update history, and staging-site behavior before it is enabled on a production store. A setting that works in the standard shop loop may not affect a custom landing page.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Selective visibility without hiding the entire catalog

A WordPress.org listing describes another selective approach that lets store owners decide which out-of-stock products remain visible and where those products appear. This type of tool can be useful when the store wants a mixture of policies—for example, hiding discontinued items while leaving temporarily unavailable releases visible.

Treat compatibility, maintenance, and support as verification tasks rather than assumptions. Test the tool with simple products, variable products, backorders, logged-in roles, category archives, search results, and any page builder or product block used by the site. Confirm that uninstalling or disabling it returns the catalog to a predictable state.

Developer route: find out-of-stock products with supported WooCommerce APIs

Custom reports, integrations, and selective catalog logic can query WooCommerce’s product data instead of relying solely on the global checkbox. WooCommerce’s developer documentation recommends wc_get_products and WC_Product_Query for product retrieval, including a stock_status filter.

Basic PHP query

$products = wc_get_products( array( 'status' => 'publish', 'stock_status' => 'outofstock', 'limit' => -1 ) );

This returns published products whose stock status is out of stock. A custom process can use the resulting product IDs to build a report, exclude selected items from a bespoke loop, or send data to another system. Keep custom code narrowly scoped: use WooCommerce’s supported query APIs rather than direct database queries that may break when the data model or lookup tables change.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Use custom logic carefully

  • Decide whether the query should include parent products, variations, or both.
  • Respect product status and catalog visibility settings so private or draft products are not exposed accidentally.
  • Account for backorders: an item can have zero physical quantity while still being purchasable.
  • Make sure the custom loop does not reintroduce products that the core catalog has hidden.
  • Clear or version caches when the result controls a publicly cached page.

For a report, store the query result and present the product name, SKU, stock status, and relevant variation information to staff. For storefront filtering, test pagination, sorting, layered navigation, and search counts; excluding an item from one loop does not automatically update every related query.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Troubleshooting: products still appear after enabling the checkbox

The product is not actually marked out of stock

Open the product editor and inspect the Inventory panel. Confirm that stock management is enabled where intended, the quantity is zero when quantity-based management is used, and the stock-status selector is set to out of stock. A product with backorders enabled may remain purchasable and therefore visible.

A cache is serving an older catalog page

Purge page, CDN, and object caches, then test while logged out. Some cache systems vary output by customer role or query parameters, so test both the ordinary shop URL and a category URL.

A theme or custom query bypasses the catalog setting

Inspect the template or block that renders the affected listing. Custom product queries may need their own stock-status filter. Temporarily test a standard WooCommerce shop page to determine whether the issue is global or limited to one custom component.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

A variable product still shows an unavailable option

Check all four variation conditions: the global hide option, variation-level stock management, zero quantity or out-of-stock status, and disabled backorders. If the parent manages stock, the dropdown can continue to list variations.

The direct product page remains reachable

Catalog hiding is not the same as URL protection. If visitors must be sent elsewhere, configure a redirect rule through an extension or custom implementation and test the destination for logged-out users, search engines, and cached requests. Do not redirect a product that still has an in-stock variation unless that is the intended policy.

Restock sign-up disappeared

Check whether the product or variation is hidden by the global setting. The official back-in-stock notification flow requires the unavailable item to remain discoverable; disable hiding or create a selective rule that keeps the relevant page visible.

Global checkbox versus selective rules

Approach Scope Customer experience Variation behavior Restock-list compatibility Maintenance
Core WooCommerce checkbox Global catalog visibility Removes out-of-stock products from ordinary catalog views Depends on variation-level stock management and backorder settings Hidden items cannot use the official sign-up flow Lowest; built into WooCommerce
Sort or Hide Out of Stock extension Storewide, category, tag, role, threshold, and sorting rules Can hide, sort, or redirect according to the configured rule Verify parent and variation behavior for each rule Can support a selective policy, subject to configuration Requires extension updates and testing
Selective visibility plugin Chosen products and placements Leaves selected sold-out items visible while hiding others Depends on the plugin’s compatibility with variable products Potentially compatible; verify the sign-up page remains reachable Depends on maintenance and support from the plugin author
Custom WooCommerce query or workflow Any logic you implement Can produce reports, custom exclusions, or integrations Must explicitly define parent, variation, and backorder handling Can be designed either way Highest; requires development and regression testing

Operational checklist before going live

  • Record whether the business wants a clean catalog, restock demand capture, or both.
  • Enable the core setting only after deciding how hidden product pages should behave.
  • Review simple products and variable products separately.
  • Check variation-level stock management and backorder permissions.
  • Test shop, category, tag, search, product, cart, and checkout paths.
  • Purge caches and repeat the tests while logged out.
  • Inspect custom product grids, landing pages, and integrations that use their own queries.
  • If using an extension, test role, category, tag, threshold, sorting, and redirect rules on a staging site first.
  • If using restock notifications, confirm that the intended products remain visible and that the sign-up form appears.
  • Document the rule so staff know whether to change quantity, stock status, backorders, or visibility when inventory changes.

Which approach fits your store?

Use the built-in checkbox

Choose the core setting when every genuinely unavailable product should be removed from ordinary shop and category browsing and no restock sign-up is needed for those items.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Keep products visible

Leave the setting disabled when sold-out products need to attract future demand, explain an unavailable release, or collect back-in-stock requests.

Use selective controls

Choose an extension or carefully tested custom implementation when visibility differs by category, tag, customer role, stock threshold, product type, or redirect destination.

The correct configuration is the one that matches the store’s promise to shoppers: whether an unavailable item should disappear, remain discoverable with an explanation, or lead to a notification request.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Leave a Reply

Your email address will not be published. Required fields are marked *

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

More quests from Patch Notes

  1. How to Set Up a RedM (RDR2) Server in 2026: License Key, txAdmin and server.cfg, Step by StepBlog11min
  2. Best RedM (RDR2) Server Hosting in 2026: Comparing Four Hosts on Slots, Memory and PriceBlog10min
  3. How to Host a Mindustry Server in 2026: server-release.jar, Port 6567 and the Commands That MatterBlog7min
Recommended PC Tool
Recommended PC Tool
Outdated Drivers Are Slowing You DownFree scan - exact matches
Windows Errors? Fix Them Before They SpreadFree repair scan

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.