WooCommerce can automatically manage your product inventory. This allows you, for example, to specify how many pieces of a product are available, whether sold-out products may still be ordered, and when you want to be notified about low stock.
Additionally, you can give each product a SKU assign as a unique article number and determine which stock status is used in the shop.
If you are currently setting up your first product, you can find the entire process in the article Create first product in WooCommerce.
Briefly explained: If you activate inventory management and enter a stock level of 20 items, for example, WooCommerce can automatically reduce this stock with sales. You then do not have to manually adjust the inventory after every order.
Automatic or manual inventory management? #
WooCommerce basically distinguishes between quantity-based inventory management and a simple stock status.
At the quantity-based warehouse management do you specify a concrete number:
Product:
Coffee mug
Stock:
25 pieces
WooCommerce can automatically reduce this quantity upon sales.
Without quantity-based inventory management, on the other hand, you only specify the basic inventory status of the product, for example:
In stock
Out of stock
On backorder
In this case, WooCommerce does not display a specific quantity for the product.
Enable global inventory management #
For WooCommerce to automatically manage stock quantities, stock management must be enabled in the general settings.
To do this, open:
WooCommerce
→ Settings
→ Products
→ Inventory
Activate inventory management there.
This allows WooCommerce to manage stock levels for products and adjust them upon sales or corresponding inventory changes.
Note: If you do not need quantity-based inventory management, you do not necessarily have to enable it. WooCommerce can also manage products as in stock, out of stock, or on backorder based solely on their stock status.
Reserve stock for unpaid orders #
In the global warehouse settings, you will find the setting keep in stock or rather Hold Stock.
This is how you determine how long WooCommerce holds stock for unpaid orders with the status Payment pending should reserve.
This is important because a customer can reserve goods during the ordering process even though the payment has not yet been completed.
If the set time has expired and the order remains unpaid, WooCommerce can handle the pending order accordingly and release the reserved stock again.
Example: Only one piece of a product is left. A customer orders it, but does not complete the payment. Without a reasonable release mechanism, this item could remain unnecessarily blocked for other customers.
Which time frame makes sense for your shop depends, among other things, on the payment methods offered and your ordering process.
Low stock notifications #
WooCommerce can notify you by email when a product's stock is low or a product is sold out.
In the global warehouse settings, you can activate the corresponding notifications and enter a recipient address.
For such alerts to be useful, you should also set the thresholds for low and zero stock levels appropriately.
Low stock threshold #
The threshold determines at what quantity WooCommerce treats stock as low.
Example:
Low stock:
2
Current stock:
2
WooCommerce can then trigger a corresponding notification.
The global value generally applies to the products unless a specific threshold has been set for a product or variant.
For products with different replenishment lead times, an individual threshold can be useful.
An item that you can reorder within a day may require a different warning threshold than a product with a delivery time of several weeks.
Out-of-stock threshold„ #
WooCommerce also has a threshold at which a product is treated as out of stock.
The default settings may be sufficient for many stores. The crucial point is that you understand these thresholds influence when WooCommerce treats stock as low or out of stock.
Hide out of stock products in the catalog #
In the inventory settings, you can determine whether products without stock should be hidden in the shop catalog.
Whether that makes sense depends on your product range.
A temporarily sold-out product can still be of interest if it will be available again soon. For products that are permanently out of stock, a different approach may be useful.
Hiding a product from product overviews is also not the same as deleting the product.
How much inventory should customers see? #
WooCommerce can display the available quantity on the product page in different ways.
You can generally determine whether the available quantity:
- always displayed,
- is only displayed when stock is low or
- is not displayed as a specific quantity at all.
Depending on the setting, a customer might see, for example:
12 in stock
or a notification only when stock is low, such as:
Only 2 left in stock
You can also completely hide the specific quantity without having to disable the internal inventory management.
Important: Internal inventory management and the visible stock quantity are two different things. For example, WooCommerce can manage 37 items internally, even though the customer does not see this number.
Manage stock level of a single product #
Open the desired product in the WordPress backend and go to the section Product data to Inventory.
Here you can find the product-specific stock settings.
Depending on your configuration, a simple product includes, among other things:
- SKU
- Warehouse management
- Inventory stock or quantity
- Backorders
- Low stock threshold
- individual sale
What is a SKU? #
SKU stands for Stock Keeping Unit. This is a unique identifier or article number for a product or variant.
For example:
Product:
Classic coffee mug, white
SKU:
TASSE-CLASSIC-WEISS
A SKU helps you uniquely identify products internally.
This is particularly helpful when:
- there are many similar products available,
- you work with internal article numbers,
- products have different variants,
- you want to search for products by their article number.
A SKU must be unique #
WooCommerce requires that a used SKU be unique within the shop.
Therefore, two different products or variants should not have the same SKU.
A transparent scheme can simplify administration.
For example:
Classic T-Shirt / Black / S
TS-CLASSIC-SCHWARZ-S
Classic T-Shirt / Black / M
TS-CLASSIC-SCHWARZ-M
Classic T-Shirt / Black / L
TS-CLASSIC-SCHWARZ-L
You can determine the structure of your numbering system yourself. Above all, it is important that it remains unique and comprehensible to you in the long term.
Tip: If you already use article numbers from an enterprise resource planning system, a supplier system, or another existing process, you should first check which numbering system you want to continue using before inventing new SKUs in WooCommerce.
Does every product need an SKU? #
No. The SKU is generally optional in WooCommerce.
In a very small shop, a product can therefore also be sold without an SKU.
However, as the product range grows, unique article numbers often become more helpful.
Manage inventory levels automatically #
If you activate inventory management for a product, you can enter a specific quantity.
Example:
Inventory management:
Activated
Quantity:
25
WooCommerce uses this number as available stock and can reduce it automatically upon sales.
If, for example, one piece is sold, it can become:
Before ordering:
25
Sold quantity:
1
New stock:
24
In the case of refunds or inventory restorations, WooCommerce can also increase the inventory again depending on the action performed.
What happens when stock reaches zero? #
When WooCommerce manages stock levels and the available stock reaches the respective limit, the product can be treated as out of stock.
Whether customers can still order afterwards depends in particular on your settings for Backorders ab.
What is a backorder? #
Backorders – often also referred to as Backorders referred to as – allow customers to order a product even though there is currently not enough stock available.
When inventory management is enabled, WooCommerce offers three basic options:
| Setting | Meaning |
|---|---|
| Disallow | If the product is out of stock, it cannot be placed on backorder. |
| Allow, but notify customers | The order is possible and WooCommerce notifies the customer of the backorder. |
| Allow | Backorders are possible without the product being highlighted to the customer as a standard delivery delay. |
Important: Only allow backorders if you can actually restock and ship the product. The technical capability in WooCommerce does not indicate whether and when you will be able to procure the goods.
Backorder is not the same as pre-order #
A backorder basically means that a product may be ordered despite a current lack of or insufficient inventory.
This does not automatically mean a complete pre-order system with special release dates, separate payment rules, or other advanced features.
Additional WooCommerce extensions may be required for such functions.
Individual sale – only one piece per order #
With the option Sold individually or rather Sold individually Can you prevent a customer from purchasing multiple pieces of the same product within a single order?.
If the function is enabled, the customer can only purchase one unit of the product in this order.
This can be useful, for example, in the case of certain unique items.
Important: This setting does not mean that a customer can only buy the product once in their lifetime. WooCommerce uses this to limit the quantity within a single order. A customer can generally place another order.
Stock status without automatic quantity management #
If you do not want to manage a specific inventory quantity for a product, you can work with the stock status instead.
WooCommerce knows the basic states in the product editor:
| Stock status | Meaning |
|---|---|
| In stock | The product is considered available. |
| Out of stock | The product is considered unavailable and cannot be purchased normally. |
| On backorder | The product can be ordered even though it is currently not normally in stock. |
This type of management can be useful, for example, if you do not want to keep exact stock quantities in WooCommerce.
Stock status is not the same as a delivery time #
The WooCommerce stock status mainly answers the question of whether a product is available or orderable.
It is not automatically a complete delivery time specification such as:
Delivery time: 2–3 business days
Such detailed delivery time information may require additional settings or extensions depending on the shop, theme, country, and desired function.
Do not confuse therefore Stock status and Delivery time not with each other.
Stock for variable products #
At variable products inventory management becomes more extensive.
WooCommerce can manage inventory at the level of the entire variable product or at the level of individual variations.
For a T-shirt, management per variant often makes sense:
S / Black
Stock: 8
M / Black
Stock: 14
L / Black
Stock: 5
XL / Black
Stock: 0
If a T-shirt in M / Black is sold, WooCommerce reduces the stock of this variation. The stock levels of S, L, or XL remain unaffected.
When is inventory per variant useful? #
Manage inventory per variant if the individual versions are actually stored separately.
Typical examples are:
- Clothing sizes
- Shoe sizes
- Color variants with separate inventory
- different storage capacities
- other physically separated versions
Each variant can also be assigned its own SKU.
Use parent stock for variable product #
Not every variant necessarily requires a separate inventory.
WooCommerce also supports inventory management at the parent variable product level.
This can make sense if different selection options access the same actual inventory.
Which variant of inventory management is correct therefore depends on how your products are actually stored and sold in reality.
The decisive factor is the actual physical inventory: If you physically own five black and eight white items, you should not artificially treat these quantities as a shared inventory. If, on the other hand, all choices actually access the exact same existing items, a shared inventory can make sense.
Set low stock threshold for a single product #
When inventory management is enabled, WooCommerce allows an individual threshold for low stock.
With this, you can override the global threshold for a specific product.
Example:
Global threshold:
2 units
Product A:
2 units
Product B with long replenishment lead time:
10 units
This allows you to be warned earlier with product B.
Variants can also be given their own threshold.
Check stock levels in WooCommerce Analytics #
WooCommerce offers under Analytics → Inventory a stock report.
There you can check the current stock status and quantity of products and variants.
The report can be filtered by the following stock conditions, among others:
- out of stock
- low stock
- In stock
- on backorder
The table contains, among other things, product or variant, SKU, stock status, and inventory quantity.
We will cover the further evaluation options of WooCommerce in detail later in the article WooCommerce Analytics: Evaluate sales, orders, and revenue.
Why is my inventory incorrect? #
If inventory does not meet expectations, you should not simply correct some number, but first check how the discrepancy arose.
Possible causes can include, for example:
- automatic inventory management is not activated for the product,
- Inventory for a variable product is managed at a different level than expected.,
- a variant has its own inventory,
- an order still reserves inventory,
- an order has been cancelled or refunded,
- the inventory was changed manually,
- an import or an external merchandise management system modifies inventory data,
- An additional plugin interferes with the inventory management.
For order issues, we will cover systematic troubleshooting later in the article as well. Systematically finding WooCommerce issues: status, logs, and error diagnostics.
Do not maintain inventory uncontrollably in multiple locations at the same time #
When WooCommerce is connected to an inventory management system, a point of sale system, a marketplace, or another external solution, inventory may be synchronized automatically.
In this case, you should know which system is the leading source of inventory.
For example, if an employee manually sets the inventory to 20 in WooCommerce and an external ERP system transmits an inventory of 17 shortly after, the manual change can be overwritten.
Important: For connected third-party systems, the exact behavior depends on the respective integration. WooCommerce alone cannot determine which external system is allowed to modify your inventory data.
Check inventory changes after an order #
Once you have set up the inventory management, you should not rely on everything being configured correctly automatically.
Place a test order before launching your shop.
For example, if there were ten items available beforehand and you order one item, then check whether the inventory was handled accordingly.
Before the test:
10 pieces
Test order:
1 piece
Expected inventory after the corresponding inventory reduction:
9 pieces
Please note that the timing of a stock reduction may depend on the order and payment status or the process used.
How to fully control a new shop before launch is explained in the article Testing a WooCommerce shop before launch: Test order and checklist.
What should I check for a new product? #
Before a stocked product is published, you should at least check:
- Is the SKU correct and unique?
- Should WooCommerce manage a specific stock quantity?
- Is the entered opening balance correct?
- Are backorders allowed or forbidden?
- Is an individual threshold necessary?
- Should only one piece be able to be purchased per order?
- Is the inventory managed at the correct level for variants?
For physical products, you should also Shipping settings control. Inventory and shipping are two separate areas: A product can be in stock and still have no suitable shipping method for the customer.
What's next? #
That concludes the most important basics regarding products: product creation, product types, variants, categories and attributes, product images, and inventory.
The next section is about what happens when a customer actually wants to buy these products.
Therefore, we will explain next Cart and Checkout in WooCommerce and take a look at how a product moves through the shop from the shopping cart to submitting the order.
Summary #
WooCommerce can automatically manage inventory levels based on specific quantities. Alternatively, you can also mark products as in stock, out of stock, or on backorder using only a stock status.
The SKU is an optional, but unique article number for a product or a variant. Especially with larger product ranges, a consistent SKU system makes management easier.
Backorders allow you to determine whether customers can order products even when they are out of stock. Only enable this option if the goods can actually be restocked.
For variable products, WooCommerce can also manage stock separately for individual variations. For example, different sizes or colors can each have their own stock and SKU.
Additionally, you can set warning thresholds for low stock and let WooCommerce notify you before important products are completely sold out.