How to offer member discounts in WooCommerce
WooCommerce can create percentage and fixed-value coupons, but it does not know who your members are or apply member pricing automatically. Use a restricted coupon for a small, manual scheme; for discounts tied to membership levels, use a membership integration that applies prices after login.
- 01Choose the discount model
- 02Use a native coupon for small schemes
- 03Define how membership is checked
- 04Test the rules before launch
- 05Install the membership integration
- 06Configure levels and product prices
What you need
- A WooCommerce store with products and customer accounts enabled
- Admin access to WordPress
- A clear member discount policy
- Membership levels already defined, if discounts vary by tier
Choose the discount model
Decide whether members will enter a coupon code or see a lower price automatically after logging in. A coupon is fine for a small club, one-off promotion, or invite-only scheme. Automatic pricing is better when discounts must follow active membership levels and expiry dates.
Also decide whether the discount applies to every product, selected categories, sale items, subscriptions, or specific products. Write these rules down before configuring anything, because overlapping sale prices and coupons are a common source of incorrect totals.
Use a native coupon for small schemes
WooCommerce includes built-in percentage, fixed-cart, and fixed-product coupons. Go to Marketing > Coupons, create a code, choose the discount type and amount, then use Usage restrictions to limit products, categories, minimum spend, excluded sale items, or allowed customer email addresses. Set an expiry date and usage limits where needed.
This is the honest manual route: send the code only to members and ask them to log in before checkout. WooCommerce core does not automatically apply coupon codes, and the code can be shared, so this route is best for a small or trusted member list rather than a tiered membership programme.
Define how membership is checked
A coupon alone does not prove that someone is a current member. If you use the manual route, maintain the eligible member list yourself and restrict the coupon by billing email where that matches your records. Remind members to use the same email address at checkout.
If you need discounts based on Bronze, Silver, or Gold levels, automatic renewal status, or different prices per product, do not rely on a shared code. WooCommerce needs a membership system or an integration that can check the customer’s active level before calculating the price.
Test the rules before launch
Test with separate accounts for a non-member, each member level, an expired member, and a logged-out visitor. Check the product page, cart, checkout, order email, and refund total. Confirm that the discount is applied only once and that excluded products and sale items behave as intended.
The Friday problem is usually a member who is logged out, uses a different billing email, or buys a membership product in the same cart. Also check variable products, subscriptions, tax display, caching, and other coupon rules before announcing the offer.
Install the membership integration
For automatic discounts tied to Paid Memberships Pro levels, install and activate Paid Memberships Pro, WooCommerce, and the Paid Memberships Pro - WooCommerce Add On. The add-on requires Paid Memberships Pro and adds membership-aware pricing to WooCommerce.
The fast way is to use its global percentage discount for a level, or set a custom price for individual products. This removes the need for members to enter a coupon code and lets the integration use their membership level when displaying and calculating prices.
Configure levels and product prices
For a storewide discount, edit the level under Memberships > Settings > Levels and set its membership discount percentage. For exceptions, edit a product, open the Membership tab in the Product Data panel, and fill in the member price for each level that should receive one. Leave a level blank if it should pay the standard price.
Log in as each level and verify the final price. If WooCommerce also sells the membership itself, do not give that same product member discount pricing; the integration documentation warns that a product should not be both a membership product and a member-discount product.
Let Paid Memberships Pro do it
Links membership levels to WooCommerce products, pricing, and checkout; choose it when discounts depend on Paid Memberships Pro tiers.
Sources
- woocommerce.com /document/coupon-management/?utm_source=openai
- paidmembershipspro.com /add-ons/pmpro-woocommerce/?utm_source=openai
- paidmembershipspro.com /gateway/woocommerce/?utm_source=openai
Questions
- Can WooCommerce offer member discounts without a plugin?
- Yes, but only as a manual coupon scheme. WooCommerce core can create percentage, fixed-cart, and fixed-product coupons with product, category, email, expiry, and usage restrictions. It does not identify active membership levels or automatically apply a coupon, so a plugin or custom development is needed for automatic member pricing.
- How do I stop non-members using a member coupon?
- Restrict the coupon to eligible billing email addresses or distribute unique codes, and require members to use the same email at checkout. A shared code can be forwarded, and WooCommerce core does not provide membership-level validation. For stronger control, use an integration that checks the customer’s active membership before applying the price.
- Should member discounts apply to products already on sale?
- Choose this policy explicitly and test it. WooCommerce coupon restrictions include an option to exclude sale items, while membership systems can also provide a setting for excluding sale products. Leaving both rules unclear can produce discounts that are deeper than intended, especially when a product price and coupon are both reduced.
- Can members get different discounts for different products?
- Yes. With a membership-level integration, you can apply a global percentage discount and override it with custom prices on selected products. Paid Memberships Pro’s WooCommerce integration adds per-level pricing in the product’s Membership settings, while products without a configured member price can keep their normal price.
- Why is the member price not appearing at checkout?
- The customer may be logged out, using an account without the expected level, or using a different account from the one that received membership access. Check the membership status, product-level price, sale-item exclusions, cart contents, caching, and any other discount rules. If membership is sold through WooCommerce, also check whether the order has reached the status that grants the level.