How to calculate COGS for TikTok Shop
Your COGS per unit is everything you paid to get a unit ready to sell, divided by the units you can actually sell: supplier price, packaging, freight, duties, and shipping into your warehouse or FBT. It doesn’t include TikTok’s referral fee, affiliate commissions or fulfillment fees. TikTok deducts those in your settlement, so they’re counted already. Enter one purchase order below to get your landed cost per unit.
One purchase order
Anything that ships inside or on every unit.
Applied to the supplier cost. Use the rate on your customs entry, not a guess.
Inspection, customs broker, prep service, samples you paid for.
Damaged, defective or short-shipped units you can't return to the supplier.
Landed COGS per sellable unit
$5.50
37.5% above the supplier price. Use this number wherever a tool asks for COGS.
Where each unit’s cost comes from
- Supplier price
- $4.08
- Packaging & labels
- $0.36
- Freight from supplier
- $0.82
- Inbound to warehouse
- $0.24
Order total $2,695.00 ÷ 490 sellable units.
Why this is the one number TikTok can’t give you
TikTok’s settlement for an order is roughly: revenue, minus shipping, minus fees and tax. Everything TikTok charges you is already in it. What isn’t in it is what you paid for the product, because you never told TikTok. That’s why the seller dashboard can show GMV and payouts but never profit.
So on TikTok Shop, profit per unit = settlement per unit − COGS per unit. Settlement is TikTok’s number. COGS is yours, and it’s the one sellers most often get wrong. (See why your payout is less than your sales for everything that comes out of the settlement side.)
What goes in COGS, and what doesn’t
| Include in COGS | Leave out: already in your settlement or elsewhere |
|---|---|
| Supplier price per unit | TikTok referral fee |
| Packaging, labels, inserts, polybags | Affiliate / creator commission |
| Freight from the supplier | FBT fulfillment fee or your outbound shipping label |
| Duties, tariffs, customs broker fees | Ad spend (GMV Max, Spark Ads) |
| Inspection and prep services | Refunds and return costs |
| Shipping stock into your warehouse or FBT | Free samples to creators (track as marketing) |
| The cost of units that arrive unsellable | Software, rent, your salary (overhead) |
The test for each cost: would it exist if you had never listed the product on TikTok? Freight and duties would, so they’re COGS. A referral fee wouldn’t, so it isn’t.
Worked example: the $4 product that really costs $5.50
The calculator’s default order: 500 units at $4.00 from the supplier, $0.35 per unit in packaging, $400 freight, $120 to ship into the warehouse, and 2% of units unsellable on arrival.
- Supplier: 500 × $4.00 = $2,000
- Packaging: 500 × $0.35 = $175
- Freight + inbound: $400 + $120 = $520
- Order total: $2,695
- Sellable units: 500 × 98% = 490
- Landed COGS: $2,695 ÷ 490 = $5.50 per unit
That’s 37.5% above the $4.00 supplier price. Now the mistake this page exists to prevent: say you sell at $12 and, using the supplier price, work out $12 − $0.72 (6% referral) − $4.00 = $7.28 per unit before fulfillment and other costs. The real figure is $12 − $0.72 − $5.50 = $5.78. You’d be overstating that profit by 26% on every unit, and pricing, ad budgets and affiliate rates would all be set off the wrong number.
Why you divide by sellable units, not ordered units
Defective units still cost you money. If 10% of the order above arrives damaged and the supplier won’t credit it, you paid $2,695 for 450 units you can sell, so COGS is $5.99, not $5.50. Dividing by the 500 you ordered quietly writes those damaged units off as free. Put a realistic unsellable rate into the calculator; if you don’t know it, check your last few orders.
Cases that trip sellers up
- Bundles and multipacks. A bundle SKU’s COGS is the sum of its components’ landed costs plus any extra packaging. Don’t reuse the single-unit cost.
- A new batch at a new price. Every purchase order gets its own landed cost. A tariff change or a freight spike shows up here first, and it won’t show in your margins until you update the COGS you’re using.
- Returned units. A return you can resell goes back into stock at its original COGS. One you can’t resell is a loss on that order, not an increase to everyone else’s COGS.
- FBT inbound. Getting stock into an FBT warehouse is COGS (it’s part of making the unit sellable). The per-unit FBT fulfillment fee is not. The FBT fee calculator handles that side. If you’ve put inbound into COGS here, set its inbound field to zero so it isn’t counted twice.
Common questions
Does COGS include shipping on TikTok Shop?
Inbound shipping, yes: freight from your supplier and the cost of getting stock into your warehouse or FBT are part of what a sellable unit cost you. Outbound shipping to the customer, no. That's a fulfillment cost, and TikTok already deducts shipping and FBT fees in your settlement.
Should TikTok's referral fee or affiliate commission go in COGS?
No. They're selling costs, not product costs, and they already come out of your settlement before the money reaches you. If you add them to COGS as well, you count them twice and understate your profit.
How do I handle free samples sent to creators?
Keep them out of the per-unit COGS of the units you sell, and track them as a marketing cost for that SKU: the landed cost of each sample plus the postage to send it. Otherwise heavy sampling makes a product's cost look higher than it is, and the real question ('are samples paying for themselves?') never gets asked. Ask your accountant how to treat samples for tax.
What if my supplier price changes between orders?
Calculate landed COGS per purchase order, not once per product. Then either use the cost of the batch you're currently selling from, or take a weighted average across the batches in stock. Pick one method and stick to it: switching between them is how month-to-month margins start moving for no real reason.
Does TikTok Shop know my COGS?
No. TikTok's settlement records what the customer paid and what TikTok deducted: fees, shipping and tax. What you paid your supplier is never in that data, which is why TikTok can show you revenue and payout but not profit.
Use the number
Put your landed COGS into the break-even price calculator to find the lowest safe price, or the fee and profit calculator to check a price you already charge. More in the free seller tools.
COGS is the only number MarginReady asks you for. Enter it once per SKU and it’s subtracted from your actual settled TikTok Shop payouts to show real profit for every product.