Filter exactly the right products, change their prices by a percentage, a flat amount, a formula
like {regular_price} * 0.8
— or set new ones. Preview every change before it
happens, schedule it for later, and revert it in one click if you need to.
| Product | Regular Price |
|---|---|
| Classic Hoodie | $45.00 →$49.50 |
| Canvas Tote Bag | $18.00 →$19.80 |
| Wool Beanie — Gray | $22.00 →$24.20 |
Whatever the reason for the price change — do it once, for the whole catalog, in minutes.
Decrease every price by 20% in one go — or only a category, brand, or stock status.
Schedule the discount for Friday evening and set the automatic revert for Monday morning — no reminders, no second session.
Remove all sale prices with one action when the campaign is over — or undo the whole update from the History tab.
A supplier raised prices? Add 5% to their categories — or reprice straight from cost with {cost} * 1.4.
Set sale prices at 80% of each product's own regular price — even for products that never had one.
Only products between $10 and $50? Filter by regular or sale price range and leave the rest untouched.
Set exact new prices for a filtered set of products — by SKU, name, or attribute.
Round calculated prices to .99 or .95 endings, whole units, or clean decimals — on every price method.
Create, update, or remove quantity discounts across the catalog (Tiered Pricing Table).
Three simple steps — no spreadsheets, no CSV exports, no editing products one by one.
Powerful filtering options let you select exactly the right products — nothing more, nothing less.
Reusable filter templates
Save any filter set as a template and re-apply it for recurring price updates in one click.
Enter a percent by which to decrease the prices of the selected products.
Pick a modification method and enter the values. Regular and sale prices are adjusted independently — leave a field empty to keep that price untouched.
{regular_price} * 0.8 or {cost} * 1.4The products table updates instantly and shows every upcoming change as current → new. Nothing is saved until you confirm.
If the new prices look good, click “Apply changes” — done. And if they turn out wrong after all, revert the whole update from the History tab.
| Name | Regular Price ↓ |
|---|---|
| Linen Shirt SKU: LNS-004 Price history (3) |
$59.00 → $50.15 |
| Denim Jacket SKU: DNJ-011 |
$120.00 → $102.00 |
| Rain Boots SKU: RNB-023 |
$75.00 → $63.75 |
This action will affect 1,248 products. You will be able to revert it from the History tab.
Every product gets its own result: write a formula once and it's calculated from each product's current values. Set sale prices as a share of the regular price — even for products that never had one — or price straight from cost.
{regular_price},
{sale_price},
{price}, and
{cost} from WooCommerce Cost of Goodsmax({regular_price} * 0.7, 9.99) gives 30% off, but never below $9.99Before prices change, the plugin stores each product's previous prices. Every bulk update lands in the History tab with exactly what it did — and a Revert button that puts the old prices back in one click.
| Date | Change | Source |
|---|---|---|
| Aug 31, 11:48 | Regular: $55 → $59 | Manual edit |
| Aug 26, 16:05 | Regular: $49 → $55 | REST API |
| Aug 18, 09:30 | Sale: $39 → — | Bulk update #174 |
| Aug 7, 10:12 | Regular: $45 → $49 | Manual edit |
A manual edit, a CSV import, the REST API, another plugin, or a bulk update — every change to a product's regular or sale price is recorded with the date, the source, and the user. The answer to “why is this $45?” is one click away.
Real screenshots of the plugin, not mockups. Pick a step below — or open the live demo and click around yourself.
A sandbox store with every feature unlocked. Nothing to install.
Everything is designed to update thousands of products safely and without slowing your store down.
Updates run in the background in chunks of 100 products via Action Scheduler, so there is no limit on how many products you can update at once.
The preview table is computed by the same code that performs the update — what you see is exactly what you get after applying.
Every update stores the previous prices. Revert it from the History tab whenever you need to — and revert the revert to redo it.
Run an update at a chosen date and time, and let the previous prices come back automatically when the sale should end.
A log of every regular and sale price change from any source — manual, import, API or bulk update — with its date, source and user, on the product screen.
Save filters — and the price modification with them — as a named job, and re-run or schedule it in one click for recurring updates.
Download the preview with current and new prices for review or approval, and the before/after snapshot of any past update.
Set or clear WooCommerce sale start and end dates for all selected products together with the prices — no more product-by-product scheduling.
Run saved jobs, preview them with a dry run, list the history and revert updates from the command line — ideal for cron-driven recurring changes.
Update variations individually or through their parent product — and every filter, from brands to featured status, matches variations through their parent automatically.
A live progress screen shows processed vs. total products. You can view the background queue or stop the update at any time.
HPOS compatible, works with the latest WooCommerce, uses the official WooCommerce API for every price change — caches and lookup tables stay in sync.
Manage quantity discounts at catalog scale: update, create, or remove tiered prices for thousands of products in one action.
Define fixed prices or percentage discounts per quantity once — and apply them to every filtered product at the same time.
Raise or lower all current tiered prices at once — positive or negative, with discounts safely capped.
See each product's current and resulting tier table next to each other before anything is saved.
Don't have it yet? Learn more at tiered-pricing.com
| 10+ | $18.00 |
| 50+ | $16.00 |
| 100+ | $14.00 |
| 10+ | $19.80 |
| 50+ | $17.60 |
| 100+ | $15.40 |
Instant delivery & secure checkout by Freemius. Prefer the marketplace? Get it on WooCommerce.com — or try the free version on wp.org.
Yes! Bulk Price Editor allows you to update prices for simple and variable products. You can target individual variations directly, or select a variable product and the plugin will update every variation automatically.
No. The plugin works with chunks of 100 products, ensuring smooth performance and preventing server overload, even when updating thousands of products at once.
There is no limit! Thanks to Action Scheduler, the plugin can process bulk updates for an unlimited number of products efficiently.
Yes — use the "Update by formula" method and enter {regular_price} * 0.8 in the sale price field. Each product gets a sale price at 80% of its own regular price, including products that had no sale price before.
Yes — if your store tracks cost with WooCommerce Cost of Goods (or a Cost of Goods plugin), the formula variable {cost} is available: {cost} * 1.4 sets every price at cost plus 40%. Products without cost data are left unchanged.
Yes. Before an update changes anything, the plugin stores each product's previous prices. Every update is listed in the History tab with a Revert button that restores the old prices — and sale dates — in one click. A revert can be reverted too, and every update's before/after snapshot can be downloaded as CSV.
Yes. In the confirmation dialog choose "Schedule for later" and pick the date and time. You can also set an automatic revert time, so a sale starts and ends on its own. Scheduled updates are listed in the Scheduled tab, where they can be canceled until they run.
Yes. Price change tracking records every change to a product's regular or sale price — manual edits, CSV imports, the REST API, other plugins, and bulk updates — with the date, source and user. A "Price history" link next to the price fields on the product edit screen shows the log; you can turn tracking off in the plugin's Settings tab.
No. Only the regular and sale prices you target are updated (and tiered price rules, if you use the Tiered Pricing integration). Every change goes through the official WooCommerce API, so price caches and lookup tables stay in sync.
Yes — a free community version is available on wordpress.org. The premium version is sold here and on the WooCommerce marketplace.
One action instead of hours of manual edits — and every update can be reverted. 14-day money-back guarantee.