PluginGauge

How to hide prices until login in WooCommerce

By Raz Technologies · published · data updated

How do I hide prices until customers log in on WooCommerce?

Use a catalog-mode plugin that hides prices and the Add to cart button for logged-out visitors, or add two WooCommerce filters (below) if you are comfortable with code. As of 2 November 2026, the top-ranked plugin in our catalog mode ranking is Art WooCommerce Order One Click (77.1/100). See our catalog mode plugin ranking for the full comparison.

The problem

B2B and wholesale stores often don't want the public to see prices — they negotiate per account, or show trade prices only to approved customers. WooCommerce shows prices to everyone by default.

Option 1: a plugin (no code)

These are the highest-ranked catalog-mode plugins we track. All of them can hide prices for guests; check each profile for the exact rules (per role, per category) and compatibility.

Top catalog-mode plugins — from our catalog mode / hide prices ranking, 2 Nov 2026
PluginRankCheckout BlocksInstalls
Art WooCommerce Order One Click#1Not declared4,000+
ELEX WooCommerce Catalog Mode#2Not declared10,000+
Product Enquiry#3Not declared10,000+
WooCommerce B2B#4Not declaredNo data
Hide Price and Add to Cart#5Yes800+
WooCommerce Product Catalog Mode & Enquiry Form#6Not declaredNo data

Option 2: two filters (for developers)

Add this to a small custom plugin or your child theme's functions.php. The first filter replaces the price with a login link; the second stops guests from adding products to the cart.

add_filter( 'woocommerce_get_price_html', function ( $price, $product ) {
    if ( is_user_logged_in() ) {
        return $price;
    }
    $url = wc_get_page_permalink( 'myaccount' );
    return '<a href="' . esc_url( $url ) . '">' . esc_html__( 'Log in to see prices', 'my-store' ) . '</a>';
}, 10, 2 );

add_filter( 'woocommerce_is_purchasable', function ( $purchasable ) {
    return is_user_logged_in() ? $purchasable : false;
} );

After adding it, check a product page, the shop page and the block cart while logged out, then logged in.

Other plugins people ask about

FAQ

Does hiding the price also stop guests from buying?

Not by itself. Hiding the price HTML only changes what is shown; to stop purchases you also need to make products non-purchasable for guests (the woocommerce_is_purchasable filter, or a plugin option that hides Add to cart).

Will this work with the block-based cart and checkout?

Test it. Of the 37 catalog-mode plugins we track, 4 declare Cart & Checkout Blocks compatibility (as of 8 November 2026).

Can I show prices only to wholesale customers?

Yes — role-based rules do that. Look for plugins that restrict prices by user role, or combine a wholesale pricing plugin with a hide-price rule for guests.