Allow out of stock items to be found in search

Topic summary

Goal: Keep sold‑out products discoverable via the homepage search but hidden from shop/collection browsing, similar to WooCommerce’s “search only” visibility.

Current setup: The merchant unpublishes sold‑out items from the Online Store sales channel, which removes them from both the storefront and search results.

Guidance offered:

  • Keep out‑of‑stock products published to the Online Store; unpublishing removes them from search entirely.
  • Use a metafield (custom field) or theme logic to hide sold‑out products from collection grids while still allowing search indexing.
  • Add a “Notify me” restock button and set up an email automation to alert customers when items return.
  • Workaround: Put sold‑out items into a dedicated “Out of Stock” collection hidden from navigation, and add notes in descriptions about restock status.

Merchant’s concern: Hiding a collection from navigation may not prevent discovery because customers can browse other collections, potentially exposing sold‑out items.

Status: No built‑in “search‑only” toggle in Shopify was identified. The thread remains open; suggested path is keeping items published and using metafields/theme customizations plus restock notifications.

Summarized with AI on December 14. AI used: gpt-5.

Currently, I am hiding out of stock items once they’re sold out by removing them from the shop (removing from store sales channel), but then if someone does a search on the website, they can’t find it either (specifically on the website homepage, not the shop page). I would like people to still be able to find old out of stock items because I can put notes in the listing that will answer their questions instead of them emailing me every time to see if they will be coming back or still exist.

When I used WooCommerce/wordpress, I was able to select that it would show up “search only” vs “search and shop”. Is there anything like that for Shopify?

Is there a way to do this? I’d prefer not to have out of stock items show on the end of the shop page. this seems like the only solution I can find so far.

Even if a product is sold out, it will still be there until you take it out of “Online Store” sales channel or you have a metafield that hides the product. Shopify won’t show product if you deliberately unchecked the product from “Online Store” sales channel.
Better solution for your users once you turn that on is to add a button that says Keep me notified on sold out items, and do a automation where once you have the inventory now, that would email your customers saying your products are instock.

Let me know if you have more questions.

  • Create a Collection for Out-of-Stock Products:

    • In Shopify Admin, go to Products > Collections.
    • Create a new collection (e.g., “Out of Stock”).
    • Use a manual collection and add out-of-stock items to this collection.
  • Hide the Collection from Navigation:

    • Don’t link this collection in your store’s main navigation, ensuring it’s only accessible through search.
  • Add a Note for Out-of-Stock Products:

    • Edit the product descriptions or add a banner/notice that indicates whether the product will return.
  • Ensure Products Remain Searchable:

    • Don’t remove out-of-stock products from the Online Store sales channel. This allows them to remain indexed for search.

I don’t think that will work because you can still browse the shop by all of my other collections.