How to track gross margin by channel and sku as DTC Brand Founders
You know your Shopify revenue number. You know roughly what you spent on Meta and Google Ads. But you have no idea which SKU actually made money last month after you back out COGS, ad spend, fulfillment, and returns. Your gross margin math lives across a Shopify export, a Meta Ads Manager CSV, a Klaviyo attribution report, and a Google Sheet that your 3PL toucheded last and nobody fully trusts. Every week you're manually reconciling these to figure out whether your hero SKU is actually profitable or just high-revenue. Channel-level margin is even worse — you have no idea if your DTC site outperforms Amazon after fees, or if that influencer campaign SKU is underwater. You need this answered before your next inventory buy.
What you'll set up
Apps, data, and prompts
The combination of Starch apps, the data sources they pull from, and the prompts you use to drive them.
Starch connects directly to QuickBooks so COGS and vendor bills sync on a schedule. Starch connects directly to Plaid so bank transactions — ad platform charges, 3PL invoices, payment processor deposits — sync daily. Shopify, Meta Ads Manager, and Google Ads are connected from Starch's integration catalog; the agent queries them live when the dashboard or automation runs. Slack is connected from Starch's integration catalog for alert delivery.
Step-by-step
See this running on Starch
Connect your tools, describe what you want, and the agent builds it. Closed beta is free.
Q1 2026 margin close — March actuals for a 3-SKU DTC skincare brand
| SKU A (Hero Serum) — Shopify DTC net revenue | 148,000 |
| SKU A — COGS (QuickBooks bills) | 44,400 |
| SKU A — Meta Ads allocated spend | 31,200 |
| SKU A — 3PL fulfillment (Plaid, ShipBob invoices) | 11,100 |
| SKU A — Contribution margin | 61,300 |
| SKU B (Moisturizer) — Shopify DTC + Amazon net revenue | 62,000 |
| SKU B — COGS | 21,700 |
| SKU B — Ad spend + Amazon fees | 18,600 |
| SKU B — Fulfillment | 6,200 |
| SKU B — Contribution margin | 15,500 |
| SKU C (Eye Cream) — Shopify DTC net revenue | 29,000 |
| SKU C — COGS | 11,600 |
| SKU C — Meta Ads allocated spend | 14,500 |
| SKU C — Fulfillment | 3,480 |
| SKU C — Contribution margin | -580 |
In March, Starch pulled Shopify net sales by SKU (after returns and discount codes), matched QuickBooks COGS bills to each product line, and allocated Meta and Google ad spend by SKU based on which products appeared in each campaign's product set. SKU A (Hero Serum) is running at 41.4% contribution margin — healthy, though Meta CPM increased 18% MoM and the scenario model flags that a further 15% increase tips it below the 40% floor. SKU B looks fine at 25% on paper until you add Amazon referral fees pulled via browser automation from Seller Central; the actual channel-level margin on Amazon is 18.2% vs 31.5% on Shopify DTC — a number nobody had seen before because the Seller Central fees never made it into the Google Sheet. SKU C is underwater by $580 after ad allocation. The Monday Slack alert had already flagged it the previous week when its trailing 30-day margin crossed zero. The reorder recommendation Starch drafted in Notion for SKU A was automatically suppressed for SKU C until margin recovers — no manual check needed.
How you'll know it's working
What this replaces
The other ways teams handle this today, and how the Starch version compares.
One platform — transaction insights, scenario planning, runway analysis all running on connected data. Setup in plain English; numbers stay current via scheduled syncs and live agent queries.
Try it on Starch →Frequently asked questions
Does Starch actually connect to Shopify, Meta Ads, and Google Ads, or do I have to export CSVs?
My COGS are in QuickBooks but the QuickBooks P&L view isn't working — what do I get?
What about Amazon? I sell on Seller Central and need to back out fees.
Can Starch handle ad spend attribution by SKU, or does it just see total spend?
Is Starch SOC 2 certified? I'm connecting bank accounts and financial data.
My gross margin data is sensitive — can I control who on my team sees the SKU-level breakdown?
How long does it take to get the first margin view up?
Related guides for DTC Brand Founders
Vendor and category spend analysis means knowing, at any point in time, where your money is actually going — which vendors are getting paid, how much, how often, and whether that number is creeping up or down relative to last month.
Read guide →Investor Q&A and info requests are the administrative tax on raising capital and maintaining LP relationships.
Read guide →Inventory shrinkage is the gap between what your records say you have and what's actually on the shelf, in the warehouse, or at your co-packer.
Read guide →AP invoice approval is the process of reviewing incoming vendor bills, confirming they match purchase orders or contracts, getting the right sign-off, and releasing payment.
Read guide →Track Gross Margin by Channel and SKU for other operators
The AI stack built for CPG brands.
Read guide →The AI stack built for small finance teams.
Read guide →The AI stack built for restaurant and hospitality operators.
Read guide →The AI stack built for solo media and creator businesses.
Read guide →Ready to run track gross margin by channel and sku on Starch?
Request closed-beta access. Everything is free during beta.