Why is the sec.hidden metafield not working on specific product visibility?

Topic summary

Goal: keep certain “custom” products accessible via direct link but excluded from on‑site catalog and search. Merchant tried a seo.hidden metafield (set to 1) and a “Hidden” collection; results: published products still appear in catalog; unpublished products can’t be shared via link.

Key clarifications:

  • seo.hidden only signals search engines/sitemaps to suppress indexing (SEO), not on‑site visibility. It doesn’t control access or Shopify’s catalog/search UI.
  • On‑site exposure can also come from navigation menus; if a product is linked there, it remains discoverable. Remove unwanted menu links.
  • True “unfindable unless you have the link” behavior is access control/content gating and requires an app (e.g., Locksmith) or gating behind customer login. GDPR/privacy concerns apply for personal products.

Open requests from the merchant:

  • Explanation/examples to exclude a specific collection (e.g., “Hidden Collection”) from the catalog, potentially by replacing the default “All” collection and including only selected collections, or a Liquid snippet to filter it out.

Status: unresolved. No Liquid/code provided yet; recommended paths are app‑based gating, menu cleanup, or a custom catalog template that excludes chosen collections. Images were referenced but not essential to the outcome.

Summarized with AI on January 18. AI used: gpt-5.

Hello,

Thank you for the response however that does not actually answer the
question about why it doesn’t function to actually hide a “seo.hidden”
product from either a collection or the catalog. I still see multiple
examples of it used in this way that archives keeping the product and its
link active for a directed order and review which is what we want to
achieve.

I also see an alternate route of excluding a specific collection from the
catalog. If we placed the customer products into a new collection called
hidden or custom, I see examples of creating a new collection call “All”
that replaces the system default collection. Then you are able to include
only the collections desired in the catalog.

Would you be able to give an example of how either of these methods should
be properly implemented in shopify or an example of a liquid code snippet
that would exclude a collection called “Hidden Collection” from the catalog
page?

Just to reiterate, all we are trying to do is create and maintain a custom
product design listing that is intended for only one customer designed to
their requirements and keep it from being available in the general catalog
on the shopify site search.

Thank you,

Todd