Bulk editing guides

Shopify discounts vs. bulk price edits: which one to use

Updated August 2026

A price is going down. That much is decided. What is not decided is how: a discount code typed at checkout, an automatic discount that applies itself, or simply editing the product’s price. All three end with the customer paying less. They do not end with the same data, the same customer behavior, or the same amount of cleanup afterward.

The real tradeoff: reporting accuracy vs. simplicity

A discount code or automatic discount creates a distinct record. Shopify’s Analytics > Reports > Discounts breaks down revenue by discount, so you can answer “how much did the SPRING15 code actually cost us, and how much revenue did it bring in” months later. Editing the price directly leaves no such record: the product simply cost less during that window. Your order data shows the lower price as the price, full stop.

A direct price edit wins on simplicity. There is no code to create, promote, misspell, or leak to people who were never meant to get it. The customer does not have to do anything to get the lower price, which matters for permanent changes where a code would be a strange extra step forever. There is also less to maintain afterward: a discount has a start date, an end date, usage limits, and eligible products that someone has to remember exist and eventually turn off. A price is just a price until you change it again.

When a discount code is the right tool

Discounts live under Discounts in your Shopify admin. Click Create discount and choose a type: amount off products, amount off order, buy X get Y, or free shipping, then set the eligibility (all customers, a specific segment, or a code) and the active dates. Shopify tracks performance for each discount separately, so a code you create today can be compared against next quarter’s code without any extra setup.

When changing the price directly is the right tool

From Products, select the products you want to reprice and choose Bulk edit to change price and compare-at price cell by cell, or use a bulk-edit app when the change is a calculation (a flat amount off, a percentage off, or rounding every price to a .99 ending) across a large selection.

The hybrid: compare-at price plus a direct price edit

Most merchants actually want a third thing: the lower price with no checkout code required, but still visibly marked as a sale. That is what the compare-at price field is for. Set compare-at to the product’s current price, then lower the price itself, and most themes render a strikethrough “$49.99 $39.99” automatically. No discount code exists anywhere in this picture: it is two direct price edits that happen to look like a sale. Our guide to bulk editing compare-at prices covers the ordering trap and how to clean the field up afterward.

The risk of training customers to wait for a sale

Discount codes that show up often, especially the same code reused or a near-constant rotation of “10% off” banners, teach repeat customers to stop buying at full price and wait for the next one. A direct price change does not carry the same signal: a lower listed price simply reads as the current price, not as an event to time a purchase around. If you are correcting margin or matching a competitor, a quiet price edit avoids reinforcing that habit. Save the visible discount, whether it is a code or a compare-at sale display, for promotions you actually want customers anticipating, and reach for a quiet direct price edit everywhere else: a cost correction, a competitor match, or a permanent reprice does not need a banner announcing it.

Running a direct price change safely

  1. Filter to the exact products (collection, tag, vendor, product type) and confirm the match count before changing anything.
  2. Preview every value. Whether you are setting a fixed price, adjusting by an amount or percentage, or rounding to an ending like .99, check the before and after for each variant, not just a sample.
  3. Set compare-at in the right order if you want the visible sale display: capture the current price into compare-at first, then lower the price. Reversing the order captures the already-discounted price and the sale display disappears.
  4. Schedule the start, and the end if it is temporary, in your store’s timezone. Our guide to scheduling a Shopify sale that ends itself covers the two failure modes: prices that never change when the sale starts, and sale prices that never change back.
  5. Verify every write. A bulk change touches hundreds of products through hundreds of individual API calls; some can fail on rate limits or locked variants. Re-read each price after writing it rather than trusting that no error message means every product changed.
  6. Revert from journaled originals, not a reverse calculation. When the change ends, restore each product’s recorded original price. Recomputing the “undo” as a second percentage or amount adjustment drifts from the true original through rounding.

Doing this with SureEdit

Discount codes and automatic discounts are not something SureEdit touches at all: creating, scheduling, or reporting on them still happens entirely in Shopify’s own Discounts admin, and that is the right place for it.

Where SureEdit fits is the direct-price-edit branch of this decision. It bulk-edits price (set a fixed value, adjust by an amount or percentage, or round to an ending like .99) and compare-at price (set or clear) across a filtered product selection, previews the before and after value for every variant, re-reads each write from Shopify to verify it actually landed with itemized retry for anything that failed, and journals the original values so a change is one click to undo. On the Growth and Pro plans (7-day free trial), the same edit can be scheduled with a start time and an optional auto-revert end time, so a temporary price change closes itself out without a manual follow-up edit. The free plan covers up to 50 products per edit.

WRITEREADMATCH ✓

Run this edit with proof, not hope

SureEdit handles the direct price edit side of this decision: bulk price and compare-at changes, verified writes, one-click undo, and scheduled auto-revert on Growth and Pro. Discount codes stay in Shopify's own Discounts admin.

Install free on Shopify

FAQ

Does changing prices directly hurt my sales reporting?
Direct price edits show as your product’s actual price with no separate discount line item, which is fine for permanent changes but can understate “savings” messaging that a compare-at price provides.

Can I schedule a price change to revert automatically?
Yes, on SureEdit’s Growth and Pro plans you can schedule an edit with an auto-revert end time so prices return to their original values without manual follow-up.