Most pages that rank for "variable cost of goods sold" stop at a textbook definition and a bakery flour example. That's fine if you're studying for an exam. It's useless when you already run a store, pay three suppliers, and need to know whether that $31 order actually made money.
This article is for the operator. You already have sales history and ad spend. The question isn't "what is a variable cost" — it's "which of my costs are variable COGS, which aren't, and what does the split do to my real per-order profit." Let's draw the lines precisely.
What counts as variable cost of goods sold
Cost of goods sold is what it costs to produce and deliver the thing you sold. The variable part of that is the portion that scales one-for-one with unit volume: zero orders, zero cost; one more order, one more unit of cost.
For a store holding inventory, variable COGS is the wholesale unit cost plus inbound freight. For a print-on-demand store, it's cleaner, because you don't buy stock up front:
- Product cost — what Printify, Printful, or Gelato charges you to produce the item.
- Supplier shipping — what the supplier charges to ship that specific unit.
That's the core of your variable COGS. In classic retail, cost of goods sold often runs around 60% of the selling price, according to AccountingCoach, which is why it dominates the P&L — and why mis-labeling it wrecks your margin math. POD sellers usually land lower than 60% at the item level, but the principle holds: this is your single biggest variable line.
Variable COGS vs. fixed costs vs. variable operating expenses
Here's where the ranking pages go quiet, and where operators lose money. Not every cost that "varies" is COGS, and not every variable cost is production. Three buckets:
| Cost | Bucket | Behavior |
|---|---|---|
| Supplier product cost | Variable COGS | Scales per order |
| Supplier shipping | Variable COGS | Scales per order |
| Payment processing fee | Variable operating expense | Scales per order, but it's a selling cost, not production |
| Ad spend (Meta, Google) | Variable operating expense | Scales with volume, but acquires the sale — not COGS |
| Platform subscription | Fixed | Same whether you ship 10 or 1,000 |
| Design apps, email tool | Fixed | Same regardless of volume |
The numbers above are categories, not figures — the point is the bucket, not a price. Two orders of the same product can carry different ad costs and the same COGS. That's the tell: COGS is tied to the unit; operating expenses are tied to running the business.
Why does this matter? Because gross margin uses COGS only. If you dump ad spend and processing fees into "cost of goods," your gross margin looks terrible and your pricing decisions get skewed. If you forget those variable operating expenses entirely, your "profit" is a fantasy. You need both lines, kept separate. Our cluster guide to ecommerce ops economics walks through how these buckets interact across the whole store.
The formula, and a worked per-order example
The formula is simple:
Total variable COGS = variable cost per unit × units sold
The value is in the per-order breakdown. Say your store runs 340 orders a month at a $31 average order value, with $2,800 a month in Meta spend. Take one order of a tee:
- Revenue: $31.00
- Product cost to Printify: $12.00
- Supplier shipping: $4.75
- Variable COGS = $12.00 + $4.75 = $16.75
So your gross profit on that order is $31.00 − $16.75 = $14.25, a gross margin of about 46%. That's the number variable COGS actually drives.
Now layer the variable operating expenses — the ones that aren't COGS but still come out per order. Say your processor takes 2.9% + $0.30, so $0.90 + $0.30 = $1.20. Ad spend per order is $2,800 ÷ 340 = $8.24.
Contribution per order = $14.25 − $1.20 − $8.24 = $4.81.
Finally spread your fixed costs. Say platform plus apps run you a flat sum that works out to about $0.35 per order at this volume: $4.81 − $0.35 = $4.46 net per order. Multiply by 340 and that's roughly $1,500 in monthly profit — on $10,540 of revenue. That whole chain starts with getting variable COGS right.
Why the split decides your real profit
Change one input and watch what moves. Suppose your supplier raises the product cost by $2, from $12.00 to $14.00. Variable COGS per order goes to $18.75, gross profit drops to $12.25, and your contribution falls from $4.81 to $2.81 — a 42% cut in per-order profit from a single $2 supplier change.
That sensitivity is the whole reason to isolate variable COGS. A fixed cost increase hurts once; a variable COGS increase hurts on every order, forever, scaled by your volume. When a supplier edits a price or you switch between Printify and Gelato for a product, that's not a rounding error — it's a direct hit to contribution margin that compounds across hundreds of orders.
It also reframes pricing. Your floor price isn't COGS — it's COGS plus the variable operating expenses that each sale drags in. Price above variable COGS but below your true variable cost, and every order loses money while your top-line revenue grows. For how this flows into your books, see recording cost of goods sold.
The variable COGS traps POD sellers miss
Three things make POD variable COGS sneakier than a stocked retailer's.
No restock means refunds eat full COGS. When you refund a stocked item, it comes back and re-enters inventory — you lose shipping, not the whole product. A printed item can't be restocked, so a refund means you eat the entire $16.75 variable COGS and the refund. Your effective variable cost per order is higher than the sticker once you fold in your refund rate.
Reprints are supplier-covered — but only inside a window. Printify and Printful both cover a free reprint or refund for defects and confirmed carrier loss reported within 30 days of delivery, per Printify's refund and returns policy and Printful's return policy. Miss the window and the reprint becomes a second full unit of variable COGS out of your pocket.
Blended averages hide product-level reality. A store-wide "COGS is 54% of revenue" number is comfortable and wrong. One product might run 48% while a heavier, pricier-to-ship item runs 63%. Scale the wrong SKU and your margin erodes even as orders climb. You need variable COGS per product, not per store. The JB Hunt 2023 operating-expense breakdown and the Joby 2024 unit-economics letter are useful reads on how larger operators separate variable from fixed at the line-item level.
Tracking variable COGS without a spreadsheet nightmare
The arithmetic above is easy for one order. It's miserable for 340 of them, across multiple products and two or three suppliers, when supplier prices drift and shipping varies by destination.
That's the job Victor, PodVector AI's AI employee, is built for. Victor connects your live store data — Shopify for the orders and sale prices, Printify, Printful, and Gelato for the real supplier product and shipping costs, and Meta Ads and Google Ads for the acquisition spend — and computes your true per-order profit from the actual numbers, not a blended guess. Victor is not a dashboard you have to go read; it's an AI employee that does the reconciliation for you and delivers the result to your Google Drive. Every write action it takes is approval-gated, so nothing happens without your say-so.
If you want your variable COGS and true per-order profit computed from your live data instead of a spreadsheet, put Victor to work on your store.
For the broader money mechanics — chargebacks, refunds, and the fixed-cost side of the ledger — a hotel operating expenses breakdown is a clear worked example of the variable-versus-fixed discipline applied outside ecommerce.
FAQs
Is cost of goods sold a variable or fixed cost?
Mostly variable. The core of COGS — the per-unit product cost and the freight to get each unit to the customer — scales directly with how many units you sell, which is the definition of a variable cost. Some businesses have small fixed components inside COGS (like a portion of warehouse labor), but for a print-on-demand store, COGS is essentially all variable because you pay the supplier per order with no inventory to carry.
Are shipping and payment fees part of variable cost of goods sold?
Supplier shipping that you pay to produce and send the unit is part of variable COGS. Payment processing fees are variable, but they're a selling expense, not COGS — they pay for collecting the money, not making the product. Keep them in a separate "variable operating expenses" line so your gross margin stays clean and your true profit still accounts for them.
How do I calculate variable cost of goods sold per order?
Add the supplier product cost and the supplier shipping for that specific item — that's your variable COGS for the order. For example, a $12.00 product cost plus $4.75 shipping is $16.75. Subtract that from the order's revenue to get gross profit, then subtract your variable operating expenses (ad spend, processing) to reach contribution per order.
Why isn't ad spend part of COGS?
Ad spend acquires the customer; it doesn't produce the product. Accounting treats it as a selling and marketing expense, which sits below gross profit on the P&L, not inside COGS. It's still a variable cost you must subtract to find real profit — it just belongs in a different bucket, because mixing it into COGS would distort your gross margin and your pricing decisions.
What's the difference between variable COGS and contribution margin?
Variable COGS is one input; contribution margin is the result after you subtract all variable costs from revenue. Start with revenue, subtract variable COGS to get gross profit, then subtract variable operating expenses (ads, processing) to get contribution — the amount each sale leaves over to cover fixed costs and profit. Contribution margin is the number that tells you whether scaling volume actually helps.