---
title: How Bulk Price Changes Are Calculated (Order of Operations)
description: The fixed order in which WooCommerce bulk price changes are calculated when you fill several fields, with a worked example.
url: "https://wpfactory.com/docs/bulk-price-editor-order-of-operations/"
updated: "2026-09-25"
category: References
---

# How Bulk Price Changes Are Calculated (Order of Operations)

## How bulk price changes are calculated

When you fill more than one field in the [Price Update: Bulk Pricing Editor for WooCommerce](https://wpfactory.com/item/bulk-price-editor-for-woocommerce/), they do not run in the order you typed them. They run in a fixed sequence. This reference lists that sequence so you can predict the result of any combination.

### The sequence

For each product price, the tool starts from the current price of the chosen type and applies these steps in order. A step is skipped when its field is left at the default.

| Step | Field | Effect on the running price |
| --- | --- | --- |
| 1 | Direct price | If set, replaces the price entirely with this value, ignoring the original. |
| 2 | Percentage | price = price + (price x percentage / 100). |
| 3 | Multiply | price = price x multiplier. |
| 4 | Divide (Pro) | price = price / divisor. |
| 5 | Add | price = price + amount. |
| 6 | Subtract (Pro) | price = price - amount. |
| 7 | Rounding function (Pro) | Rounds to the nearest coefficient (Round, Floor, or Ceil). |
| 8 | Store decimals | Rounds to your WooCommerce price decimal setting (usually 2). |
| 9 | "Pretty prices" (Pro) | Shapes the price to a charm ending when the threshold is above 0. |
| 10 | Safety clamp | A negative result is set to 0. |

### Worked example

Original price 100, with Percentage = 10 and Add = 5:

1. Percentage: 100 + (100 x 10 / 100) = 110.
2. Add: 110 + 5 = 115.

The percentage is calculated on the original 100, not on 105, because Percentage runs before Add.

### Things to watch

- **Direct price overrides everything before it,** but Percentage, Multiply, and the rest still run on top of the direct value. To set a plain flat price, use Direct price alone.
- **Multiply must stay above 0.** A Multiply of 0 aborts the whole run, so no field takes effect.
- **Percentage and Multiply overlap.** Percentage of -20 and Multiply of 0.8 both mean "20% off". Use one, not both, or they stack.
- **Rounding and pretty prices are separate.** Rounding snaps to a step; pretty prices then shapes the ending. If both are on, pretty prices has the final say.

### The takeaway

For predictable results, change one thing per run and use **Preview prices** to confirm. See the guide on editing WooCommerce prices in bulk for the full workflow.

Related articles

- [Tips for Safe Bulk Price Changes](https://wpfactory.com/docs/bulk-price-converter-additional-tips/)
- [Prices Not Updating After a Bulk Change](https://wpfactory.com/docs/price-update-issues/)
- [Bulk Price Editor: Developer Hooks and Filters Reference](https://wpfactory.com/docs/bulk-price-editor-hooks-filters/)
- [How to Bulk Edit Prices by Category, Tag, or Attribute](https://wpfactory.com/docs/woocommerce-bulk-edit-prices-by-category-tag-attribute/)
- [How to Edit WooCommerce Prices in Bulk (Step by Step)](https://wpfactory.com/docs/use-bulk-price-editor/)
