How to audit inventory shrinkage as DTC Brand Founders

Ops & SupplyFor DTC Brand Founders3 apps11 steps~22 min to set up

You find out about inventory shrinkage the wrong way: a 3PL sends a monthly reconciliation that doesn't match your Shopify inventory count, or you go to reorder a SKU and realize 200 units have gone missing since the last physical count. Your shrinkage investigation lives in three places — a Shopify export, a spreadsheet your ops person built six months ago, and an email thread with your 3PL. You don't have a compliance team or a dedicated inventory analyst. You have yourself and maybe one other person, trying to figure out whether the missing units are a receiving error, damaged goods that never got logged, or something worse. By the time you've reconciled it, another month has passed.

Ops & SupplyFor DTC Brand Founders3 apps11 steps~22 min to set up
Outcome

What you'll set up

A running shrinkage log that compares your expected inventory (purchases in minus orders out) against what your 3PL and Shopify say is actually on hand — updated automatically, not at month-end.
Automatic flags when your bank account shows a supplier payment but the corresponding inventory receipt hasn't been logged anywhere, so receiving errors surface in days instead of weeks.
A mock-audit-ready trail: every lot, every location, every discrepancy — so when a co-packer or retailer auditor asks where units went, you can pull the answer in minutes.
The Starch recipe

Apps, data, and prompts

The combination of Starch apps, the data sources they pull from, and the prompts you use to drive them.

Data sources & config

Starch syncs your Plaid bank transactions on a schedule so supplier payments are always current. Shopify is connected from Starch's integration catalog and queried live when the shrinkage dashboard runs. Google Sheets (your PO and receiving log) is connected from Starch's integration catalog and queried live. Slack is connected from Starch's integration catalog so the Monday morning discrepancy alert posts automatically. Lot Tracker and Inventory Planner are currently in development — request beta access; in the meantime, Starch can build you a custom lot-tracking and shrinkage-audit app from scratch using the same underlying connections.

Prompts to copy
Build me a shrinkage audit dashboard that compares expected inventory (starting units + received units - sold units - recorded adjustments) against my 3PL's on-hand count for each SKU and location. Highlight any variance greater than 2% or 50 units, whichever is smaller. Pull sold units from Shopify and received units from my purchase order log in Google Sheets.
Every Monday morning, check my Plaid transactions from the past 7 days for any supplier payments over $500 and flag the ones where I don't have a corresponding inventory receipt logged in my PO tracker. Send me a Slack message with the discrepancy list.
Set up lot-level tracking for every inbound shipment. When I enter a new lot number and supplier, generate a chain-of-custody record I can use for FSMA 204. Let me run a recall simulation for any lot by entering the lot number and seeing every order that included that lot.
Run these in Starch → or paste them into your favorite agent
Walkthrough

Step-by-step

1 Connect Plaid in Starch so your bank transactions sync on a schedule — every supplier payment, wire, and ACH will be visible automatically without any manual export.
2 Connect Shopify from Starch's integration catalog so the agent can query live order data, fulfilled units, and returns whenever your shrinkage calculation runs.
3 Connect your PO and receiving log (Google Sheets or Airtable) from Starch's integration catalog — this is your 'expected in' record that shrinkage math runs against.
4 Tell Starch: 'Build a shrinkage audit app that calculates expected on-hand inventory per SKU per location using starting inventory plus received units minus shipped units minus logged adjustments, and compares it to my 3PL's reported count. Flag variances over 2% or 50 units.' Starch assembles the app — no configuration screens, no field mapping by hand.
5 Add your 3PL's monthly count file as an input — either connect the sheet they send you directly or paste the data in. Starch will normalize the format and run the variance calculation.
6 Set up the Monday morning automation: Starch checks last week's Plaid transactions for supplier payments, cross-references your PO log, and posts any unmatched payments to Slack — catching receiving errors before they compound.
7 For any flagged variance, ask Starch: 'Show me every transaction, adjustment, and order movement for SKU [X] at [Location Y] between [date range].' The agent queries Shopify and your PO log live and returns a full unit-movement timeline.
8 If you're in food and beverage, set up lot-level tracking: enter each new lot number with supplier, date, and quantity received. Starch stores the chain-of-custody record and lets you run a mock recall — 'Which orders contained lot 2025-0112?' — in seconds.
9 Connect your 3PL portal via browser automation if they don't have an API — Starch can log in and pull the current on-hand count automatically so you're not waiting for their monthly email.
10 Set a shrinkage KPI target (e.g., keep shrinkage below 1.5% of COGS) and ask Starch to add a running shrinkage rate to your dashboard, calculated from the same data, so you can see trend direction month over month.
11 When you need to present to investors or a retail buyer, ask Starch: 'Build me a one-page shrinkage summary showing total units lost, dollar value at cost, shrinkage rate as a percentage of units sold, and the top three SKUs with the highest variance for Q1 2026.' Export or share directly.

See this running on Starch

Connect your tools, describe what you want, and the agent builds it. Closed beta is free.

Try it on Starch →
Worked example

Q1 2026 Shrinkage Audit — 3-SKU DTC Brand, Two Locations

Sample numbers from a real run
SKU A (bestseller) — expected on-hand at 3PL1,840
SKU A — 3PL reported on-hand1,763
SKU A — variance (units)-77
SKU B — expected on-hand620
SKU B — 3PL reported on-hand618
SKU B — variance (units)-2
SKU C — expected on-hand310
SKU C — 3PL reported on-hand274
SKU C — variance (units)-36
Total shrinkage at cost ($8.40/unit blended)-966

At the end of Q1 2026, the Starch shrinkage dashboard flagged two variances immediately: SKU A was short 77 units (4.2% of expected on-hand, above the 2% threshold) and SKU C was short 36 units (11.6%, well above threshold). SKU B's 2-unit variance was within acceptable range. The dashboard traced SKU A's discrepancy to a February inbound shipment — Plaid showed a $3,200 supplier payment on February 8th, but the PO log in Google Sheets had no corresponding receipt entry until February 22nd, with only 880 units logged against an expected 957. The Monday morning automation had actually flagged this on February 10th, but it got lost in email. Going forward, that alert now posts to a dedicated Slack channel. SKU C's shrinkage was traced to an undocumented damage adjustment at the 3PL — no formal log had been created. Total Q1 shrinkage came to roughly $966 at cost across the three SKUs. The lot-tracking records confirmed no recalled product was involved. The whole investigation took 40 minutes instead of the two days it took to piece together for Q4 2025.

Measurement

How you'll know it's working

Shrinkage rate as a percentage of COGS (target: under 1.5%)
Unreconciled receiving discrepancies — number of supplier payments with no matched receipt within 14 days
Days to close a shrinkage investigation (from flag to root cause identified)
Units lost by location and SKU per quarter
Dollar value of shrinkage vs. last quarter (trend direction matters as much as absolute number)
Comparison

What this replaces

The other ways teams handle this today, and how the Starch version compares.

Shopify + 3PL spreadsheet reconciliation
Costs you 4-6 hours per quarter and produces a point-in-time snapshot; Starch keeps the comparison running continuously and flags discrepancies as they appear.
Cin7 or Extensiv (3PL integrations)
Purpose-built for inventory management but requires your 3PL to be on their network, costs $500-1,200/month at small volumes, and still won't cross-reference your bank transactions to catch receiving errors.
QuickBooks inventory tracking
Tracks inventory value for accounting purposes but doesn't do unit-level variance analysis between your 3PL's physical count and your Shopify order history.
A dedicated ops hire or 3PL account manager
They'll eventually catch everything, but investigation cycles run monthly and the institutional knowledge leaves with them; Starch keeps the logic and the data in one place you control.
On Starch RECOMMENDED

One platform — lot tracker, transaction insights, inventory planner all running on connected data. Setup in plain English; numbers stay current via scheduled syncs and live agent queries.

Try it on Starch →
FAQ

Frequently asked questions

My 3PL doesn't have an API. Can Starch still pull their inventory counts?
Yes. If your 3PL has a web portal you log into, Starch can automate that through your browser — no API needed. You'd tell Starch: 'Log into my 3PL portal and pull the current on-hand counts for all SKUs.' If they only send a monthly email with a spreadsheet attachment, you can connect Gmail (Starch syncs Gmail on a schedule) and have the agent parse the attachment automatically.
The Lot Tracker app page says it's in development. Can I still do lot tracking on Starch today?
Yes — Lot Tracker is in development and you can request beta access, but you don't have to wait. You can describe what you need to Starch right now and it will build you a custom lot-tracking app: 'Build me an app where I can enter lot numbers, supplier, quantity, and receive date. Track which orders each lot went into. Let me run a search by lot number to see every customer order that included that lot.' It won't have the same polished UI as the full Lot Tracker, but the underlying traceability logic works today.
Is Starch SOC 2 certified? I'm sharing bank transaction data and order data.
Starch is not SOC 2 Type II certified yet. That's worth knowing if your retailer, co-packer, or investors ask. For most DTC founders at the stage where inventory shrinkage is a manual mess, this isn't a blocker — but it's an honest limit and we'd rather you know upfront.
Can Starch pull historical shrinkage data so I can see the trend over the last 12 months?
Starch is built for live data surfaces, not a long-horizon data warehouse. Shopify order history and your Plaid transactions go back as far as those connections allow (Plaid typically covers 12-24 months of transaction history depending on your bank). If you have older reconciliation data in spreadsheets, you can connect those from Starch's integration catalog and the agent will include them in calculations.
I use Xero, not QuickBooks. Can Starch still cross-reference my accounting records?
Yes. Xero is available in Starch's integration catalog and the agent queries it live when your shrinkage workflow runs. You'd connect Xero from the catalog, then tell Starch which accounts represent COGS, inventory adjustments, or damage write-offs — and it will pull those figures into your shrinkage rate calculation.
What if the shrinkage isn't a data problem — it's theft or a fulfillment error at the 3PL?
Starch helps you get to that conclusion faster and with a paper trail. Once the dashboard flags a variance, you can ask the agent to produce a unit-movement timeline for that SKU — every inbound receipt, every outbound shipment, every logged adjustment — that you can hand to your 3PL account manager. That's a different conversation than 'our numbers don't match'; it's 'here is exactly where the discrepancy appears in the movement log.' Most 3PLs respond much faster when you show up with specific data.

Ready to run audit inventory shrinkage on Starch?

Request closed-beta access. Everything is free during beta.

You're on the list! We'll be in touch soon.