Creating coupons & discounts
How to create coupon codes and set up discounts in WooCommerce, including percentage off, fixed amounts, and free shipping.
- Time
- 5 minutes
- Difficulty
- Beginner
Coupons are a great way to reward loyal customers, run promotions, or recover abandoned carts. WooCommerce has a built-in coupon system that is flexible and easy to use.
Quick summary
Create coupons under Marketing → Coupons. Choose a discount type (percentage, fixed cart, or fixed product discount), set an amount, and optionally add restrictions like minimum spend or expiry dates. Share the coupon code with customers and they enter it in the cart or at checkout.
Creating a coupon
Go to Marketing → Coupons. Coupons must be switched on first: if they aren't, go to WooCommerce → Settings → General, tick Enable the use of coupon codes, and save.
Click Add coupon.
Enter a coupon code. This is what customers type in the cart or at checkout. Make it easy to type, with no spaces (e.g., WELCOME10 or SUMMER2024). Codes aren't case-sensitive, so "welcome10" works too. Or click Generate coupon code for a random code.
Add a description (optional). This is private — only you see it. Use it to remind yourself what the coupon is for.
Set up the discount in the General tab (see below).
Add any restrictions in the Usage restriction and Usage limits tabs.
Click Publish to activate the coupon.
Discount types
| Type | What it does | Example |
|---|---|---|
| Percentage discount | Takes a percentage off the items in the cart (or only the products you choose) | 10% off everything |
| Fixed cart discount | Takes a set dollar amount off the whole cart | $15 off orders |
| Fixed product discount | Takes a set amount off each qualifying item | $5 off each shirt |
Choose the type in the Discount type dropdown, then enter the amount in the Coupon amount field.
Usage restrictions
Under the Usage restriction tab, you can control who can use the coupon and how.
| Setting | What it does |
|---|---|
| Minimum spend | Coupon only works once the cart subtotal (which can include tax) reaches a set amount |
| Maximum spend | Coupon doesn't work above a set cart subtotal |
| Individual use only | Can't be combined with other coupons |
| Exclude sale items | Doesn't apply to products already on sale |
| Products | Restrict to specific products |
| Exclude products | Prevent use on certain products |
| Allowed emails | Limit to specific email addresses (good for VIP offers) |
Usage limits
Under the Usage limits tab:
- Usage limit per coupon — total number of times the code can be used across all customers.
- Usage limit per user — how many times one customer can use it.
For example, setting Usage limit per coupon to 1 creates a code that can be used only once in total. Leaving that blank and setting Usage limit per user to 1 lets every customer use the code once.
Free shipping coupons
To make a coupon grant free shipping:
- Tick the Allow free shipping checkbox in the General tab.
- If the coupon should give free shipping and nothing else, set the Coupon amount to 0.
Once the free shipping method below is in place, the coupon removes shipping costs at checkout. Ordinary coupons never reduce shipping.
Free shipping method required
Free shipping via coupon only works if you have a "Free shipping" shipping method set up in your shipping zones, with its "Free Shipping Requires" setting on an option that includes a coupon (for example, "A valid free shipping coupon"). See the guide on setting up free shipping.
Setting an expiry date
In the General tab, click the Coupon expiry date field and choose a date. The coupon stops working automatically at the start of that date (00:00), so it can't be used on the date itself.
Common questions
Can I see how many times a coupon has been used?
Yes. On the Coupons list screen, there is a "Usage / Limit" column showing how many times the coupon has been used. For more detail, Analytics → Coupons shows how many orders used each coupon and the total discount given.
Can a customer use more than one coupon at once?
Yes, by default customers can apply more than one coupon to an order. To stop a coupon being combined with others, tick Individual use only in its Usage restriction tab. Contact us if you're unsure how your coupons should stack.
How do I make a coupon for a specific customer only?
Under Usage restriction, enter the customer's email in the "Allowed emails" field. WooCommerce checks it against the billing email on the order, so only orders placed with that email will accept the coupon. You can add multiple emails, separated by commas.
My coupon isn't working for a customer. What should I check?
Check: (1) Is the coupon published and not expired? (2) Does the cart meet the minimum spend? (3) Is the product in the cart excluded? (4) Has the customer already used their limit? Also see our guide on troubleshooting payment and checkout problems.
Related guides
- Understanding the checkout experience
- Setting up free shipping
- Reports and analytics
- Pricing and sales
- Troubleshooting order problems
Need a hand?
Learn more
Last updated