In plain words
Cost of goods sold is the cost of the units you sold: the manufacturer's price, or what it cost you to make them. For an offer it is counted per unit shipped, including units given away. A free mug has a cost of goods even though the customer paid nothing for it.
Unit costs change over time, with new suppliers, new batches, freight rates and currencies. The cost that matters for an order is the one that applied when the order was placed, and not today's.
Formula
- COGS for an order = Σ (units of each product × that product's unit cost)
Worked example
A three-bag order costs $36.00 in goods: three units at $12.00. With a $4.00 mug as a gift, the engine puts its cost of goods at $40.00, and the customer still pays $102.00.
The example order
A $40.00 bag of coffee, shipped free, every cost counted
2 declared kinds cost nothing on this option
| Step | Grain | Amount |
|---|---|---|
| Revenue | – | $40.00 |
| cogs | per unit | −$12.00 |
| pick_pack | per order | −$1.18 |
| packaging | per parcel | −$0.50 |
| shipping | per parcel | −$7.50 |
| processing_fixed | per order | −$0.30 |
| refunds | percent | −$2.00 |
| processing | percent | −$1.16 |
| Gross margin | – | $15.36 |
| 2 kinds costing nothing | – | $0.00 |
Computed by the margin engine in Offer Suite's own code, in whole cents, from a $40.00 bag of coffee with a $12.00 unit cost.
COGS is not landed cost, and not the whole cost of an order
Many brands enter only the supplier's price. Landed cost adds what it took to get the unit to your warehouse: inbound freight, duties and brokerage. And an order costs more than its goods, because fulfilment, shipping and fees come on top. Treating COGS as the order's cost is the gross-margin mistake.
Using it
Enter unit costs with the date they apply from, and correct them by adding a new dated cost, not by overwriting the old one. Include every unit that ships: gifts, samples, inserts and the free item in a buy-one-get-one. A gift with no unit cost entered makes every order it rides on look more profitable than it is.
In Offer Suite
Offer Suite keeps costs as a ledger. Every cost row has the date it applies from, and rows are appended and never edited. An order is costed at the ledger as it stood for the order's date, and that basis is frozen with the order.
Source: Offer Suite's cost ledger (decision 57).