If you run an operating store, you already know compare at price is just an anchor — the crossed-out number that makes the real price look like a deal. It does not change what the customer pays. That is exactly why it is the safest pricing lever you have, and exactly why bulk-editing it goes wrong: the admin treats it like any other price column, so one stray drag or one blank CSV cell can rewrite the number you actually charge.
This guide covers both methods precisely, then does the thing every other walkthrough skips — the per-order profit math that tells you when a compare at price is free margin and when a "sale" is eating your ad budget. It's part of our Shopify store operations guide.
How compare at price actually behaves
Before you touch a bulk tool, get the rule straight. To put a product on sale, you set the Compare-at price field to the original price, and Shopify's own documentation is blunt about the trigger: "Make sure that the value in the Compare-at price field is higher than the value in the Price field to display the sale price" (Shopify Help Center — Setting sale prices).
Compare at price lives at the variant level, not the product level. A tee with three sizes and two colors is six variants, each with its own Variant Compare At Price — which is why bulk editing matters the moment your catalog grows past a handful of SKUs.
There's a trap here that bites POD stores specifically. If you only set a compare at price on some variants of a product, the collection page may refuse to show the sale at all — Shopify notes that inconsistent compare-at pricing across variants stops the sale from displaying even when individual product pages look right (Shopify Help Center — Setting sale prices). Bulk editing is how you keep every variant consistent in one pass.
Method 1: the in-admin bulk editor
This is the fastest route for a visible batch — say the fifty designs in one collection you want to anchor for a weekend promo.
Go to Products, tick the checkboxes next to the products you want, and click Bulk edit. The admin opens a spreadsheet-style grid where each column is a property. If the Compare-at price column isn't showing, click Columns and add it (Shopify Help Center — Bulk editing).
Type your compare at price into the first cell, then drag the cell's corner down to copy it across every selected row — the same fill-handle gesture you'd use in Excel. Click Save. If any rows error out (a missing SKU, a validation rule), fix them and save again (Shopify Help Center — Bulk editing).
Two practical limits. First, the editor loads products onto the screen, so it's painful past a few hundred rows — Shopify's own guidance is to switch to CSV for larger volumes (Shopify Help Center — Bulk editing). Second, use Chrome, Firefox, or Safari: the bulk editor encodes its state in the URL and can throw errors in Microsoft Edge when it hits that browser's URL-length limit (Shopify Help Center — Bulk editing). The same editor handles bulk inventory edits, so the muscle memory transfers.
Method 2: CSV export, edit, re-import
For thousands of variants, formula-driven anchors (compare at price = price × a fixed multiple), or changes you want to review offline, the CSV is the workhorse.
From Products, click Export, and open the file in Excel or Google Sheets. The column you want is Variant Compare At Price. Edit it, save as CSV, and re-import. A product with many variants spans one row per variant, so a spreadsheet formula can set every anchor in seconds.
Mind the ceilings. Your product CSV can't exceed fifteen megabytes, so split a huge catalog into multiple files (Shopify Help Center — Using CSV files). And a Shopify product can hold up to two thousand forty-eight variants, far more than the old hundred-variant cap most sellers remember (Shopify Help Center — Adding variants).
The CSV gotcha that wipes real prices
Here's the one that costs operators a Saturday. When you re-import with "Overwrite products with matching handles" on, a column that is present but blank overwrites the existing value with blank, while a column that is missing entirely is left untouched (Shopify Help Center — Using CSV files).
So if you keep the Variant Price column in your file "to be safe" but leave cells empty, you can zero out the prices you meant to protect while you were only trying to edit compare at price. The fix is counterintuitive: delete the columns you aren't changing entirely, rather than blanking them.
And there's no undo. Shopify states that a CSV import can't be canceled once it begins and there's no import history (Shopify Help Center — Importing products with a CSV file). The working rule every operator learns once: keep the pre-import export file, because re-importing it is your only recovery path. If you're also touching imagery in the same pass, read how to bulk edit images in Shopify first.
The margin math every other guide skips
A compare at price is free margin — it changes perception, not the number the customer pays. The mistake is treating it as interchangeable with a real discount. Here's why that distinction is worth money.
Say you run a POD store doing 340 orders a month at a $31 average order value, with $2,800 a month in Meta spend. Take one $28 tee: your Printify blank plus print lands at $12.50, and say payment processing takes about $1.10 on the order. Per-order profit before ads is $28 − $12.50 − $1.10 = $14.40.
Now the ads. $2,800 ÷ 340 orders ≈ $8.24 of ad cost per order, so your real net is $14.40 − $8.24 = $6.16 per order. That's the number that keeps the lights on.
Set a compare at price of $35 on that tee and the storefront shows "$35 → $28." You just made the price look like a 20% deal and your net stayed $6.16 — the anchor cost you nothing. Now run an actual 20%-off code instead. The customer pays $22.40, your cost and fee barely move, so profit before ads falls to about $22.40 − $12.50 − $0.95 = $8.95, and after the same $8.24 of ads you net $0.71 per order.
Same "20% off" in the shopper's eyes; one leaves $6.16 on the table and one leaves 71 cents. Multiply across 340 orders and that's the difference between roughly $2,090 and $240 of monthly contribution. Bulk-editing compare at price lets you look promotional on the whole catalog without touching the price that feeds that math — which is why it's the first lever to reach for, not the last. When you do run a genuine markdown, make sure it shows as a discount on the product page so the anchor and the real price both read correctly.
Where Victor comes in
Setting anchors in bulk is easy; knowing which anchor protects margin is the hard part, and it's where sellers burn hours in spreadsheets. PodVector AI's Victor is an AI employee that works across your live Shopify store, Meta Ads, Google Ads, Printify, Printful, Gelato, and Klaviyo, and computes true per-order profit from that connected data.
So instead of guessing, you can ask Victor which products carry enough margin to survive a real discount versus which should stay on a compare-at anchor only. Every write action — including price and compare-at edits — is approval-gated, so Victor drafts the change and you approve before anything touches the store. Victor is not a dashboard; it's an operator that does the work and waits for your sign-off.
Put Victor to work on your pricing
FAQs
Does bulk editing compare at price change what my customers pay?
No. Compare at price is only the strikethrough anchor; the Price field is what the customer is charged. Editing compare at price in bulk changes how promotional your catalog looks without changing your realized revenue — which is exactly why it's a low-risk lever. The risk comes from accidentally editing the Price column in the same pass.
Why isn't my sale showing after I set a compare at price?
Two usual causes. The compare at price must be higher than the actual price for the sale to display (Shopify Help Center — Setting sale prices), and if only some variants of a product have a compare at price, the collection page may suppress the sale entirely. Bulk-editing every variant to a consistent anchor fixes the second case.
Admin bulk editor or CSV — which should I use?
Use the in-admin bulk editor when you can see the batch on one or two screens — up to a few hundred products — because it's immediate and needs no file handling. Switch to CSV when you're editing thousands of variants, applying a formula-based anchor, or want to review changes offline before committing (Shopify Help Center — Bulk editing).
How do I remove a compare at price in bulk?
Clear the Variant Compare At Price cells — delete the values in the bulk editor and save, or blank that specific column in a CSV import with overwrite on. Just be careful that blanking a column in CSV only affects compare at price; leaving other price columns present-but-blank will wipe those too (Shopify Help Center — Using CSV files).
Can I undo a bulk compare at price import if I make a mistake?
Not through Shopify. CSV imports can't be canceled once started and there's no import history (Shopify Help Center — Importing products with a CSV file). Your only recovery is re-importing the export file you saved before the change, so always keep that pre-import copy.
Is there a limit on how many variants I can compare-at-price at once?
A single product supports up to two thousand forty-eight variants (Shopify Help Center — Adding variants), and the product CSV itself is capped at fifteen megabytes per file (Shopify Help Center — Using CSV files). Large POD catalogs hit the file-size ceiling before the variant one, so split your export into multiple CSVs when it gets big.