WooCommerce version 2.4 is slated for release this week, and it includes several changes designed to simplify set up and usage for new stores, along with making WooCommerce more performant and scalable.

WooCommerce 2.4 Review: Overview

One main goal of WooCommerce 2.4 is to make it easier to launch a new store. To help with this, the new version includes an on-boarding wizard that runs on new WooCommerce sites, and will help the user configure basic settings like shipping rates within a few minutes. This helps the user to understand what the settings influence on the site, and speeds up the WooCommerce set up. It also leads new users into product creation to guide them into the rest of store setup.

Shipping rates have been drastically simplified so that new users can quickly create both domestic and international flat rates. These rates can be on a per-order or per-item basis, and are easy for beginners to configure while still allowing advanced users to adjust rates as needed.

Aside from on-boarding, WooCommerce 2.4 aims to improve integrations, performance, and scalability. The REST API learned some new tricks, such as the ability to generate multiple API keys for a user instead of limiting users to one set. A visual endpoint has also been added to make it easier for apps to connect to WooCommerce, especially from mobile devices.

Finally, performance was improved, especially in relationship to product variations. Shops with large numbers of variations per product will benefit from variations loaded via AJAX in both the admin and frontend. Custom AJAX endpoints also make it faster to perform AJAX requests, such as adding an item to the cart, to improve site performance.

This WooCommerce 2.4 review will take a detailed look at each new feature or change in comparison to WooCommerce 2.3.

WooCommerce 2.4 Review: On-boarding

Some very large changes have been put in place for on-boarding new WooCommerce users in version 2.4. WooCommerce now uses an on-boarding wizard and embeds WooCommerce 101 videos into the WordPress dashboard to help out when users get stuck.

On-boarding Wizard

When you first install WooCommerce in a new store, you can use the on-boarding wizard to easily configure settings, tax rates, and shipping rates. Using the on-boarding wizard in my test store cut down on the time I typically spend configuring a new WooCommerce installation, as it prompts the user to set up all basic settings, such as store location and tax / shipping information.

WooCommerce 2.4 Review: set up wizard

WC 2.4 Set up Wizard

First, you can let it install pages. This was previously an admin alert that you could click to install pages, but making this part of the wizard makes it easier for users to understand that (1) it’s necessary for the setup process, and (2) gives them more information on what the pages are for.

WooCommerce 2.4 Review: wizard step 2

Wizard step 2

Next, shop owners can set up their store location, currency, and default units rather than doing this under both “General” and “Product” settings.

WooCommerce 2.4 Review: wizard step 3

Wizard Step 3

Shipping and tax set up are optional. I liked that the shipping rate set up was easy to understand, and it showed me how formulas work to charge both per order and per item rates. For example, my international rate here is automatically entered in my settings as 6.99 + .99 * [qty].

WooCommerce 2.4 Review: wizard step 4

Wizard Step 4

However, this won’t set up shipping locales in your settings. For example, I have rates for both Flat Rate and International shipping already created via this wizard, but I need to visit my settings to set “United States” for flat rate, and all other countries for international shipping. You also can’t change free shipping settings in the wizard.

Update: The wizard now automatically sets up shipping locales if you have domestic and international rates defined. ????

Opting to charge tax also helpfully prompts you to import the tax rates for your base location to expedite setup. I would have preferred to see separate steps for shipping and tax to be able to set up locales or free shipping, but this step is still helpful.

Next, you’ll be prompted to set up your payment methods. Merchants can enable PayPal or any other default payment method (except Simplify Commerce, as this requires an account).

WooCommerce 2.4 Review: wizard step 5

Wizard Step 5

Finally, merchants can end the set up or opt to then create a product.

WooCommerce 2.4 Review: wizard step 6

Wizard Step 6

If merchants opt to create a product, they’ll be guided through product creation with admin tips so they can understand different types of products and product data.

WooCommerce 2.4 Review: product page wizard

Wizard: Product Page

WooCommerce 101 videos

Another change geared towards helping new users in the inclusion of the WooCommerce 101 video series from within the WordPress dashboard. Each of these videos is embedded in the “Help” tab in the top screen links.

WooCommerce 2.4 Review: 2.4 help tabs

WC 2.4 Help Tabs

The embedded video changes based on which page the user is viewing. For example, while viewing a particular settings page, the correct video for those settings will be shown.

WooCommerce 2.4 Review: help settings

WC 2.4 Help tab: settings

WooCommerce 2.4 Review: Settings

WooCommerce 2.4 also makes some minor changes to the WooCommerce settings. First, a new option is added for the “Default Customer Address” setting: Geolocate (with caching support). Users are guaranteed to see the correct pricing and tax rates for their location, as the cache will be cleared for new visitors, ensuring they don’t see a cached result from a different country.

WooCommerce 2.4 Review: 2.4 geolocation

WC 2.4 Geolocation

Checkout settings also have a new option: “Calculate coupon discounts sequentially”. Previously, discounts were all calculated on the order subtotal or total. Now, they can be stacked so that a new discount will come off the already discounted price, not the original order price.

This is disabled by default, so you may want to enable it if you allow multiple discounts to be used on an order (especially if you use percentage-based discounts).

WooCommerce 2.4 Review: 2.3 checkout settings

WC 2.3 Checkout Settings

WooCommerce 2.4 Review: 2.4 checkout settings

WC 2.4 Checkout Settings

WooCommerce 2.4 Review: API Changes

Some changes in the REST API are related to settings, while others change generating or managing keys and API access.

First, API settings used to be spread between “General” settings and the “Webhooks” section of the settings. They’re now all grouped under one “API” section of the WooCommerce settings:

WooCommerce 2.3 API settings

WC 2.3 API settings

WooCommerce 2.4 Review: API settings

WC 2.4 API settings

API keys are also generated and stored here rather than in the user’s profile. This allows users to have multiple API keys rather than one set, letting you revoke a particular set of keys as needed. For example, you could revoke keys used for an inventory integration while keeping keys active that connect the WooCommerce iOS app.

Keys are also only shown when generated, and can be copied or a QR code can be used to connect your store to another app or service via the REST API.

WooCommerce 2.4 Review: api create key

WC 2.4: Create API key

The API also now features a visual authentication endpoint that can be used by apps that integrate with WooCommerce. Rather than requiring you to enter your secret / key for the API or scan a QR code, apps can use the visual endpoint to let you approve access, and generate API credentials behind the scenes.

WooCommerce 2.4 Review: visual auth

WC 2.4 API visual auth

This should make it easier for mobile or web apps to connect to your store (should they use this endpoint).

WooCommerce 2.4 Review: Payment Methods & Checkout

Payment method settings and the checkout process haven’t changed much in WooCommerce 2.4, but there are a couple of refinements to note.

It’s now more obvious that users can drag and drop payment methods to adjust the way they’re displayed at checkout, and the name of the method will now link to its settings.

WooCommerce 2.4 Review: 2.3 payment methods

WC 2.3 payment methods

WooCommerce 2.4 Review: 2.4 payment methods

WC 2.4 payment methods

The checkout also features one change: the country field is no longer listed first, but is instead listed after some generic fields that will always be needed for each country. The address fields (which depend on country) are still after the country selection.

WooCommerce 2.4 Review: 2.3 checkout

WC 2.3 Checkout

WooCommerce 2.4 Review: checkout

WC 2.4 Checkout

WooCommerce 2.4 Review: Shipping Methods

The core flat rate and international rate shipping methods have been greatly simplified in WooCommerce 2.4. Shipping classes are now hidden by default, and costs can be calculated using a flat rate (i.e., $3.99) or a formula (i.e., $1.25*[qty]) to support per-order and per-item shipping.

WooCommerce 2.4 Review: 2.3 flat rate shipping

WC 2.3 Flat Rate Shipping

WooCommerce 2.4 Review: flat rate shipping

WC 2.4 Flat Rate Shipping

Shipping classes are only displayed if they’re being used, and will be added below flat rates. The shipping class costs can also accept formulas that use quantity, item costs, and fees.

WooCommerce 2.4 Review: shipping classes

WC 2.4 Shipping Classes

International Flat Rate shipping is simplified as well, and can accept costs or formulas just like regular flat rate shipping.

WooCommerce 2.4 Review: 2.3 international shipping

WC 2.3 International Shipping

WooCommerce 2.4 Review: international shipping

WC 2.4 international shipping

Finally, re-ordering shipping methods for the checkout display is more obvious, and selection priorities can be set rather than a single default.

Previously, you could set a default method, but this may not have been available to the customer (i.e., flat rate for US customers wouldn’t have been the default internationally). When this happened, you couldn’t have a “fallback”, so something like free shipping or another method would become the new default. Selection priorities let you assign a numerical priority instead of a default to determine which shipping methods should be defaults over others. Start priorities with a 1 for your desired default, then count upwards from there to set fallbacks.

WooCommerce 2.4 Review: 2.3 shipping methods

WC 2.3 shipping methods

WooCommerce 2.4 Review: 2.4 shipping methods

WC 2.4 shipping methods

WooCommerce 2.4 Review: Product Variations

The product variations interface benefitted from large changes in WooCommerce 2.4 as well. Shops with hundreds of variations historically had a hard time using variations, as pages could take a long time to load.

The way variations are loaded has now changed, as they’re created and edited via AJAX if you have more than 20 variants for a products. Variations are also paginated in batches of 10 to make using them more manageable (though you can change the number per page easily with this snippet).

WooCommerce 2.4 Review:  2.3 variations

WC 2.3 Variations

WooCommerce 2.4 Review: 2.4 variations

WC 2.4 variations

Some buttons, such as the “Link Variations” button, have been removed in favor of adding these options to the dropdown menu.

WooCommerce 2.4 Review:  2.3 create variations

WC 2.3 create variations

WooCommerce 2.4 Review:  create variations

WC 2.4 create variations

Variations will also be loaded via AJAX on the frontend of your site if there are more than 20 variations for a given product.

Most of the changes related to variations are behind the scenes, but they’ve made variations faster and more performant as your store scales.

WooCommerce 2.4 Review: Other Notes

Emails got a tiny bit of love in WooCommerce 2.4 as well. Email templates have also been updated to improve compatibility with Outlook, and an “order refunded” email has been added to notify customers of a refunded order (status changes to refunded).

WooCommerce 2.4 Review: refunded email

WC 2.4 Refunded email

WooCommerce 2.4 Review: For Developers

First, developers building apps or other platforms that integrate with WooCommerce will be interested in the API changes in version 2.4 we mentioned previously. The visual authentication endpoint is a great tool for making connections to WooCommerce sites extremely easy. Using this connection method is also easier for a user to understand, as they can see what they’re giving permission for and approve or deny it, rather than copy and paste keys from their site without really understanding what’s going on.

There are also a few API wrappers available in different languages to make integrating with the WooCommerce API easier.

The changes to variations are important to developers, as loading variations via AJAX can change how plugins need to add data or fields to product variations.

WooCommerce 2.4 also introduces custom AJAX endpoints, which make it more performant for AJAX requests. The version 2.4 beta announcement had a good summary of why these were added:

Custom AJAX Endpoints have been introduced to improve loading times on the frontend during events such as adding to cart. Previously, admin-ajax.php (the standard WordPress ajax endpoint) was used but this had the disadvantage of loading the entire WP admin just to make a request. The custom endpoints work around this.

The entire admin no longer needs to be loaded for an AJAX request, making these requests faster and more scalable.

Developers should also be aware of some template changes in version 2.4, namely the content-product_cat.php template (and some email templates have minor styling changes). If you’ve overridden these templates, you need to make sure that you’re updating your versions. A new /cart/proceed-to-checkout-button.php template was added as well.

WooCommerce 2.4 Review: Summary

WooCommerce has made some significant steps towards improving the experience for new users, and the on-boarding wizard helps to guide new shop managers into the WooCommerce settings and usage. While the on-boarding wizard didn’t address all of the settings I needed to change in my test shop, it did help speed up my typical installation process, and I like that it includes detail so that new users can understand why pages are being inserted or how shipping rates work.

I was a bit shocked by the shipping rate changes at first, but I think that new users will find them much easier to understand rather than the old system of a base rate + add on rates. They give new users an easy setup, but still let advanced users calculate more complex rates.

The performance changes for variations and AJAX requests were much needed for stores with large numbers of product variations, and the API changes were also a nice refinement. The ability to have multiple keys per user will be very helpful as more apps and services integrate with the WooCommerce REST API, making it easier for users to manage the access across different applications.

These are all nice evolutionary changes that both help new WooCommerce stores get up and running, and help established WooCommerce shops in terms of performance, scale, and integrations.

Note: This post may contain affiliate links, which means we get a commission from the plugin, theme, or service provider if you choose to purchase. Regardless of this, we are committed to providing high quality, unbiased resources. Have more questions? See our affiliate policy. You can use the plain links below if you prefer that we not receive a referral commission:

Posted by Beka Rice

Beka Rice manages the direction of Sell with WP content and writes or edits most of our articles to share her interests in eCommerce. Or she just writes as an excuse to spend more time jamming out to anything from The Clash to Lady Gaga. Who knows.


  1. However, this won’t set up shipping locales in your settings. For example, I have rates for both Flat Rate and International shipping already created via this wizard, but I need to visit my settings to set “United States” for flat rate, and all other countries for international shipping.

    Looking at this today – may be an oversight on my part 🙂

    1. Nice, wanted to see if it was overlooked or intended to work that way but had a bug before raising an issue 🙂

    2. @mike saw this changed on a test site I just set up to use US for flat rate, all other countries for international — very slick 😀

  2. Really useful overview – thanks Beka! Ready to upgrade to 2.4.1 with confidence.

    1. You’re welcome! Glad it was useful 🙂

  3. This sounds like it’s way easier to work with variations – my clients have always had trouble. Do you know if updating from 2.3x to 2.4 is seamless with respect to existing products and variations?

    One client in particular has a lot of variations on their products, and I don’t want to re-do them all if they’re wiped out (of course I’ll back up before the upgrade, but still…) Just a little paranoid when I go to click the Update button….


    1. Hey Rob, I haven’t seen any issues myself. It looks like there were a couple issues that have been patched as of WooCommerce 2.4.2 and that you need to be sure that you run the upgrade routine: https://woocommerce.wordpress.com/

Comments are closed.