Mobile App Refresh Campaign [Banner] 2024

How to run a sale in WooCommerce 

Written by Nicole Kohler on June 19, 2024 Marketing, Sell Online.

Running a sale is a great way to motivate customers to make their first purchase. And even if you already have a loyal base of customers, sales can help you earn more of them, increase the average lifetime value of existing customers, or minimize losses by offloading less-than-popular SKUs.

The question is, how do you run a sale using WooCommerce?

WooCommerce enables you to run multiple types of online sales by default. You can provide discounts via coupons for individual orders, put specific products or entire categories on sale, run flash promotions, and more. Understanding how each type of sale works and how to implement it with WooCommerce will help you grow your business more effectively.

In this guide, we’ll start by discussing the benefits of offering sales. Then we’ll show you how to run a sale in WooCommerce using eight different approaches. We’ll even provide some tips and advice along the way. Let’s go! 

Why it’s smart to run sales in WooCommerce

Before we show you how to run a sale in WooCommerce, let’s go over the advantages of doing so.

Convert more sales

Whether it’s a first-time shopper or a long-time customer, if someone sees a great deal, they’re more likely to act. 

First, 46 percent of online shoppers say that a discounted price is the primary reason for a recent purchase. So giving people a chance to take advantage of a great deal will definitely encourage visitors to convert to customers.

In fact, the majority of consumers seek out coupons, and are twice as likely to buy products if they’re at least 20 percent off. So even moderate discounts can help move products much faster.  

Increase average customer lifetime value

Finding customers isn’t easy. And if you provide a great product and strong service, first-time customers often turn into repeat buyers and eventually brand enthusiasts. Long-time WooCommerce store owners know just how valuable this can be.

To make the costs of acquiring customers worth the investment, you need to maximize the lifetime value of every customer you have. 

Some of this is the great service and quality products mentioned before, but you can also take a much more proactive approach. Presenting sales offers to previous customers — for products or product categories they’ve expressed interest in — can serve as a thank you for their loyalty and increase their overall spend with your online store. 

Reduce extra inventory with minimal waste 

Every store that has winning products also has SKUs that don’t meet expectations. Holding these in your warehouse costs you storage fees and holds up cash flow. 

But by running deep sales for products you need to get rid of anyways, you can claw back some of your losses and free up cash for investment into new SKUs or marketing efforts. 

Eight effective ways to run a sale in WooCommerce

Now, we’re going to show you how to run a sale in WooCommerce. We’ll go over eight different ways to do this, and talk about the pros and cons of each approach. This way, you can more easily decide which method(s) you want to use.

1. Product discounts

Product discounts are the most straightforward type of sale you can create with WooCommerce. You can set a Regular price ($) as well as a Sale price ($) for each item.

To do this, go to Products → All Products and click on the item you’d like to offer at a discount. Scroll down to the Product data section.

adding a sale price to a product in WooCommerce

If you enter any value into the WooCommerce Sale price ($) field, that will be the price visitors see on the front end of the store. This field overrides the Regular price ($) value. If you’re not hosting a sale, leave that field empty so you don’t discount products by mistake.

As you can see, it isn’t too complicated to add sale prices in WooCommerce isn’t hard. But it can be time-consuming if you’re running a big promotion with large numbers of discounted products. That’s because you’ll need to set a sale price for each product, and then update all of them again once the campaign ends.

Fortunately, WooCommerce offers a way to edit product prices in bulk, which can be incredibly useful when it comes to a large sale. To do this, go to Products → All Products tab. 

Select all the items you want to edit by checking the boxes on the left side of the screen next to their names. Now open the Bulk actions menu, click on Edit, then Apply.

bulk editing products

This will open a “quick” editor that enables you to make changes to the products in bulk. Look for the section that says Product data and click on the Sale menu.

bulk editing products

This menu includes multiple options for setting discount prices for each product. You can choose to increase or decrease WooCommerce sale prices here. 

If you choose the third option, which is Set to regular price decreased by (fixed amount or %) you can set percentage-based discounts for all the products you’re editing. This example illustrates setting a five percent discount:

editing sale price in bulk

For percentage discounts, be sure to enter the number followed by the percent symbol. When you’re done, click on the Update button. 

This will close the quick editor and return you to the All products screen. If you check the Price column for the selected products, you’ll see that their prices are now discounted by five percent.

viewing list of product in WooCommerce

Just remember to update the product prices again once the sale is over!

2. Flash sales

A flash sale is a discount campaign with a set timeline. Typically, flash sales only last for a few hours or days. The idea behind this type of campaign is to leverage the fear of missing out (FOMO) and encourage visitors to make snap decisions on purchases.

Research has shown that flash sales tend to increase both the number of visitors and their overall spending. Stores often run flash sales with especially deep discounts (more than you’d see during regular sales) for specific products, and may sometimes let sales last until stock runs out.

By default, WooCommerce doesn’t have a timer feature you can use for hosting flash sales. But you can create flash sales that end when product inventory runs out.

To do this, you’ll need to use the Stock management feature in the product editor. Open the item you want to put on sale and go to the Product data box. Click on Inventory and check both the Stock management and Sold individually options.

inventory levels and stock thresholds for a product

In the above screenshot, you’ll see a product with a Quantity of 100 units in inventory. Each customer is only allowed to buy one per order.

Next, you can set the sale price by going to the Product data → General tab and entering a new value in the Sale price ($) field. This configuration will make it so that the product on sale can run out, thereby ending the discount.

You’ll also want to set some type of notification on your store homepage or Shop page indicating that there’s a flash sale going on. This will let visitors know there’s a product available for discount and the offer will only last until the product is sold out.

If you want to add a sales timer to WooCommerce, you’ll need to use an extension. Simple Sale Countdown Timer is a great option, as it enables you to set timers for products on sale.

managing products on sale

The timers appear on individual product pages. Once the time runs out, the plugin will automatically disable sales prices and return them to their original values.

3. Cart discounts

Cart discounts involve offering lower prices on entire shopping carts, rather than on a product-by-product basis. One way to do this would be to offer a discount on any purchase over $50. You could provide either a flat-fee discount or a percentage-based one.

cart full of products

This is a type of discount WooCommerce doesn’t offer by default unless you use coupons (which we’ll explore further on in this article). So to implement cart discounts, you’ll need to use an extension like Cart Discounts for WooCommerce.

This particular extension enables you to configure multiple types of cart discounts, including:

  • Discounts by the total cart amount. This is the most straightforward type of cart discount you can offer. You can use the extension to set cart discounts that only trigger if the total is over $X.
  • Cart discounts that trigger past a number of items. This type of discount triggers if you have over X items in the cart. Note that these discounts can be tricky to manage, since customers might be able to purchase multiple cheaper items and still get discounts.
  • Discounts for abandoned carts. This approach involves offering cart discounts via email for visitors who have abandoned their purchases, to entice them into completing those orders. According to research, more than 70 percent of shoppers abandon their carts, so recouping even a small number of these potential losses can be a big win.
  • Discounts by the cart weight. If you sell physical items, weight plays an important role due to shipping costs. One creative way to offer cart discounts is to take weight into consideration. This makes sense when you’re selling products that are both heavy and expensive (so you can afford to offer discounts that offset the shipping costs).

Note that any cart discounts you offer should have set conditions. Otherwise, you open yourself up to potential sales exploits. That’s when visitors find loopholes in the sales mechanics that enable them to save money unfairly.

4. Product category discounts

You might have seen an online store that offers discounts for entire product categories rather than the entire store. This is an excellent way to run sales, because it gives you the opportunity to boost certain styles or departments that aren’t seeing a lot of action.

You can implement this type of sale manually in WooCommerce or by using extensions. The manual method involves bulk editing products in a specific category and setting discounts for them.

To do this, go to Products → All Products and look at the Select a category menu. Click on it and choose the category of products you want to edit.

filtering products by category

Once you select a category, click on Filter. This will reload the products page and only show you the items in that category.

To set discounted prices for these products, select all of them using the checkboxes to the left of each item. Then open the Bulk actions menu and choose the Edit option. Next, click Apply.

bulk editing Woo products

Locate the Sale drop-down menu and select the option that says Set to regular price decreased by (fixed amount or %). This will reveal a field where you can enter the discount value.

setting sales price in product data

You can set this as either a flat fee or a percentage. To set a flat fee discount, simply enter a number. For a percentage discount, enter the number followed by the percent symbol.

Click on Update and this will set sale prices for all the products in that category. When you’re ready for the sale to end, you’ll need to return to the bulk edit menu under the Products tab to revert all of the category’s items to their original prices.

If you’d rather use an extension instead of the bulk editor, consider using Category Discount WooCommerce. This plugin adds a new item to your dashboard that enables you to set discounts for all products in a category.

This is a free plugin with a premium version. The functionality you’ll need is included in the free tool.

After installing and activating the plugin, go to WooCommerce → Product Category Discount. This will open a page including a list of all the existing product categories on your website. For each category, you get the option to set either a fixed amount or a percentage-based discount.

discount products based on

Once you choose a type of discount, set a value for it using the Amount ($) field for that category. Then check the Apply box for that category, and that’s it! When the sale ends, you can set the values back to normal using this same configuration screen.

5. Free shipping offers

One of the main reasons shoppers abandon carts is shipping costs. In fact, 63 percent of all abandoned carts are attributed to this factor. That’s why it can be smart to run sales that offer reduced or free shipping, to encourage visitors to make more purchases.

With WooCommerce, you can do this by creating a new shipping zone and then applying it to the products on sale. Go to WooCommerce → Settings → Shipping. Click on the Add zone button next to the Shipping zones header.

shipping zones on a Woo site

First, you’ll want to set a name for the zone. This is for internal identification purposes only. Next, select what regions to include in the zone. If you only sell to a specific region or country, use this field to indicate what that is.

creating shipping zones

Note that offering free shipping for every region is not a viable idea under most circumstances. This is because you’ll need to honor those sales, and shipping costs can skyrocket for international purchases.

After setting the region, click on Add shipping method. This will open a window where you can select the shipping method for the region. Your options are free shipping, a flat rate, or local pickups.

creating shipping method

For a sale, you’ll want to offer either a flat rate or free shipping. Before choosing an option, you’ll need to run the numbers to see what’s viable for your WooCommerce store. Any choice you make will impact your margins, so make sure you’re not losing money by running this type of sale.

If you choose the flat rate option, you’ll be able to set a value and configure it as taxable or not. You can also choose to include shipping class costs.

setting up flat rate shipping

Shipping classes are categories for different types of items. Typically, you’ll want to set shipping classes for heavier items so they don’t fall under the same cost structure as less heavy products (since they cost more to ship).

If you choose free shipping, this option will appear under the Shipping methods section for that zone. Click on Edit for that option to configure it further. 

shipping methods free shipping

The settings window for the free shipping option will enable you to set conditions for this method. You can choose from conditions like using a specific coupon or reaching a minimum order amount, or even a combination.

set up free shipping with a valid coupon

Set the condition you want and click on Save. Setting no requirements is also an option, but it can make the sale harder to manage. You may end up losing money due to unforeseen shipping costs.

Save the shipping method when you’re ready. Now all that’s left is to tell customers in that shipping zone that you’re offering either free or discounted shipping. When the sale ends, remember to edit this discounted shipping zone or delete it altogether. 

6. User-specific or personalized discounts

User-specific discounts are offers that vary from customer to customer. One way to do this is to offer products on sale or with significant discounts for only your most loyal customers. 

The easiest way to offer personalized discounts is to use the default WooCommerce coupon system. You can use this system to generate one-use coupons and share them only with specific customers, so they can take advantage of unique discounts.

We’ll show you how to use coupons in WooCommerce in the next section. If you prefer a coupon-less solution, you can use a plugin like Custom WooCommerce Discount for User instead.

This plugin adds a new section to the dashboard, where you can set up custom discount rules for users. To do this, go to Manage Customer Discount and use the Select User menu to choose a WooCommerce customer.

manage user discounts

Once you select a customer, you can set up a new rule specifying what products or categories discounts should apply to. In the screenshot above, you can see a ten percent discount that’s unique to one customer.

If you plan on offering user-specific discounts, you’ll need to communicate with those customers to inform them about it. Email is the best way to do this, and ideally those customers will be part of your list of subscribers.

If you haven’t set up an email list yet, now is a good time to do it. You can use an extension that enables you to integrate an email marketing service with WooCommerce, like Mailchimp or MailPoet.

This integration will enable you to create campaigns and send emails to WooCommerce customers. Emails are a fantastic way to send discounts and sale offers. A lot of stores even give discounts to customers who sign up for their email lists or receive text notifications.

This approach is relatively quick to implement using WooCommerce coupons. You can create one-time-use coupons and automatically send them to new email subscribers (more on this in the next section).

This extension can also help you send other types of personalized offers, including abandoned cart discounts. If a customer signs up for your email list, you’ll be able to send tailored emails based on their purchase history, when they last bought something from your WooCommerce store, and even whether they’ve been opening messages or not.

7. Coupon discounts

WooCommerce includes a coupon code system that’s perfect for hosting sales. You can create coupons that offer discounts for any amount. What’s more, you can configure coupons to only work under specific conditions, and set usage limits.

Some of the sales methods we’ve discussed so far can also work using coupons. That includes cart and shipping discounts. We’ll show you how those options work in this section, and provide an overall guide to using coupon codes.

Before we talk about how to create coupons with WooCommerce, note that prospective customers can use them by going to the Cart page when making a purchase. There, they’ll see an option for applying a coupon code before proceeding to checkout.

cart with beanie product

To create a coupon, go to Marketing → Coupons and click on Add coupon at the top of the screen.

creating coupons

This will open an editor you can use to create a discount coupon. To start, you can set a coupon code manually or use the Generate coupon code option.

add new coupon

Either option is viable, as long as you don’t set a generic code (like “discount”) that customers can easily guess.

Next, scroll down to Coupon data. Choose a Discount type and set a value for it using the Coupon amount field.

fixed product discount settings

The Discount type menu includes an option called Fixed cart discount. You can use this as an alternative way to run cart discount sales.

The Allow free shipping option is also a valid alternative to offering shipping discounts. The only downside of using coupons to host these kinds of sales is you need to make sure customers receive the coupon codes and understand how to apply them. Otherwise, they might miss out on the sale, which is why we’re recommending this as a secondary option.

The Coupon expiry date setting can also be incredibly useful for sales, since it means you don’t need to disable or delete the coupon code manually. It’ll simply stop working on the end sale price dates you set.

scheduling a coupon code

Moving on, go to the Coupon data → Usage restriction tab. This is where you get to configure the coupon conditions customers must meet to apply the coupon.

Unless you want to run the kind of sale where you offer discount coupons to everyone without restrictions, you’ll need to set conditions. The options include setting minimum and maximum spends to activate the coupon, and excluding sale items on a purchase that uses a coupon

You can even check a box that prevents shoppers from using multiple coupons together.

This tab will also allow you to select if the coupon should only apply to specific products, categories, or users. That last option is another viable way to offer personalized discounts, which we discussed in the previous section. What to select here will depend on what type of sale you’re hosting.

product categories

When you’re ready, move on to the Usage limits tab.

setting usage limits

If you only want the coupon to work a set number of times, enter that value in the Usage limit per coupon field. This can be a fantastic way to host a flash sale. You can tell customers there’s a coupon that will only work X number of times before the event ends, which means they have to hurry.

Likewise, you’ll want to set the Usage limit per user value to “1” in most cases. This means each customer will only be able to enjoy the coupon once, which is a smart way to prevent shoppers from taking advantage of discounts.

When you’re finished configuring the coupon, click on Publish to save it. Now you’ll need to get that coupon into customers’ hands, which you can do with an email list or a notice on your website.

If you want to leverage coupons even further, you can use them as rewards for a referral system. In this setup, customers get access to exclusive sales or discounts if they refer others to your site and those referrals complete a purchase.

To make this possible, you’ll need to use an extension to implement a referral system in WooCommerce. One great option for this is Coupon Referral Program.

The extension generates unique links for each customer that they can use to share your store. These links track customer activity and give rewards when referrals meet the necessary criteria.

You can configure the rewards for referrals to incentivize your existing customers. How they choose to share the links is up to them.

8. Private sales for subscribers 

Last but not least, you can also offer private sales for subscribers. This type of sale involves using a membership system. You can set up sales that only current members or subscribers can access.

WordPress offers a user registration system, but doesn’t include built-in features to help you create content that only specific customers can access. To do that, you’ll need to use an extension like WooCommerce Memberships.

This extension enables you to set up recurring memberships and subscriptions. You use WooCommerce to process the payments, and the extension lets you assign specific user roles to each member.

You can also use WooCommerce Memberships to restrict content and sale products. This way, only specific user roles can see it. This gives you a way to host sales that aren’t open to the public. 

When running a private sale, you can opt to use any of the other methods we’ve discussed so far to set discounts. Every aspect of the sale will work as usual, except the way you limit who has access to it.

Five key steps for running a successful ecommerce sale

Now that you know how to run a sale in WooCommerce, it’s important to understand how you can improve the odds of making a decent profit during the event.

Here are some basic steps you can follow:

  1. Set a goal for the sale. This can be as straightforward as reaching a set number of purchases or an overall revenue target. These goals are useful for documenting each sale’s success, so you can apply what you’ve learned to future events.
  2. Plan your type of discount. The discount type should be based on the goal you want to achieve. For instance, if you want to motivate first-time buyers, a flat discount might be most appealing. Meanwhile, a cart discount with a minimum requirement might be better for loyal customers who already trust your products.
  3. Develop a marketing strategy. Customers need to be aware of a sale in order for it to be effective. As such, you may want to create an ecommerce email marketing campaign or promote your sales on social media.
  4. Prepare the sale. Once all the planning is done, you’ll need to set up the sale in WooCommerce. That means creating the coupons you’ll need, applying product discounts, configuring cart discounts, and more. This process will vary depending on what type of sale you’re working on.
  5. Run the campaign and measure the results. Once the sale starts, your job is to ensure it goes off with as few technical difficulties as possible, and to provide customer support. When the sale ends, you’ll want to analyze its performance in the reports section of your WooCommerce admin dashboard to see if it met your expectations. Be sure to take notes on how you can improve the next sale.

Naturally, there’s a lot more that goes into hosting a successful sale. It’s often best to start small, and offer more complex WooCommerce sales once you have some experience. Whether you’re a first-time store owner or long-time veteran, there’s always room to learn and improve!

Frequently asked questions

If you still have questions about how to run a sale in WooCommerce, this section will aim to answer them.

What types of sales can you run using WooCommerce?

WooCommerce enables you to offer multiple types of sales and discounts. Those include product-specific discounts, cart discounts, free shipping, coupons, and more. If you use extensions, you get access to more types of discounts, including referral coupons and private sales for subscribers.

How often should you run sales with WooCommerce?

This depends on your business and what types of discounts you plan on offering. At the very least, you might consider offering discounts around popular holidays.

Do I need premium plugins and extensions to run sales in WooCommerce?

WooCommerce offers built-in functionality to run sales and offer multiple types of discounts. If you want more options you can install free and premium plugins or extensions (or both). 

Does WooCommerce include sales reports?

WooCommerce includes a highly-detailed analytics and reporting system. This enables store owners to monitor their store’s activity and stay on top of sales while they’re running, so they can check on and refine performance.

Time to get to work on your first WooCommerce sale

Whether you’re targeting first-time buyers or loyal customers, discounts can help drive conversions. And with the right approach, you can run sales without sacrificing profits.

WooCommerce makes offering sales highly straightforward. In fact, you can run multiple types of promotions, depending on what your goal is. That includes offering product discounts, a flash sale coupon, personalized offers, and much more. Plus, if you’re looking for more sales options than WooCommerce provides by default, you can install extensions like Coupon Referral Program.

Now that you know how to put products on sale in WooCommerce, the possibilities are endless! In addition to all the built-in WooCommerce sales we discussed in this article, check out the WooCommerce extensions marketplace to find even more options.

11 Responses

  1. Syrehn
    May 12, 2016 at 4:41 pm #

    Speaking of discounts/coupons, I’d love to see an article on how Woo handles subscription renewals to give 50% off for a limited time and then how you swap it to to remove the 50% if x amount of time passes.

    From my understanding that’s not currently possible with Coupons/Memberships/Subscriptions.

    Colour me interested in that aspect. 🙂

  2. rebsy
    May 14, 2016 at 7:09 pm #

    Hi James, I don’t know if you stopped checking comments on the previous post but I wrote about an issue in a comment that a bunch of people are having. We’d really appreciate a response! Thank you!

    • Nicole Kohler
      May 16, 2016 at 6:20 am #

      Please open a support ticket if you haven’t already to receive help for your specific issue. As noted in the Storefront release post, blog comments are not the best way to receive help from our team due to different configurations, etc. 🙂

  3. Amelia Willson
    May 17, 2016 at 11:01 pm #

    WooCommerce is an awesome plugin! The flexibility when it comes to designing different types of sales and promos cannot be beat (the customer-email-exclusive discounts is a perfect example). We just featured you in a post on the HostGator blog of our top WordPress plugins for eCommerce, and you’re #1: http://www.hostgator.com/blog/2016/05/16/6-best-wordpress-plugins-for-ecommerce/ Thanks for being awesome!

  4. Manny Gaser
    May 26, 2016 at 7:09 pm #

    Woocommerce is a best e-commerce choice in 2016, since I switched to this system everything has become easier and immediate.
    Thanks Wootheme

  5. srinu
    June 9, 2016 at 12:54 pm #

    Hi all

    I need any plugin or script for woo commerce products have timer like 1 min 45 sec then it become 0 seconds below buy button have to active.

    Please help me

    • Nicole Kohler
      June 9, 2016 at 9:08 pm #

      Hello srinu, at the moment we don’t have any extensions like this, but you might be able to find some custom code or a similar solution offered by third party developers with a quick search.

      If this is something you’d like to see us add, please post it as an extension idea here: http://ideas.woocommerce.com/forums/133476-woocommerce/category/39721-category-extension-ideas

      We have some ideas contributed about a countdown for a sale ending, but not the buy button being delayed by a timer, so this is an interesting suggestion 🙂

  6. Kevin
    June 22, 2018 at 9:47 pm #

    What if some products could be buy one at 10$ or two for 15$ but only the one group, not anything else in stock?

  7. اسانس عطر
    June 23, 2018 at 9:38 pm #

    Woocommerce is a best e-commerce choice in 2016, since I switched to this system everything has become easier and immediate.
    Thank you

  8. kempamma
    July 10, 2018 at 8:59 am #

    I thought I should let you know about this company I came across. Right now, they are actively hiring people who know how to use Facebook, Twitter, Pinterest or Instagram.

    If you fit the profile, then you can make great money doing this, as is explained here:

    https://socialsalerep.com?hyden4128

    Click here to Reply or Forward

  9. دور کردن پشه
    July 10, 2018 at 2:34 pm #

    Woocommerce is a best e-commerce choice

Leave a reply