Nexus Logic SystemsShopify apps

Bulk update Cost per item in Shopify without losing your averages

Updated · By Senoussi, developer of True COGS at Nexus Logic Systems

Short answer

Shopify gives you two bulk tools: the bulk editor, and the Cost per item column of a product CSV. Both overwrite the field. Past orders keep their old cost, and anything that was averaging your costs loses its place unless the value you import is your current average. When you move from another system, import its current weighted-average cost per variant as the opening cost, after the quantities are in Shopify, then let each new delivery average from there.

Shopify's two bulk tools

  1. Bulk editor: select products in the admin, choose bulk edit, add the Cost per item column, and type over the values.
  2. Product CSV: export your products, fill the Cost per item column, and import the file. Shopify Help names this column for adding costs in bulk.

Both write a single number per variant. Neither knows what you paid on which delivery.

What a bulk change does

Effects of overwriting Cost per item in bulk, from Shopify Help, read 4 November 2026.
WhatEffect
Orders already takenUnchanged. The cost was recorded on each order when it was created.
New ordersCosted at the value you imported
Month-end inventory value reportValues every unit on hand at the value you imported
An app that averages your costsIts average and Shopify's field now disagree, unless you imported the app's own average

Typing your latest supplier price over every variant is the common mistake. It applies one price to stock bought at several prices. See why Cost per item is wrong.

Moving costs from another system

Stores leaving Stocky, Finale Inventory, Cin7 or a spreadsheet usually have a running average for each variant. That average is your opening cost. The order matters:

  1. Quantities first. Make Shopify's on-hand quantities match your count. A costing app values the units Shopify holds.
  2. Then the opening cost: one current weighted-average cost per variant, matched by SKU or barcode. Import it as a starting value, not as a new delivery, so the units are not counted twice.
  3. Then receive normally. Each new delivery averages with the opening cost.
  4. Keep the old system's export. Stocky's purchase-order history can also be imported with its dates; see exporting Stocky cost history.

A worked example

One variant moved from another system. Checked to the cent.
UnitsCost per unitValue
Opening stock and average from the old system240$12.35$2,964.00
First delivery after the move100$13.00$1,300.00
New weighted average340$12.54$4,264.00

If you had imported the last supplier price, $13.00, as the opening cost, the 240 older units would be valued $156.00 too high, and every sale until they were gone would show a margin that is too low.

Importing into True COGS

  • Bring in costs from a file (from Missing costs or Waiting): a CSV with one cost per variant, matched by variant ID, SKU, barcode or title. Each cost is recorded as your opening average for the quantity Shopify holds. It is not a delivery and it changes no quantities.
  • Import your purchase history (Settings, More tools): purchase orders exported from Stocky, each on its own date.
  • Imported costs never count toward your plan's limit of variants with a cost on record.
  • Cost Guard lists any later change to Cost per item made by a bulk edit, an import or another app, with the previous value, so you can put it back or keep Shopify's number.

Questions merchants ask

How do I bulk update Cost per item in Shopify?

Use the bulk editor with the Cost per item column, or export your products to CSV, fill the Cost per item column and import the file.

Does a bulk cost change affect past orders?

No. Shopify records the cost on each order when it is created, so past orders keep the cost they had.

Which cost should I import when moving from another inventory system?

Each variant's current weighted-average cost from the old system, after Shopify's quantities match your count. Then let new deliveries average from it.

Should I import my latest supplier price as the cost?

Only for variants with no older stock. Otherwise the latest price is applied to units bought at other prices, and stock value and margins drift.

Can I import opening costs without changing my quantities?

In True COGS, yes. A cost file sets the opening average for the quantity Shopify already holds; it is not recorded as a delivery and changes no quantities.

What happens if someone bulk edits Cost per item later?

Shopify takes the new value. True COGS's Cost Guard lists the change with the previous value, so you can restore it or keep Shopify's number.

Can I bring Stocky cost history into another app?

True COGS imports purchase orders exported from Stocky, each on its own date, as your cost history.

Try True COGS free. True COGS is an inventory costing app for Shopify by Nexus Logic Systems. It records the price you paid on every delivery (a received purchase order or a transfer), with its share of freight and duty on paid plans, keeps every price with its date, and writes your moving weighted average cost, or FIFO cost on a paid plan, to Shopify's Cost per item. It is free for up to 25 variants with a cost on record; paid plans start at $29 a month or $290 a year.

Install from the App Store

Sources