Documentation

Complete guide to installing, configuring, and using the Bulk Price Editor for WooCommerce plugin.

Getting Started

Bulk Price Editor for WooCommerce lets you update prices for unlimited products in one action. Filter the products you want to change, choose how to adjust their prices, preview the result, and apply the update — the plugin processes everything safely in the background.

Requirements

  • WordPress 6.2 or higher
  • WooCommerce 6.0 or higher (tested up to the latest release)
  • PHP 7.4 or higher

WooCommerce must be installed and active — the plugin will show a notice and stay inactive without it. The plugin is fully compatible with HPOS (High-Performance Order Storage), the block-based cart & checkout, and the new product editor.

Installation

  1. From the WooCommerce marketplace: purchase the plugin on woocommerce.com and install it via your WooCommerce.com subscription, or download the ZIP and upload it under Plugins → Add New → Upload Plugin.
  2. Free community version: install it directly from Plugins → Add New by searching for “Bulk Price Editor for WooCommerce”, or download it from wordpress.org.
  3. Activate the plugin. No configuration is needed — it is ready to use immediately.

Opening the editor

Go to WooCommerce → Bulk Price Editor in your WordPress admin. The page is available to administrators (users with the manage_options capability).

How It Works

The editor page is organized into three numbered widgets that mirror the workflow:

  1. Filter Products — select which products the update should affect.
  2. Edit Prices — choose the price modification method and enter the values.
  3. Preview and Apply changes — review the upcoming changes in the products table, then confirm.

The preview table refreshes automatically every time you change a filter or a price value, showing each product’s current price and the new price side by side (old → new, with the new value highlighted). When everything looks right, click Apply changes and confirm.

Important: applied price changes cannot be undone. Always review the preview carefully, and consider a quick database backup before very large updates.

Step 1: Filter Products

Filters are collapsible sections in the first widget. All active filters are combined — a product must match every filter you set to be included in the update. Sections that contain a value stay open automatically.

Included Products

Search and pick specific products and/or product categories to include.

  • Selecting a category also includes all of its subcategories.
  • Selecting a variable product includes the parent and all of its variations.
  • Individual variations can be selected directly in the product search.

Excluded Products

The mirror of the previous section: any products or categories you select here are removed from the result, even if they match the other filters. Exclusions win over inclusions.

Stock Status

Limit the update to products with a specific stock status: Any stock status (default), In stock, Out of stock, or On backorder.

Product Type

Choose which product types are affected: Simple product, Variable product, Product variation, and External product.

By default Simple, Variation and External are checked — variations are listed as individual rows so you can see and adjust each variation’s own price. See Variable Products and Variations for details.

Filter by SKU and Name

  • SKU contains — partial SKU match; enter the full SKU to match one exact product.
  • Product name contains — matches products whose title contains the entered text.

Filter by Product Attributes

One search field appears for every global product attribute in your store (e.g. Color, Size). Pick attribute terms to narrow the selection; conditions from different attributes are combined with AND.

Step 2: Edit Prices

The second widget offers several price modification methods as tabs. Only the active tab is applied. Every method has separate fields for the regular price and the sale price — leave a field empty to keep that price untouched.

Enter new prices

Replace prices with exact values. Enter a new regular price and/or a new sale price; the value is applied to every selected product. This is also the only method that can add a sale price to products that don’t have one yet.

Remove prices

Clear prices entirely. Choose what to remove: both regular and sale prices, regular price only, or sale price only. Removing the sale price is the quickest way to end a store-wide promotion.

Increase by percent / Decrease by percent

Adjust existing prices by a percentage (for example, increase all regular prices by 10%). Decreases never go below zero. Products that do not have the corresponding price are skipped — e.g. a percentage change to sale prices only affects products that already have a sale price.

Advanced Options — Round precision: the percentage methods can round results to a set number of decimal places. Enter 0 to round to whole units, 2 to round to cents, or leave blank to keep the exact calculated value.

Add flat amount / Subtract flat amount

Add or subtract a fixed amount from existing prices (for example, add $5.00 to every regular price). Subtraction never goes below zero, and products without the corresponding price are skipped.

Tiered Pricing

An extra tab that appears when the Tiered Pricing Table plugin is active — see Tiered Pricing Table Integration.

Step 3: Preview and Apply

The products table

The table shows every product matching your filters with the following columns: Image, Name (with SKU), Categories, Regular Price, Sale Price, Stock Status, Type, and Date.

  • As soon as a price modification is entered, the price columns switch to a preview: current price → new price, with the new value highlighted in yellow. Products whose price would not change (for example, no sale price to adjust) show their current price only.
  • Columns Name, Regular Price, Sale Price, Stock Status and Date are sortable — click a header to sort.
  • The table is paginated (15 products per page by default, following your “Products per page” screen option) and updates over AJAX without reloading the page.

The preview is calculated by the exact same code that later performs the update, so what you see in the preview is precisely what will be saved.

Applying changes

Click Apply changes. A confirmation dialog tells you how many products will be affected and reminds you that the action cannot be undone. Click Confirm to start the update.

The update always targets the full filtered set — not just the page you are currently viewing.

Background processing and progress

Products are processed in chunks of 100 using WooCommerce’s Action Scheduler, so even stores with tens of thousands of products are updated reliably without timeouts or server overload.

While an update is running, the editor page shows a progress screen with the number of processed products, a percentage bar, and two actions:

  • View queue — opens the Action Scheduler screen filtered to the plugin’s pending jobs.
  • Stop updating — cancels all remaining jobs. Products already processed keep their new prices; the rest remain unchanged.

The page refreshes automatically when the process completes, and a notification confirms how many products were updated.

Filter Templates

If you run the same kind of update regularly (for example, a monthly sale for a specific category), save the filter set as a template:

  • Save as template — saves the current filter values under a name of your choice.
  • Select template — opens the list of saved templates. Selecting one pre-fills all filters instantly.
  • Update template — while a template is active, adjust the filters and save the changes back to it.
  • Remove — deletes a template from the list.

Templates store filter values only (not price modifications) and are shared across all administrators of the site. The active template is part of the page URL, so you can bookmark a template for one-click access.

Variable Products and Variations

There are two ways to work with variable products:

  • Default (recommended): with the default product-type selection, each variation appears as its own row with its own prices — you see exactly what changes for every variation.
  • Via the parent: if you enable the “Variable product” type and a variable product matches your filters, the plugin automatically applies the price modification to all of its variations.

Note: a variable product’s row displays its price range, and for percentage/flat adjustments the preview arrow appears on the variation rows rather than on the parent row — the variations are still updated when you apply.

Tiered Pricing Table Integration

When the Tiered Pricing Table plugin is active, Bulk Price Editor adds a Tiered Pricing tab to the price modification methods and a Tiered Pricing column to the preview table.

Set New Tiers

Define a new set of tiered pricing rules — Fixed prices or Percentage discounts per quantity — and apply it to all filtered products at once. Add as many quantity tiers as you need (minimum quantity is 2). Leaving the builder empty removes tiered pricing from the selected products.

Update Existing by %

Scale all existing tiered prices by a percentage: positive values increase them, negative values decrease them. Fixed tier prices are recalculated directly; percentage discounts are adjusted and capped at 100%. Products without tiered pricing rules are left untouched.

The Tiered Pricing preview column shows each product’s current tier table next to the resulting tier table, so you can verify the outcome before applying. In this mode regular and sale prices are never modified — only the tiered pricing rules.

Tips & Troubleshooting

  • Back up before big updates. There is no undo. The preview shows exactly what will happen, but a database backup is cheap insurance before changing thousands of prices.
  • The update seems stuck. Background jobs run via Action Scheduler, which relies on site traffic/WP-Cron. Use the View queue button to inspect pending jobs under WooCommerce → Status → Scheduled Actions.
  • Prices didn’t change for some products. Percentage and flat methods skip products that don’t have the price being adjusted (most commonly: products without a sale price). Use Enter new prices to set prices on products that have none.
  • Sale price higher than regular price? The plugin applies the values you enter as-is. WooCommerce will not display a sale price that is not lower than the regular price, so double-check the preview when adjusting both.
  • Need help? Contact support — or open a ticket on the wp.org support forum if you use the free version.