Skip to content
Nesvo Nesvo
Analytics Email engine Pricing FAQ Guides Install
← Back to nesvo.co

Cost of goods (COGS) on Shopify

You can't know your profit without knowing what your products cost you. That number is your cost of goods sold, or COGS. Here's how to record it in Shopify and keep it accurate.

What COGS means

Cost of goods sold is what you paid for the units you actually sold in a period. It isn't what you paid for everything on your shelves, only what went out the door.

Sell 50 mugs that cost you $6 each, and your COGS for those sales is $300.

Where it lives in Shopify

Every product variant has a Cost per item field, on the product's page in your Shopify admin, under pricing. Shopify uses it to show the margin on that variant.

A few things to know:

  • Set it on each variant. A large and a small size often cost different amounts.
  • Include what it costs to get the product to you, like freight and packaging, if you want your profit to be real.
  • Update it when your costs change. An old cost makes your margin look better or worse than it is.

The common problems

Costs left blank. If some variants have no cost, any profit figure only covers the ones that do. A blank should never be read as zero.

Costs not showing in reports. Merchants often find costs they entered don't appear in older sales. A cost change typically doesn't rewrite the cost on orders that were already placed.

Too many products to fill in by hand. A spreadsheet upload, or a default margin for products you haven't costed yet, gets you a usable number while you fill in the rest.

Getting from COGS to profit

COGS gives you gross profit: sales minus product costs. Take off shipping and payment fees as well, and you have net profit. See our guide to calculating your real profit.

Let it fill itself in

Nesvo is a free Shopify app that imports your Shopify cost per item automatically, and gives you three other ways to fill gaps:

  • type a cost in, and apply it to every variant of a product at once;
  • upload a spreadsheet of variant IDs and costs;
  • set a default margin for any variant with no cost yet.

A cost you enter yourself always wins over the imported one, and a sync never overwrites it. Each order keeps the cost it was sold at, so changing a cost later doesn't rewrite past profit. Nesvo treats a blank or $0 cost as unknown, shows how many items are still missing, and uses your costs to calculate gross margin and net profit across your store.

Install Nesvo on the Shopify App Store →

Nesvo Nesvo
Guides Privacy Policy Terms of Service Data Processing Agreement support@nesvo.co

© 2026 Nesvo