WooCommerce role-based pricing: Everything you need to know

Updated April 10, 2023

Out of the box, the WooCommerce plugin lets you add a regular price and a sale price for each product. It doesn’t come with WooCommerce role-based pricing, so there's no built-in way to sell the same product to different types of users at different prices. In this article, you'll learn how to set up WooCommerce dynamic pricing by role.

One way to do this is by duplicating the product and adding a different price to each version for different user roles. The problem with this, however, is that it requires a lot of back-end management. For this reason, it’s not suitable for e-commerce stores that sell dozens or hundreds of products.

A better way is to use a WooCommerce role-based pricing plugin, like WooCommerce Wholesale Pro. You can use it to create multiple user roles and add WooCommerce prices by user role to your e-commerce store. Each user sees the same products, with the correct pricing for them.

Why do you need WooCommerce role-based pricing?

If you sell products to different types of customers – such as retail customers and wholesale customers, or members on different subscription plans – then you probably need WooCommerce role-based pricing. This is the easiest way to set up customer-specific pricing.

Here are some use case scenarios where setting WooCommerce prices by user role could save you a lot of time and back-end store management:

  • You sell to both retail customers and wholesale buyersIf you sell to retail and wholesale customers, you can sell the same product at different prices without having to duplicate products. This is a great way to deliver better user experience, especially since wholesale customers are likely to buy more from you per order.
  • You sell products to members subscribed to different membership plansIf you’re running a membership site, you might consider offering members on higher-priced subscription tiers a larger discount on purchases than members on lower-priced tiers. This is also great for offering different discounts to different customer groups.
  • You want to hide prices from your public-facing storeAs an online store owner, you might want to encourage visitors to create an account. One way to do this is by hiding prices until login. This way, guest users will have to create an account and become registered users to view product prices.

These are just some of the reasons why you might consider adding WooCommerce role-based pricing to your online store. Depending on the type of online store you’re running, you can use WooCommerce role pricing in different ways to increase conversions and boost sales.

How to set up WooCommerce role-based pricing (in 3 different ways)

The WooCommerce Wholesale Pro plugin is the easiest way to set up WooCommerce role-based pricing on any WordPress site.

Install WooCommerce Wholesale Pro today and set up prices by user role!

Before you start, you’ll need to have the free WooCommerce plugin installed on your website with some products added to it.

Once that’s done, get the WooCommerce Wholesale Pro plugin and install and activate it on your WordPress site. You’ll receive a license key along with the plugin files in an email. Head over to WooCommerceSettingsWholesaleGeneral and paste the license key in the License key field.

WooCommerce Wholesale Pro license key

Next, add as many user roles as you like:

  1. Head over to WooCommerceSettingsWholesaleRoles from the WordPress admin panel.
  2. Click the Add new role button.
  3. Enter the display name and percentage discount you’d like to offer users.
  4. Click the Save changes button to continue.

Once you've created a role for each pricing group, you can use WooCommerce Wholesale Pro to add 3 types of role-based pricing:

  1. Create global percentage discounts
  2. Create category percentage discounts
  3. Set exact prices for individual products

Feel free to skip ahead to your preferred method, or read through them all to see which one best fits your needs.

Method #1: Create global percentage discounts

Creating global percentage discounts is useful if you want to offer a specific user role a flat percentage discount on all products. For example, you can use this to give wholesale customers a 5% discount on their orders while retail customers pay the full amount.

You can also use it to offer members on different subscription plans a percentage discount on all purchases. For example, Silver Members qualify for a 3% discount whereas Gold Members qualify for a 5% discount.

To set up global role-based pricing in WooCommerce, head back toWooCommerceSettingsWholesale → Roles and add a percentage discount for each role:

Set up global discounts in WooCommerce

Your product page will look something like this to different customers:

Notice how the product page display price is different depending on the customer’s user role.

Method #2: Create category percentage discounts

Some WooCommerce store owners might benefit from creating category percentage discounts. This way, you can offer different types of users a different discount for each WooCommerce category.

For example, you might want to offer Silver Members a 15% discount and Gold Members a 20% discount on products in the Seasonal Sale category. These discounts might be bigger than the reductions in your year-round categories.

Here’s what you need to do to set this up in your online store:

Create category percentage discounts

  1. From the WordPress admin panel, navigate to Products Categories.
  2. Edit the product category you’d like to set category percentage discounts for or create a new WooCommerce product category.
  3. Use the Wholesale % discount option to set the category percentage discounts for each user role.
  4. Click the Update button.

In addition to this, you can also make product categories visible to only wholesale users, only guest users, or both wholesale users and guest users. This is an easy way to hide specific products from your public-facing site.

Method #3: Set exact prices for individual products

There are plenty of scenarios where you might want to set exact prices for specific products instead of offering percentage discounts.

This is possible with the WooCommerce Wholesale Pro plugin. You can use it to set exact wholesale prices for individual products. The best part is that it works for simple products and products with variations.

Here’s how you can set exact prices for individual WooCommerce products:

Enable product specific pricing

  1. Head over to WooCommerceSettingsWholesaleRoles from the WordPress admin panel.
  2. Edit the user role you’d like to enable exact prices for.
  3. Tick the checkbox next to the Product specific pricing option.
  4. Click the Save changes button to continue.

Set exact prices in WooCommerce

  1. Edit the product or variation that you’d like to set custom prices for.
  2. Scroll down to the Product data section and set the exact prices for each user role. This also works for variable products.
  3. Click the Update button to continue.

Bonus: show WooCommerce role-based pricing in a table layout

wholesale ecommerce layout

One of the key benefits of using the WooCommerce Wholesale Pro plugin for setting up WooCommerce price by user role is that you can list products in a table layout. For this, you’ll need to get the WooCommerce Product Table plugin which integrates seamlessly with WooCommerce Wholesale Pro.

Using the WooCommerce Wholesale Pro plugin with WooCommerce Product Table, you can create quick, one-page order forms that display role-based pricing as well as other product details (such as product ID, image, and description). For example, you can use this to make it easier for wholesale customers to add products to their shopping cart without having to click the add to cart button for each one and quickly and proceed to the checkout page.

Wholesale customers will see wholesale pricing in the table layout and they can simply use the checkboxes to select all of the products they’d like to purchase and add to cart in one go.

To save money, get WooCommerce Product Table in a bundle when you buy WooCommerce Wholesale Pro.

Set up WooCommerce role-based pricing

The WooCommerce Wholesale Pro plugin is the easiest way to set up and offer role-based pricing in WordPress.

It lets you create as many user roles for WooCommerce as you’d like and create dynamic pricing in three different ways. You can choose to offer global percentage discounts, category percentage discounts, or set up exact product prices for individual WooCommerce products.

In addition, the WooCommerce role-based pricing plugin integrates with Product Table, allowing you to display WooCommerce prices by user role in a neat one-page order form.

The easy way to charge different prices per user role. 30-day guarantee - love it or your money back!

Get the WooCommerce Wholesale Pro plugin and set up WooCommerce role-based pricing today.


  1. Maxim
    February 22, 2022 Reply

    Hi! Question about the role-based pricing plugin. My client wants give discounts for bronse, silver en gold users, but he also want status changes automaticly from bronse to silver and from silver to gold when clients reach a total sales ammount in the passed X period. Is this possible too with the plugin?

    Kind regards,

    • Edge
      February 23, 2022 Reply

      Hi, Maxim. I'm afraid that WooCommerce Wholesale Pro doesn't have an option to automatically upgrade a wholesale user to a different user role based on purchase amount - thanks for the suggestion! I have added it to our feature request list so that we can track the amount of demand. We will let you know if we add this to a future version of the plugin.

      In the meantime, I'm sorry that this isn't possible. Please let me know if you have any more questions. Best regards.

Please share your thoughts...

Your email address will not be published.