Guides

How to bulk edit prices on Shopify (safely)

Shopify's bulk editor, the CSV import, and when each is enough — plus the three things neither does: preview the blast radius, verify the result, undo cleanly.

Updated September 24, 2026 · Verified against Shopify's help documentation on that date.

There are three ways to change many prices on Shopify at once, and two of them are built in. Use the built-in ones when they fit; they are free and there is nothing to install. This guide shows exactly how each works, where each one is genuinely enough, and the three things neither of them does that will eventually cost you a morning: showing the full set of changes before you commit, checking that the changes actually landed, and putting things back when they didn't.

The three ways at a glance

Bulk editor CSV export / import Bulk editing app
Best for A page of products, one-off changes Large catalogs, spreadsheet-native teams Repeated or scheduled changes, anything you'd want to undo
Percent / amount math You do it You do it in the spreadsheet Built in, previewed
Shows every change before committing Only what's on screen Only what's in your file Yes, old → new per variant, with the true total
Checks the result afterwards No No Depends on the app; VerifiedBulk re-reads every item
Undo No Re-import an older file (overwrites everything in it) Depends on the app; VerifiedBulk restores from a snapshot and flags conflicts
Cost Free Free Free tier / paid

Way 1: Shopify's bulk editor

This is the right tool more often than app vendors admit. If you can see the products you want to change on one screen and you'll check the result yourself, use it.

  1. In Shopify admin, go to Products.
  2. Tick the checkbox on each product you want to change (or the header checkbox to select the page).
  3. Click Bulk edit.
  4. Click Columns and select Price. Add Compare-at price if you're setting a strikethrough.
  5. Type the new price into each cell. To apply one value down a column, type it once and drag the fill handle. Arrow keys move between cells; Shift-click selects a range.
  6. Click Save. The editor validates the values and shows an error if any is invalid; nothing is saved until you fix it.

For variants of a single product, open the product, and in the Variants section tick the variants and click Bulk edit. Same editor, same behavior.

Where it suffices. A one-time change to a set you can eyeball. A price fix on twenty products. Anything where "I'll open a few afterwards and look" is a real plan.

Where it runs out.

Way 2: export, edit in a spreadsheet, import

For big catalogs and teams that live in spreadsheets, the CSV path is the built-in way to change hundreds or thousands of prices.

Export.

  1. Go to Products and click Export.
  2. Choose what to export: Current page, All products, Selected products, or Products matching your search and filters. The last one is the useful one: filter to the collection or vendor first.
  3. Choose CSV for Excel, Numbers, or other spreadsheet programs, then export. If any product has more than 100 variants, the file is emailed instead of downloaded.

Edit. Open the file. Prices are per row (one row per variant) in the Price column, with Compare-at price and Cost per item beside it. Change the numbers. Don't sort the sheet, don't delete columns you aren't changing, don't clear cells you don't mean to clear.

Import.

  1. Go to Products and click Import, then Add file and pick your CSV (15 MB maximum).
  2. Tick Overwrite products with matching handles. Without it, the import creates new products instead of updating existing ones.
  3. Preview the import, then confirm.

Where it suffices. Large one-time repricing where you want the whole catalog in a spreadsheet anyway. Supplier price lists that arrive as spreadsheets. Teams with a review step in the sheet.

Where it runs out, in Shopify's own words.

The gap, and where an app belongs

Neither built-in path gives you three things, and you notice their absence in the same order every time.

A preview of exactly what will change. Not the rows on screen or in your file, but every variant that matches your filter, with its current price and its new price, and the real total. The number is the first safety check: if "20% off the winter collection" previews 146 variants and you expected 40, you fix the filter before anything happens.

Verification after the write. Bulk operations against an API fail in pieces. A request is accepted, most rows change, a few don't, and the tool reports success because the request was accepted. Merchants describe exactly this in reviews of tools in this category: an edit that "said it did but really only changed half". The only honest definition of done is re-reading every product afterwards and comparing it to what you intended. That is what VerifiedBulk does after every job, and the report itemizes the three outcomes: verified, failed (the write didn't stick), or conflicted (the value changed outside the job and was not overwritten).

An undo that respects what happened since. Snapshot the old values before writing, and on undo restore each item only if it is still exactly as your edit left it. If someone hand-fixed a price after your edit, that item is flagged with all three values instead of being silently overwritten.

The workflow is the same loop as the built-in tools, with the missing pieces in the middle: filter by collection, tag, vendor, type, title, price range, or status; choose Price and an operation (set, increase or decrease by percent or amount); read the preview; run; read the report; undo from the report if you need to.

Try a verified price edit on the App Store

A safety checklist that works with any of the three

If the price change is a sale with an end date, the ending is its own problem: see how to schedule a sale that reverts itself. If what you're changing is product data rather than prices — care notes, materials, flags your theme reads — the same three tools apply with sharper edges in how to bulk edit product metafields. And if a bulk edit ever goes badly enough that you consider deleting and re-creating products, read what's recoverable after a delete first.

Frequently asked

Does Shopify's bulk editor have an undo?
No. Once you click Save the previous values are gone unless you wrote them down or exported a CSV first. Archived products and the Archived tab don't help here — that's for whole products, not values.
Can I change prices by a percentage in Shopify?
Not in the bulk editor or the CSV import — both take final numbers. You do the math in a spreadsheet or use an app that offers percent and amount operations with a preview of the resulting prices.
Will a CSV import delete anything?
It can. With Overwrite products with matching handles checked, a blank cell in a non-required column overwrites the existing value with blank. A file sorted in a spreadsheet can lose image links. Changing option values recreates variant IDs. Shopify's own import docs list all three.
How do I change prices for one collection only?
Filter the Products list by collection (or export Products that match your search and filters), then bulk edit or import that set. Apps let you pick the collection as a filter and show the count before you commit.
Product price or variant price?
Prices live on variants. A product with one variant looks like it has a product price, but it's still the variant's price. Any bulk edit of prices is a per-variant edit, which is why previews and verification should list variants, not products.