The problem with gross margin
If you run an eCommerce brand, your accountant probably gives you a gross margin number. Revenue minus cost of goods sold. Simple. And almost useless for making actual business decisions.
Here's why: gross margin treats all revenue the same. A sale through your Shopify store, a sale through Amazon, and a wholesale order to Target all show up with the same margin — even though the costs to fulfill, ship, and acquire those customers are completely different. An order from a repeat Klaviyo subscriber and an order from a cold Meta ad have very different economics, but gross margin can't tell you that.
At Shopkeeper, we use a framework called PC1/PC2/PC3 — three layers of profit contribution that peel back costs in the order they actually occur in an eCommerce business. By the time you get to PC3, you know exactly how much margin is left to cover your fixed costs, and more importantly, you know where value is being created and where it's leaking.
The three layers
PC1 — Profit Contribution 1
PC1 is the closest thing to traditional gross margin, but it's more precise. Standard COGS often lumps in outbound shipping or platform fees. PC1 isolates only the costs of procurement and inbound — so you get a clean read on your product margins before anything else touches them.
This is where you catch sourcing problems. If your PC1 margin is declining quarter over quarter, the issue is upstream — raw material costs, freight rates, or currency fluctuations. You don't need to change your pricing or marketing. You need to renegotiate with your supplier or find a new shipping lane.
PC2 — Profit Contribution 2
PC2 is where channel differences start to show. An order fulfilled by Amazon FBA has completely different PC2 economics than the same product shipped from your own 3PL. A $5 flat-rate shipping offer on your DTC site eats into PC2 differently than free shipping bundled into Amazon's pricing.
This is the number that matters for customer lifetime value. When we calculate CLV at Shopkeeper, we do it on a PC2 basis — not on revenue. Revenue lifetime value tells you how much a customer spends. CLV on a PC2 basis tells you how much a customer is actually worth after all the variable costs of getting them their product. That's a fundamentally different number, and it changes how much you can afford to spend on acquisition.
PC3 — Profit Contribution 3
PC3 is the ultimate truth-teller. A channel can look great at PC1, decent at PC2, and terrible at PC3 — or the reverse. Email-driven revenue typically has near-zero PC3 cost (you're not paying to acquire those customers again), which is why understanding your email revenue share matters so much.
Look at those three lines. The same product, three completely different PC3 margins. A blended gross margin number would average them all together and tell you nothing. The PC1/PC2/PC3 framework tells you exactly where to invest: grow email, protect your Amazon organic rank, and make sure your Meta CAC stays under $12 or that channel goes underwater.
The supporting metrics
The PC framework doesn't work in isolation. There are a handful of related metrics we track alongside it:
Why this changes everything
When you switch from a single gross margin number to the PC1/PC2/PC3 framework, three things happen immediately:
You stop making channel decisions on bad data. Most brands know their DTC margin is higher than Amazon. But "higher" isn't actionable. Knowing that DTC via email has a 52% PC3 margin while DTC via paid Meta has a 22% PC3 margin — that's actionable. It tells you where to allocate your next dollar.
You set ROAS targets that actually mean something. If you know your PC2 margin is $20 on a $40 product, you know your break-even CAC is $20. Set your ROAS target at 2x and you're profitable. Set it at 1.5x and you're spending $27 to make $20 in contribution — you're losing money on every new customer unless they come back.
You can model growth scenarios with confidence. Want to launch on Amazon? You can model the PC2 impact before you commit. Thinking about raising prices? You can see the PC1 lift and whether it survives through PC2 and PC3. Considering a 3PL switch? Model the PC2 change across all channels before you sign the contract.
Getting started
If you want to implement this framework for your brand, start with three months of historical data. Map every cost to PC1, PC2, or PC3. Break it out by channel. The first time you see your channel-level PC3 margins side by side, you'll understand your business differently than you ever have from a standard P&L.
If you'd like help building this out, that's exactly what we do. Get in touch and we'll walk you through what it looks like for your brand.