5 Ways to Hide Products on Shopify (2025 Guide)

Ever felt like your store looks “too crowded”? You’re not alone – 53% of U.S consumers say they’ll abandon a site if even one item they’re looking for isn’t available.
That kind of frustration often comes from overwhelming or irrelevant catalog pages – exactly why mastering how to hide products on Shopify can boost engagement and conversion.
Whether it’s keeping wholesale items private, phasing out seasonal stock, or preparing for a VIP launch, hiding products helps you cut the noise and keep customers focused on what really matters.
In this 2025 guide, we’ll explore the smartest, up-to-date ways to control product visibility on Shopify. Let’s dive in!
Method | What It Hides | Ease of Use | Requires Coding? | Limitations | Best For |
---|---|---|---|---|---|
#1. Sales Channel Exclusion | Entire product hidden from Online Store (or other channels) | ⭐⭐⭐⭐ Easy | ❌ No | Product still accessible via direct link | Temporarily removing products, testing, private channel launches |
#2. Manual / Smart Collections | Removes products from collection pages & navigation | ⭐⭐⭐⭐ Easy | ❌ No | Product page still live unless also hidden from search | Out-of-stock items, curated storefronts, partial catalogs |
#3. SEO Metafield (seo.hidden) | Search results (storefront & Google) | ⭐⭐ Medium | ⚠️ Some tweaks | Requires metafield setup; product still accessible via link | Hidden products only purchasable by direct link |
#4. Theme / Liquid Customization | Price, Add to Cart, or product visibility on pages | ⭐⭐ Medium | ✅ Yes | Needs coding or dev help; theme updates may overwrite | Pre-launch teasers, custom hiding logic |
#5. MP Hide Price & Access Control (App) | Price, Add to Cart, full product/page/collection access | ⭐⭐⭐⭐⭐ Very Easy | ❌ No | None (unlimited free rules) | B2B, wholesale, VIP, membership sites, flexible access rules |
5 Ways to Hide Products on Shopify
Some options are built into Shopify, while others require small theme edits or specialized apps for more advanced rules. Below, we’ll walk through the five most effective methods you can use in 2025
Method 1: Exclude via Sales Channels (Native, No App Required)
With this method, you open the product in your Shopify admin and remove the Online Store (or other sales channels) from its Product availability. The product will no longer appear on your storefront.
A - Single product
-
Log in to your Shopify Admin → go to Products.
-
Open the product you want to hide.
-
On the right sidebar, find the Publishing section. You’ll see checkboxes like Online Store, Point of Sale, etc.
-
Click Manage.
-
In the popup, uncheck Online Store (or any other sales channels you don’t want the product to appear on).
-
Click Done, then hit Save at the top.
👉 The product is now hidden from your online storefront but still available in your admin.
Tip: Instead of unchecking channels, you can also change the Product status to Draft if the product is not ready to be public at all (useful for staging or not-yet-released items).
B – Bulk (many products at once)
-
In Shopify Admin → go to Products (list view).
-
Select multiple products using the checkboxes.
-
From the top bar, click Exclude from sales channels
-
Choose Online Store → exclude products.
👉 All selected products will now be unpublished from your Online Store at the same time.
Method 2: Use Smart or Manual Collections Strategically
This method allows you to create:
-
Manual collections = you pick each product (best when you need fine control or only a few items).
-
Smart (automated) collections = products are included/removed automatically based on rules (best when you need scale or rule-based hiding).
A – Manual collections (pick products one-by-one)
When to use: you only need to hide a handful of items or want total, explicit control.
-
Open Shopify Admin → Products → Collections.
-
Click the collection that currently lists the product you want to hide.
-
In the Products section, click the × next to the product(s) you want to remove. This removes them from that collection but does not delete the product from your store.
-
Click Save (if shown) and then preview the collection on your storefront to confirm the product no longer appears.
-
If you want the product completely hidden from the Online Store (not even accessible by link), open the product page → Publishing / Product availability → Manage and uncheck Online Store (or other channels) to unpublish it from that channel. Save.
Quick tips:
-
Removing a product from a manual collection removes it from that collection only – customers can still buy the product if they have a direct link unless you unpublish the product from the Online Store (step 5).
-
If you must remove many products at once, consider using Shopify’s bulk editor or a spreadsheet app (Mixtable, Matrixify) to speed things up – otherwise manual removal can be slow.
B – Smart (automated) collections (rule-based, scalable)
When to use: you want products hidden / visible based on attributes (tags, price, inventory, metafields) and automated updates.
Recommended safe pattern (tag-positive approach)
This is simple and reliable: tag products you want visible (e.g., visible
) and make your collection include only those tags.
-
Tag products you want shown with a consistent tag, e.g.,
visible
. (Open product → Tags → add visible → Save.) -
Go to Products → Collections → Create collection.
-
Name it (e.g., Shop All or Shop Visible). Set Collection type → Automated (smart collection).
-
Under Conditions, choose Product tag is equal to visible. Choose whether products must meet all or any conditions depending on your needs. Save.
-
Now only products with the
visible
tag will appear in that collection. Remove thevisible
tag from any product you want hidden – the collection updates automatically.
Why this pattern? Shopify search-box for tags reliably supports the is equal to operator and this avoids tricky “not equal” limitations. It keeps logic explicit and reversible.
Alternative: exclusion / “All products” approach (advanced)
If you want a single “Shop all” collection but exclude a small set of items, you can build a collection that excludes items by attribute – but Shopify’s visual UI is stronger at including than at excluding for some fields. A common workaround is:
-
Tag the items you want hidden with
hidden
(or set a product type/metafield value). -
Create an automated “All products” collection with conditions that include everything except the hidden group – or create an automated collection that only includes products of a specific type or tag (the inverse of the visible-tag method).
Note: automated collections will include any product that matches your conditions – you cannot manually pick and remove a product from an automated collection without changing the product attributes or the collection’s conditions. If you need per-product exceptions, use a manual collection instead.
Method 3: Hide via Metafields and SEO Controls (Advanced)
Before you start, you need to consider these things:
-
You need Store admin access.
-
This works for Products, Pages and Blog posts.
-
seo.hidden
must be created exactly asnamespace: seo
andkey: hidden
(value is an integer).
A - Create the metafield definition (one-time setup)
-
In Shopify Admin go to Settings → Metafields (or Settings → Custom data depending on your admin UI).
-
Choose Products (or the resource you want to hide).
-
Click Add definition.
-
Fill in:
-
Name: e.g.
Hide from search
(for your reference) -
Namespace and key: enter exactly
seo.hidden
(this must match Shopify’s expected name). -
Type: Integer (single value).
-
Access: make sure it’s available to Storefronts.
- Save the definition.
B - Hide a single product
-
Go to Products → [open a product] in Admin.
-
Scroll to the Metafields section (usually near the bottom).
-
Find the field you created (e.g.,
Hide from search
) and enter the value1
. -
Save the product.
-
Wait a few minutes and then check your storefront search and
/sitemap.xml
to confirm the product no longer appears. (If you want to reverse, change the value to0
or delete the metafield.)
C - Bulk hide many products (admin bulk edit)
-
In Shopify Admin go to Products.
-
Select the products you want to hide.
-
Click Bulk actions → Edit products (or use Bulk edit).
-
Click Columns and add your metafield column (it may appear as SEO Hidden or Metafields → seo.hidden).
-
In that column enter 1 for each product you want hidden, then Save.
This is great for add-on/skus, seasonal items, or large catalogs.
D - (Optional) Bulk via CSV or API – for advanced users
If you prefer automation, you can set seo.hidden
through the Admin API / GraphQL or product CSV import (metafield columns). This is useful for programmatic workflows or large stores. Refer to Shopify dev docs for examples.
How can you verify if it works?
-
Open
https://your-store.myshopify.com/sitemap.xml
and search for the product URL – it should be removed after the metafield is applied. -
Use your storefront search box and search for the product title – it should no longer appear.
-
If you still can load the product page by direct URL, that’s expected – the page exists but is marked
noindex,nofollow
and removed from sitemaps.
Method 4: Custom Code Edits/ Theme Tweaks
Before you start, you must do the following:
-
Duplicate your live theme. Shopify Admin → Online Store → Themes → Actions → Duplicate. Work only in the duplicate.
-
Work in a preview only. Edit code in the duplicate and click Preview to test.
-
Decide your control method.
-
Quick: use a product tag (e.g.,
hidden
,hide_price
,no_buy
). -
Cleaner / scalable: create a product metafield (boolean) named something like
custom.hide_price
orcustom.hidden
. (Admin → Settings → Custom data → Products → Add definition.)
- Pick a naming convention and use it consistently (example tags:
hidden
,hide_price
,no_buy
).
Step 1 – Mark the products
In Shopify Admin → Products, open the product and either:
- Add the chosen tag (e.g.,
hidden
)
or
- Set the metafield
custom.hidden = true
(if you created a boolean metafield).
Step 2 – Find the right theme files to edit
Open your duplicate theme → Actions → Edit code. Search for the snippets/templates that show products:
-
Common snippet names:
product-card.liquid
,product-grid-item.liquid
,card-product.liquid
,product-loop.liquid
. -
Product page templates:
main-product.liquid
,product.liquid
,product-template.liquid
. -
Search results template:
search.liquid
,search.json.liquid
or sections that rendersearch.results
.
If you can’t find exactly those names, search for or
to locate product rendering code.
Step 3 – Hide a product entirely from lists/collections/search
Wrap the product card markup with a conditional so items with your tag/metafield won’t render.
If you use tags, paste around the existing card code:
{% comment %} Skip rendering products tagged "hidden" {% endcomment %}
{% unless product.tags contains 'hidden' %}
<!-- BEGIN existing product card code (leave as-is) -->
<article class="product-card">
<!-- existing markup that shows image, title, price, etc. -->
</article>
<!-- END existing product card code -->
{% endunless %}
If you use metafields (boolean custom.hidden
):
{% unless product.metafields.custom.hidden %}
<!-- existing product card code -->
{% endunless %}
Notes:
-
Place the condition outside the product card so nothing for that product appears (best for SEO & accessibility).
-
For search results, apply the same check in the search template loop.
Step 4 – Test thoroughly
-
Preview the theme.
-
Test multiple scenarios:
-
Product in a collection page.
-
Product page direct link.
-
Search results.
-
Logged in customer vs guest (create a test customer account).
-
Mobile & desktop.
-
-
Use incognito/private window to test logged-out behaviour.
Step 5 – Revert safely if anything breaks
-
Use the theme code editor’s file history to revert single files: Actions → Edit code → open file → Older versions dropdown → Restore.
-
Or replace the edited duplicate with the original copy and repeat edits carefully.
Method 5: Use a Shopify App (Simplest Way)
If you want the most flexible and reliable way to hide products on Shopify, using a dedicated app is the best option. One of the most powerful (and free) apps for this is MP Hide Price & Access Control.
Unlike Shopify’s built-in tools, which only let you hide products in certain collections or sales channels, this app gives you complete control over who can see your products, prices, or even entire collections.
This app lets you:
-
Hide products or collections completely from the storefront (they won’t show up in search, categories, or navigation).
-
Restrict access so that only logged-in customers, VIP groups, or tagged users can view specific items.
-
Replace products with custom messages like “Login to view” or “Contact us for pricing” instead of just showing a blank space.
-
Apply unlimited rules – you can hide a single product, multiple collections, or even entire categories of products at once.
Why is this better than other methods?
-
More flexible: Shopify’s native options (like sales channel exclusion or collection filters) still leave products accessible via direct links. With MP Hide, you can lock products down completely.
-
Customer-specific control: Instead of hiding from everyone, you can show or hide products based on who’s browsing (e.g., only wholesale customers see certain items).
-
No coding required: You don’t need to edit Liquid files or play with metafields – everything is handled inside the app with a clean dashboard.
-
Future-proof: The app is updated to match Shopify’s latest 2025 theme and Online Store 2.0 standards, so you won’t run into compatibility issues.
If your goal is to hide products in a professional, customizable, and risk-free way, this app goes far beyond what Shopify alone can do. And since it’s completely free, there’s no downside to installing it and giving yourself more control over your store’s visibility.
Tips to Choose the Right Hiding Method
Not every hiding method works for every scenario. The best choice depends on your goals, technical comfort level, and who you want to restrict access from. These practical tips can help you make better decisions:
-
Hide completely from the storefront. If you don’t want shoppers to see or buy the product at all (e.g., discontinued items), unpublish it from the Online Store sales channel.
-
Keep the product live but off collections. If you only want to sell through direct links (e.g., influencer campaigns, hidden bundles), remove it from collections and navigation.
-
Hide until launch. For pre-release products, add the
seo.hidden
metafield so they won’t appear in search or Google but stay ready in your admin. -
Show product but hide price. If you want customers to see the product but contact you for pricing (e.g., wholesale, custom orders), use MP Hide Price & Access Control with a “Request Quote” button.
-
Limit access to specific groups. If certain products should only be visible to logged-in users, VIPs, or wholesale buyers, set access rules with MP Hide Price & Access Control.
-
Use coding only if needed. If you want to customize the display (e.g., hide the add-to-cart button on certain pages), edit your theme. This works but needs developer effort.
-
Scale with your catalog. For 10–20 products, manual collection tweaks are fine. For hundreds of SKUs, use an app to avoid endless rule management.
Conclusion
By 2025, smart merchants expect tailored storefront experiences – whether restricting pricing, offering VIP-only collections, or controlling search visibility. Shopify’s native tools are solid for basic hiding, but for next-level control, the MP Hide Price & Access Control app stands out: free, flexible, robust, and designed to handle modern B2B or membership-based use cases.
With the above strategies, you can create a storefront experience that is both secure and unique. Make the hidden visible (only to those you choose) – and unlock smarter selling in 2025.