Free calculator
Break landed cost into unit cost, inbound freight, duty and packaging, and see gross profit per unit and per month move as you type. No email, no gate, nothing leaves this page.
The calculator
The boxes start filled with an illustrative example, not a benchmark. Replace it with your own numbers.
What you pay your supplier or manufacturer, before it ships to you.
Getting the unit from the supplier to your warehouse, divided across the units in that shipment. Zero if it is negligible for your business.
Boxes, mailers, inserts. Not outbound shipping to the customer, that is a fulfilment cost, not a cost of the goods.
Leave at zero to see the per-unit numbers only.
Landed cost of goods, per unit
Gross profit is $23.50 a unit, a 58.8% gross margin. At 500 units a month that is $11,750 in gross profit before payment fees, shipping, or anything else.
landed COGS per unit = product cost + inbound freight + duty and tariff + packaging gross profit per unit = selling price - landed COGS per unit gross margin = gross profit per unit / selling price monthly COGS = landed COGS per unit * units sold monthly gross profit = gross profit per unit * units sold
This is landed cost, the sum of what it actually took to get one unit ready to sell, not just the supplier invoice. It excludes outbound shipping and payment processing on purpose: those scale with the order, not the unit, and belong in a contribution-margin view instead. That calculator is here.
See it on your own data Real numbers from your Shopify store, not a guess.
This is one landed cost, fixed at the moment you type it in, applied the same way to every unit. Two real problems live outside that: cost changes over time, and cost differing by SKU or variant.
On the first: a supplier price increase in March should value only orders from March onward at the new cost, not rewrite every past order's margin. One competitor in this category removed historical COGS entirely in a 2026 product change, so every past order is now valued at whatever the latest cost happens to be, and customers were told in advance that “those changes can affect past orders.” That is the exact failure mode a per-unit calculator like this one cannot avoid either, it only computes one cost for one moment.
Source: TrueProfit's own COGS migration notice, 2026.
Questions
Landed cost: what you pay your supplier, plus everything it takes to get one unit into your warehouse ready to sell, most commonly inbound freight and duty. It does not include outbound shipping to the customer, payment processing, or fulfilment labor, those scale with the order rather than the unit and belong in a contribution-margin view instead.
Primary product packaging, yes, if the product would not be sellable without it. Branded mailers or inserts used for outbound shipping are more commonly treated as a fulfilment cost rather than COGS, though practice varies. The honest rule is to be consistent about which bucket a cost lives in, not which bucket is technically correct.
It varies enormously by category. Beauty brands often clear gross margins in the high 60s to low 70s percent, apparel brands land anywhere from the low 40s to high 50s percent depending on the brand, and categories with expensive inputs or heavy per-unit freight can run well below that. Treat any single "good gross margin" number with suspicion, category is the dominant factor.
Yes, and this is where most simple calculators, including the one above, quietly go wrong. A supplier price increase should only affect orders placed after the increase, not rewrite the margin on everything sold before it. A single blended landed cost, applied the same way to every order regardless of date, is an approximation, not a ledger.
In a physical-goods business the two are usually treated as the same thing: the direct cost of the goods sold. Cost of revenue is the broader accounting term and, for a service or subscription business, can also include costs like hosting or support that have no equivalent in a physical-goods COGS calculation.
Next
Upstream captures cost at the date it took effect and values every order at the cost that was true on that order's date, per SKU, not one blended number applied everywhere. Import a CSV, connect your store's own cost field, or type it in once.