Optimize WooCommerce catalog visibility for sales
In this detailed guide, I'll show you how to prevent unwanted access and hide specific products, product categories, and even your entire WooCommerce store from public view. We'll use 2 powerful WooCommerce catalog visibility plugins: WooCommerce Private Store and WooCommerce Protected Categories.
Looking for a way to control catalog visibility in WooCommerce? This guide has your back.
Controlling catalog visibility in WooCommerce means managing who can see certain products or product categories in your store based on specific criteria. This feature is handy for a wide variety of scenarios, including stores that want to: offer exclusive products, create membership-based catalogs, hide certain items from specific customer groups, and more.

In this post, we'll discuss:
- WooCommerce's built-in catalog visibility options.
- How to make certain products visible only to logged-in users.
- How to create member-only product categories.
- How to hide prices but still show products to non-members.
- The impact of catalog visibility settings on SEO and product indexing.
- Lots more.
Plugins mentioned in this guide
- WooCommerce Private Store. This restricts access to all WooCommerce-specific sections of your online store and hides them from public access and search engines. Customers must enter valid passwords or have a predefined user role to access your store.
- WooCommerce Protected Categories. This allows you to hide specific product categories from public access, whilst the remaining WooCommerce-specific sections of your store remain accessible to the public. Customers must enter valid passwords or have a predefined user role to access protected categories.
- WooCommerce Wholesale Pro. This enables you to hide prices but still show products to non-members or guest users.
First things first, let's explore why you might want to restrict catalog visibility in WooCommerce.
Why control catalog visibility in WooCommerce?

Here are popular use cases of stores that choose to control how customers can access their product catalog.
B2B-only stores
Stores that sell exclusively to other businesses may not want their products visible to the general public. In these cases, restricting catalog visibility to registered customers ensures that only verified businesses can browse and purchase from your store.
Regular customers won't be able to see pricing, product details, or inventory that doesn’t apply to them.
Segment wholesale vs. retail customers
Stores that sell to both retail and wholesale customers via the same storefront often need to separate product catalogs, pricing, and discounts. Without catalog visibility restrictions, your retail customers might see discounted wholesale prices — or worse, wholesale-only products that aren’t available to them.
Member-exclusive products
Membership sites typically offer exclusive products — think: limited-edition items, premium content, special bundles, etc. — to members as rewards and perks to deepen customer satisfaction.
For instance, a premium coffee subscription service might offer unique blends that aren’t available to non-members.
Customer-exclusive services
If you offer hyper-custom services to individual customers you may want to restrict access to specific users to protect their privacy. For example, this wedding photographer allows individual clients to only access and download their own photos.
Launching products in stealth mode
Sometimes, when introducing a new product, you may not want it visible to everyone right away. You can choose to grant early access to a select group of customers and offer them exclusive access to purchase the product before making it available to everyone else.
Another example is to allow staff and external partners (with assigned user roles) access to beta-test the checkout flow before rolling it out to the public.
Seasonal or event-based products
Holiday-themed or event-specific products are only relevant during certain times or occasions.
If you sell seasonal products — like Christmas decorations or Halloween costumes — you can hide these items during the off-season to avoid cluttering your store. Then when the right time comes, simply make them visible again.
Benefits of controlling catalog visibility in WooCommerce
Restricting catalog visibility is much more than hiding products in a store. It enables store owners to tailor their site's user experience based on their business model and strategy.
It deepens customer satisfaction
Controlling access to your store or certain sections of it can help create a sense of exclusivity for specific customer groups, with 2 distinct benefits: (1) it acts as an incentive for new users to become registered customers, and (2) it encourages existing members to remain active and strengthens customer loyalty.
A common example is membership-based subscription sites that offer members-only products or early access to new collections.
It helps personalize shopping experiences
Controlling the level of access customers have in your online store helps create more tailored shopping experiences.
For instance, hybrid wholesale and retail stores can allow wholesale customers access to exclusive products, bulk prices, and volume-based discounts, hidden from retail shoppers. Retail customers get to access regular products with standard prices and discounts.
It improves catalog organization
Stores that cater to various customer groups from the same WooComerce storefront tend to have massive product catalogs. The larger the catalog, the more difficult it can become to manage which products are visible to which customers.
Restricting catalog visibility based on roles or customer segments enables you to organize your catalog more effectively so that each customer group only sees what’s relevant to them. This helps reduce clutter and simplifies the shopping process so customers can easily find what they need.
Launch products efficiently
Catalog visibility restrictions can help you strategically roll out new products. Offering early access to loyal customers or beta testers can enable you to gather feedback before the public launch. This gives you time to fix issues before making it accessible to everyone.
WooCommerce's default catalog visibility options
WooCommerce comes with 4 basic built-in catalog visibility options. You'll find them in the product data section of the Product Edit page.
- Shop and search results. Products will be visible on the main shop page and in search results. This is the default setting for most products.
- Shop only. The product will appear on the main shop page but won’t show up in search results.
- Search results only. The product will be excluded from the main shop page but visible to customers who search specifically for them or follow the direct product links to access them.
- Hidden. The product won’t appear on the shop page or in search results. It will only be accessible via a direct link.
Limitations of WooCommerce’s default options
This is a good starting point. But, the built-in catalog visibility options aren't useful for more than the basics. Here are some of its limitations:
- No category-specific visibility. You can make individual products "private," one by one, but there’s no built-in way to hide or show entire product categories.
- No role-based visibility. It doesn’t allow you to show or hide products based on user roles. If you need a product to only be visible to certain user roles, there is no default option to do so.
- No login requirements. There is no native option to hide prices for logged-out users. All users who can access a product can see its price.
To do all of the above, you'll need to use a WooCommerce catalog visibility plugin.
WooCommerce catalog visibility plugin 1: WooCommerce Private Store

WooCommerce Private Store hides WooCommerce-specific sections of your site — think: the main Shop page, product listings, categories, product tag archives, and the cart and checkout pages — from unauthorized users and search engines.
Meanwhile, the rest of your WordPress site, such as the homepage, about page, and other public pages, remain accessible. Once users unlock your site, they will be able to access all products in your store.

People will only know about your private WooCommerce store if you share the direct link with them or add a link to public-facing sections of your website (for example, by placing a "Wholesale Login" option in the header or menu). Visitors who click it will be redirected to the WooCommerce login page to enter their password.
The WooCommerce Private Store plugin can be used for a wide range of use cases, including wholesale stores, membership-based sites, exclusive B2B stores, and the like.
WooCommerce Private Store's standout features
Global catalog restriction
It enables you to restrict your entire catalog from public view. This means all WooCommerce-generated pages — shop, product, cart, checkout, and even My Account — are completely hidden until users unlock the store. Visitors with the link to your store will only see a login or password form.
Hide additional pages

This WooCommerce catalog visibility plugin automatically hides all WooCommerce-specific pages. If needed, you can restrict access to additional pages such as request quote forms, FAQ pages, etc.
User-role-based access
You can configure the store to automatically unlock for logged-in users with specific roles. When enabled, customers who log in to your site with the appropriate user roles will automatically be able to view the hidden catalog.
Password-protected access
Stores that don’t want to force customers to create accounts can set up password protection (with unlimited, unique passwords) instead. Customers can then enter their passwords to access the private store.
Hidden from sidebars and menus
It automatically removes links to your private store from navigation menus, sidebars, and any other public-facing areas of your site. Guests won’t see links to the Shop or WooCommerce-specific pages unless they have the direct link and correct login credentials.
Hide your store from search engines
There's no point hiding your WooCommerce store from direct access only for people to find it via search engines. WooCommerce Private Store excludes hidden products and pages from being indexed by search engines. This guarantees that your store won’t appear in search results.
How to restrict global catalog visibility with WooCommerce Private Store
In this section, I'll walk you through brief, step-by-step instructions to restrict access to your entire WooCommerce store using WooCommerce Private Store.
Let's get started.
1: Setup global settings
First things first, configure the core settings in the plugin's setup wizard.
- Get the WooCommerce Private Store plugin and add it to your website.
- In your site's admin sidebar, go to WooCommerce → Settings → Private Store and launch the Setup wizard.
- The first step is to enter your plugin license key to activate it.
- On the "Unlocking the private store" page, decide how you want to secure your WooCommerce site: using passwords or automatically allowing logged-in users to access it. For this tutorial, I'll select both options.
- On the "Password Protection" page, click on the "+" icon to create passwords to unlock your store. (You can create as many as you like).
- Next, determine the number of days for the passwords to be valid.
- In the "Redirect URL" field, add the link to the page you want users to land on after they log in to your private store. This can be the main shop page, a collection page, or something else.
- The "Store login form" page enables you to customize content for the private store's login form, including the page title, the message shown to users, the label displayed next to the password box and placeholder, and the text on the button on the login form.
- The "User roles" page lets you specify which user roles can access your private store. (If you haven't previously set these, you'll only see WooCommerce's default roles here: Administrator, Shop Manager, Customer, and Subscriber).
- Complete the setup wizard.
2: Add the private store login form to the front end
Here, we'll create a page customers can use to log in to the private store.
- Head to the "Pages" tab in your site's admin sidebar.
- Add a new page or edit an existing one.
- Within the Edit page section of the screen, add the following shortcode:
[store_login]
. - Hit "Publish" or "Save".
You can then link the private store to your store's menus (if you want people to access it from there). Alternatively, share the direct link with people.
3: Enable user-role-based access to your private store
Follow these steps to automatically allow users with specific roles who log into their accounts on your site to access your private store. When user-role-based access is enabled, users won't have to reattempt login with the unique passwords you created for your private store.
- First, make sure that your site has enabled user roles. Head to WooCommerce → Settings → Accounts & Privacy and check the relevant boxes under the "Account creation" section.
- Then, go to Users → All Users in your site's admin sidebar and verify that each user has the correct role to access your private store without unique passwords.
- If you need to modify a user's role, click on the Edit button next to their name.
- Locate the "Role" section and change the role as you prefer.
- Then scroll down and hit "Update Profile" to save your changes.
Here's an example of the page where users can enter their credentials and log in.

WooCommerce catalog visibility plugin 2: WooCommerce Protected Categories

Unlike WooCommerce Private Store which restricts access to your entire store, WooCommerce Protected Categories lets you restrict access to specific product categories and their sub-categories.
WooCommerce Protected Categories' standout features
- Password-based protection. You can protect individual categories with one or more passwords. This allows you to restrict access without requiring users to create accounts.
- User-role based protection. In addition to restricting access using passwords, you can also restrict access to categories based on user roles. Customers who are already logged in (via the account page for example) will be able to see the protected categories without having to enter the unique passwords again.
- Hide categories and sub-categories. Once you hide a product category, its sub-categories are automatically hidden too. Products within them won’t show up on the main shop page, product search results, or breadcrumbs.
- Hide from sidebars and menus. If you choose, protected categories and their links are automatically hidden from your site's menus, widgets, and sidebars. Unauthorized users won’t even see a trace of the restricted content. Alternatively, you can add links to the pages but users still have to enter passwords to log in.
How to restrict access to specific product categories with WooCommerce Protected Categories
1: Setup global settings
- Get the WooCommerce Protected Categories plugin and add it to your website.
- Navigate to WooCommerce → Settings → Products → Protected categories and launch the setup wizard.
- First, enter your license key to activate the plugin.
- On the "Protected category visibility" page, decide whether to show restricted categories in the navigation menus and public-facing section of your store. (If you enable these, people will see the name of the category. However, they will only be able to access the actual products after logging in using their unique passwords or if they have a pre-approved set user role).
- On the "Unlocking protected categories" page, decide whether to enable users to log in based on both passwords and user roles.
- On the "User and role protection" page, decide the page users can log in from and the page they see when they log out.
- On the "Password protection" page, specify how many days passwords are valid for, which page users can log in from, and the text that's shown on the login page.
- On the "Extra features" page, you can opt to get Barn2's "All Access Pass" to gain access to all 24 (and future) Barn2 plugins or our best-selling WooCommerce Quantity Manager plugin.
- Click "Finish setup" to save your settings.
2: Designate specific categories to be protected
- In your site's admin sidebar, navigate to Product → Categories.
- You can add new categories in the left section of the page. You'll find previously created categories in the right section of the page.
- Edit an existing category or add details in the appropriate fields to create a new one. Scroll to the "Visibility" section and select "Protected".
- Then you can decide how users can access the category: via unique passwords, based on specific user roles, or specific users.
- Hit "Add new category" to save it. Repeat the steps to create additional categories and sub-categories. Note that to add sub-categories to a protected parent category, you'll need to set the visibility to "Public". Check out the knowledgebase guide for more details.
- Finally, head to Product → All products.
- Locate the "Categories" modal on the right side of the page and add the product to relevant protected categories.
- Save your settings to apply them.
Here's an example of the page where users can enter their credentials and log in.

How does controlling WooCommerce catalog visibility impact SEO?
As a WooCommerce store owner, you know firsthand that search engines can drive a huge amount of organic traffic to your store, which directly impacts its revenue. So, you may be wondering, "How do catalog visibility settings affect SEO and product indexing?"
Let's explore how controlling access to your site's catalog can impact its organic traffic and rankings.
WooCommerce Private Store
This WooCommerce catalog visibility plugin hides all WooCommerce-specific pages — Shop, Product, Cart, Checkout, and My Account — from search engines. This prevents sensitive product data, such as pricing or wholesale-only products, from being indexed or displayed in search results.
However, since WooCommerce Private Store doesn't apply to the WordPress-specific pages of your site (like the home page, blog section, etc.), customers can still access those sections via search engines like Google.
WooCommerce Protected Categories
This WooCommerce catalog visibility plugin protects hidden categories from being indexed by search engines. Public categories, however, remain fully indexed and visible to search engines, so those web pages can still drive organic traffic to your site.
If you want to sell a product in both restricted and public categories, you'll have to create two versions of it and assign one to each category.
However, you need to make sure product metadata (product titles, images, prices, etc.) and internal links on public pages aren’t pointing to hidden categories to avoid any unnecessary confusion for search engines.
Can I hide prices but still show products to non-members?
If you want your product detail pages to be indexed by search engines, you'll need a plugin like WooCommerce Wholesale Pro. This lets you make product data visible while hiding their prices.
With this setup, everyone can view products, images, etc. but customers must register, be approved, and log in to view prices or complete checkout. This enables you to drive organic traffic while allowing customers to find products while browsing your online store.
Ready to manage WooCommerce catalog visibility settings?
In this post, I've shown you how to control which products or categories are visible to specific users or groups in your online store using two powerful WooCommerce catalog visibility plugins: WooCommerce Private Store and WooCommerce Protected Categories.
- WooCommerce Private Store locks down the entire WooCommerce-specific section of your ecommerce site and hides all products, categories, and WooCommerce pages (including the Shop, Cart, Checkout, etc.) from public view. This makes the entire store invisible until customers log in or enter a password.
- WooCommerce Protected Categories restricts access to specific product categories, while the rest of the WooCommerce-specific section of your ecommerce store remains public. Customers must enter valid passwords or have a predefined user role to access protected categories.
Get started with these WooCommerce catalog visibility plugins today!