Skip to content

How to hide a product from your Shopify store search

Four ways to keep a product out of Shopify search results — the seo.hidden metafield, sales channel removal, theme exclusions — and which one fits which situation.

Mehdi Mirza
web kraftz · toronto, canada
4 min read

This is one of the most common small requests we get from merchants: a product needs to stay in the store, but it shouldn't come up when customers search. Maybe it's a component that only sells inside a bundle, a product reserved for a private drop, an old SKU you still need for reorders, or something you sell in person but not online. We first wrote this guide in 2023; this is the 2026 rewrite, because both the admin and what "search" means have changed since.

First, decide what "hidden" actually means

There are at least four different places a product can show up, and they have different switches: your store's own search box, your collection pages, Google and other web search engines, and — new since AI shopping assistants started reading Shopify catalogs — surfaces like the Shop app and agent-driven checkouts. Pick the method below based on which of those you actually need to control. The most common mistake we see is using a heavy switch (unpublishing) for a light problem (search box noise), or the reverse.

Method 1: the seo.hidden metafield

This is the right tool for most cases. Shopify has a built-in metafield that quietly pulls a product out of search-adjacent surfaces while leaving its page live for anyone with the link.

  • In your Shopify admin, go to Settings → Custom data → Products and add a metafield definition with namespace and key set to seo.hidden, type Integer.
  • Open the product, scroll to Metafields, and set seo.hidden to 1.
  • To bring the product back later, set the value to 0 or clear it.

With seo.hidden set to 1, the product is excluded from your storefront search results, from product recommendations, and from your sitemap, and search engines are signalled not to index it. The product page itself still works — customers with a direct link, or arriving from a bundle or a campaign email, can still buy it. Note what this does not do: the product can still appear in collections it belongs to, so remove it from public collections too if that matters.

Method 2: remove it from the Online Store sales channel

If the product shouldn't be reachable on your storefront at all — not by search, not by URL — manage its sales channels instead. On the product page, under Publishing, remove the Online Store channel (or set the product to Draft if it shouldn't sell anywhere). The product keeps working on the channels you leave enabled, like POS or a wholesale channel.

This is the honest choice for in-person-only items. The trade-off: the URL returns a 404, so any existing links, ads, or bookmarks to that product break, and whatever search-ranking history the page had is gone. Don't use this for a product you plan to bring back for a seasonal drop — use the metafield and unlist it from collections instead.

Method 3: theme-level exclusions

Some themes and older tutorials filter search results in Liquid — tagging products and skipping them in the search results loop. It still works, but we treat it as a last resort: the excluded items still count toward pagination and result totals (so customers see "12 results" but only 10 items), it breaks silently on theme updates, and app-powered search (including Shopify's own Search & Discovery filtering) doesn't respect it. If you inherited one of these snippets, replacing it with the seo.hidden metafield is usually a fifteen-minute cleanup.

What about Google — and AI shopping assistants?

Hiding a product from your store's search box does nothing to remove it from Google — those are separate systems. The seo.hidden metafield covers both reasonably well, since it also removes the product from your sitemap and signals noindex. But if the product was indexed for a while, expect it to take weeks to fall out of Google's results, and remember that anyone can still open the URL directly.

The newer wrinkle: AI assistants increasingly read Shopify catalogs and can build carts on a shopper's behalf. What governs visibility there is channel publication — if a product genuinely shouldn't be discoverable or buyable through those surfaces, unpublish it from the relevant channels rather than relying on search hiding. Search hiding is a storefront courtesy; channel publication is the actual gate.

Which method, when

  • Bundle components, gated or private products, quiet retirements → seo.hidden metafield, plus removal from public collections.
  • In-person or wholesale-only items → remove the Online Store channel.
  • Product that shouldn't sell anywhere right now → Draft status.
  • Theme-code filtering → only if you have no other option, and document it for whoever maintains the theme next.
One caution from experience: if you're hiding a product because inventory keeps overselling or stock is wrong, hiding treats the symptom. Fix the availability problem — that's usually an inventory-state or integration issue, not a search issue.

If you've got a messier version of this — hundreds of SKUs to hide, a B2B catalog that should only exist for logged-in buyers, or a theme with legacy search hacks layered on top — that's routine work for our Shopify practice. Ask, and we'll tell you which switch actually fits.

// next step

Working on something like this?

A free consultation costs nothing, and you’ll get a straight answer — including ‘you don’t need an agency for that’ when it’s true. Fixed quotes, no obligation.

next

Back to the journal or keep browsing other posts.

all posts