WooCommerce has a built-in coupon system that handles percentage discounts, fixed cart discounts, and product-specific discounts. The setup has a few traps – several settings are easy to overlook that determine whether a coupon works the way you intend – particularly usage restrictions and the difference between cart and product discounts.
Step 1: Create a Coupon
Go to Marketing -> Coupons -> Add Coupon. Enter the coupon code – this is what customers type at checkout. Make it memorable and easy to type: SUMMER20, WELCOME10, FREESHIP. Avoid ambiguous characters like 0 and O or 1 and I that customers frequently confuse. Click Generate coupon code to get a random code if you prefer non-guessable codes for private promotions.
Step 2: Configure the Discount Type
In the General tab, set the Discount Type:
- Percentage discount – takes X% off the cart total. SUMMER20 gives 20% off everything. Most versatile type.
- Fixed cart discount – deducts a fixed amount from the cart total. £5 off any order. The discount applies to the cart total after products are added.
- Fixed product discount – deducts a fixed amount per product unit. £5 off each qualifying product. If the customer buys 3 qualifying products, they save £15 total.
Enter the Coupon Amount (the percentage or pound/dollar value). Set an expiry date if the promotion is time-limited – an expired coupon shows an error at checkout rather than silently not applying.
Need help setting up your WooCommerce store? Describe your project and get a free estimate.
Step 3: Usage Restrictions
The Usage Restriction tab controls which orders qualify for the coupon. Key settings most store owners miss:
- Minimum spend – the cart must reach this amount before the coupon applies. Set to your typical order value to protect margins on small orders.
- Maximum spend – prevents a 20% coupon being used on a very large order. Set for promotions where high-value order discounts are not intended.
- Individual use only – prevents this coupon being combined with other coupons. Enable for sale coupons where stacking discounts would be unprofitable.
- Exclude sale items – prevents the coupon applying to products already on sale. Prevents double-discounting.
- Products – restrict to specific products only. Leave empty for all products.
- Exclude products – prevent the coupon applying to specific products.
- Product categories – restrict to specific categories.
- Allowed emails – restrict coupon to specific email addresses. Useful for first-purchase welcome coupons or personal gifted discounts.
Step 4: Usage Limits
In the Usage Limits tab:
- Usage limit per coupon – total number of times this coupon can be used across all customers. Leave blank for unlimited. Set to 1 for a coupon that expires after the first use (one-time-only promotions).
- Usage limit per user – how many times one customer can use this coupon. Set to 1 to prevent customers applying a welcome coupon repeatedly on multiple orders.
Free Shipping Coupons
Create a coupon with “Free Shipping” as the discount type. This coupon activates the Free Shipping method in whatever zone the customer’s address matches – but only if you have configured Free Shipping in that zone with the requirement set to “A valid free shipping coupon” or “A minimum order amount OR coupon”. Check your shipping zone configuration to confirm the free shipping method is available in the relevant zones.