Talk to a CFO
Eightx Talk to a CFO
← All Insights

Financial Strategy

Year-end inventory count: the SOP that keeps COGS honest

·By Matt Putra, Managing Partner ·16 min read

A year-end inventory count sets ending inventory, which drives COGS: beginning inventory plus purchases minus ending inventory. A $150K inventory error at a $10M brand moves COGS by $150K and tax by about $37,500 (illustrative; IRS Publication 538 formula, 25% effective rate assumed). Run a blind two-person count, classify every variance, and hand your CPA a documented package.

Year-end inventory count: the SOP that keeps COGS honest

Key Takeaways

  • A 3% miscount is a five-figure tax swing. COGS equals beginning inventory plus purchases minus ending inventory. A $150K error in ending inventory at a $10M brand moves COGS by $150K and taxable income by roughly $37,500 (illustrative; IRS Publication 538 formula, 25% effective rate assumed).
  • Shrinkage alone runs 1.6% of revenue. The NRF National Retail Security Survey put U.S. retail shrink at 1.6% of revenue ($112.1B) for FY2022, and a 2024 Statista read hit 1.68%, the highest rate in the series. At a $5M brand that is $80K walking into COGS before you count a single unit.
  • Average inventory record accuracy is 83%. Only 69% of companies track accuracy at all (CAPS Research, via NetSuite). For a $5M brand carrying roughly $750K in inventory (15% of revenue), that 17% inaccuracy rate points to about $127K of inventory records that may not match physical reality.
  • Blind two-person counts are the audit-defensible standard. One counts, one records independently, and any zone that disagrees by more than a set threshold triggers a referee recount. This is the protocol accounting firms and PCAOB AS 2510 assume.
  • Your CPA needs a package, not a number. Count date, method, ending value by SKU or category, purchases, beginning inventory, a write-off schedule, and your costing method with confirmation of no change. Hand it over by December 20 and the close gets faster and cheaper.

Beginning inventory plus purchases minus ending inventory equals your cost of goods sold. That is the whole equation, and it is why a messy December count is not really an ops problem. It is a tax problem wearing an ops costume. If the ending inventory number you hand your CPA is off by even 3% to 5%, your taxable income can be off by tens of thousands of dollars in either direction, and you are the one who has to defend every line of that return. This is the SKU-level count protocol we walk brands through so COGS stops lying to your CPA, your bank, and you.

Why your inventory count is a tax document, not just an ops report

Cost of goods sold is not a number your system invents. It is a calculation anchored to a physical fact: how much stock you actually had on hand at the end of the year. IRS Publication 538 lays out the mechanics, and they are unforgiving in their simplicity. Beginning inventory plus purchases minus ending inventory equals COGS. Move the ending number and you move everything downstream of it.

Here is where it bites. Overstate your ending inventory and COGS falls, gross profit rises, and you owe tax on income you never actually earned. Understate your ending inventory and you under-report taxable income, which is the version that draws IRS attention. Neither direction is safe. The count is the control that keeps both from happening.

When I talk to founders running a brand in the $5M to $15M range, the reaction I get is usually that inventory feels like the one line on the P&L they cannot fully trust. They are right to feel that way, and the math shows why the stakes are so high. A 3% miscount is not a rounding issue at this size.

At a $10M brand, a $150K error in the year-end inventory count is a $150K swing in COGS and about $37,500 in tax you either overpay or under-report -- because every dollar of inventory error flows directly into COGS through the Publication 538 formula. That number is illustrative, built straight from the Publication 538 formula, but the point is not the exact figure. The point is that the count is a financial control with a five-figure price tag on getting it wrong, and it deserves the same discipline you would give a bank covenant or a board number.

What you are actually measuring, and why it is so hard

The reason the count is hard is that "inventory error" is not one thing. It is at least five things stacked on top of each other, and they do not net out politely. There is physical shrinkage from theft, damage, and loss. There is dead or obsolete stock sitting below cost. There is phantom inventory from system errors like negative stock and unprocessed returns. There is transit stock that may or may not belong to you depending on the shipping terms. And there is the 3PL discrepancy, which is its own animal.

One operator we worked with put it more bluntly than any accounting textbook ever will. "Inventory is literally the hardest thing for anybody to do. Conceptually easy, but really hard in practice. Nobody does it right." That same brand ran a monthly count and a full year-end count, and still found a seven-figure error in a single year, to the good, but only because they actually counted. The chaos is normal. The system is what is missing.

Shrinkage sets the baseline you are fighting against. The NRF National Retail Security Survey put U.S. retail shrink at 1.6% of revenue ($112.1B) for FY2022, and a 2024 Statista read hit 1.68%, the highest rate in the series. Where you land depends heavily on your category.

Most DTC operators live in apparel or health and beauty, which means 1.9% to 2.3% of revenue tends to disappear before it ever reaches the count. And it stacks on top of a records problem that is worse than most founders assume. Average inventory record accuracy across all businesses sits at 83%, and only 69% of companies track accuracy at all, per CAPS Research cited by NetSuite. For a $5M brand carrying roughly $750K in inventory (the same 15%-of-revenue assumption the COGS math above uses), that 17% inaccuracy rate points to about $127K of records that may not match physical stock -- illustrative, but the exposure sitting inside COGS before anyone counts a shelf is real.

Returns are quietly eating your margin. See by how much.

Get our Real Cost of Returns calculator: plug in your numbers, see the true hit per return.

On its way.

Check your inbox. We'll send the Real Cost of Returns calculator shortly.

The two-hour SKU-level count protocol

This is the part the ops manager runs, and it is written for them. The goal is a count that survives a CPA review and, if it ever comes to it, an examiner. That means blind, independent, and documented. The protocol below compresses a well-run count into roughly a two-hour window on count day, with prep on either side.

StepTimingWhat to doWho owns it
1. Export pre-count snapshot2+ weeks beforeExport the Shopify inventory CSV (Products, Inventory, Export) and the ERP or Cin7 stock-on-hand reportOps manager
2. Clean up open transactions1-2 weeks beforeReceive all inbound POs, ship all fulfilled orders, resolve negative inventory, close open transfersOps + bookkeeper
3. 3PL freeze notice5-7 days beforeNotify the 3PL of the count date, request a freeze on inbound and outbound, request a stock-on-hand report as of the count dateOps manager
4. Zone map and team assignment1-2 days beforeMap storage into zones, assign 2-person teams per zone, print count sheetsOps manager
5. Freeze in effectCount day morningConfirm no inbound received, pause Shopify order fulfillment during the countOps manager
6. Blind count by zoneCount day (2 hours)Each team counts independently without seeing system quantities, recording on paper or a mobile appCount teams
7. Referee recountsCount day (if needed)Any zone where two counts differ by more than 2% gets a third independent count as a tiebreakerOps supervisor
8. Enter and compareDay afterUpload physical counts, generate a variance report against the frozen snapshotOps manager
Source: synthesized from SD Mayer & Associates, Cin7, and Shopify year-end guidance, plus Eightx DTC client practice.

The blind, two-person structure is the piece founders skip most often, and it is the piece auditors assume you have. One person counts, the other records, and neither sees the system quantity while counting. That is what stops the count from quietly bending toward whatever the system already says. It is the standard baked into accounting firm SOPs and into PCAOB AS 2510, which expects auditors to observe a physical count unless it is genuinely impractical. You do not need an auditor to borrow the rigor.

Reconciliation: what to do with the variances you find

The count is not done when the counting stops. The count is done when every material variance has a name. This is the step where a good process separates itself from a founder squinting at a spreadsheet at 11pm. Each variance gets classified, because the classification drives both the accounting treatment and the note your CPA needs.

Variance typeCommon causeAccounting treatmentNote for your CPA
Physical shrinkageTheft, damage, pick errorsRecognize as a loss in the period, per ASC 330Report the shrink rate, flag if materially above prior year
Dead or obsolete stockSlow-moving SKUs now below costWrite down to net realizable value, recognize the loss nowInclude the write-down schedule with the inventory memo
System error (phantom stock)Negative inventory, sync failures, returns not processedCorrect in the system, document the root causeExplain any large prior-period corrections
3PL discrepancyReceiving errors, returns quarantine, SKU mappingRequest the 3PL reconciliation report, adjust to physicalAttach the 3PL count report as backup
Transit stock at year-endIn-transit goods not yet receivedInclude if title has passed (FOB shipping point), exclude if notConfirm which goods were in transit and the FOB terms
Source: IRS Publication 538 and FASB ASC 330 (ASU 2015-11).

The write-down line is the one with real accounting teeth. Under ASC 330, updated by ASU 2015-11, FIFO and weighted-average inventory has to be carried at the lower of cost and net realizable value. NRV is the selling price minus the cost to finish, sell, and ship. If dead stock has an NRV below cost, you recognize that write-down in the period you discover it, which is almost always the year-end count. So the count is not just a valuation exercise. It is the trigger event for write-down recognition, and we walk through the mechanics of that in our guide to taking inventory write-downs.

The pattern we see again and again is that the write-down is where founders flinch. Nobody wants to book a loss on stock they paid for. But the loss already happened when the stock went stale. Refusing to recognize it does not protect the P&L, it just puts a fictional number on the balance sheet that your bank and your next diligence process will eventually catch. Take the write-down, document it, and move on.

What your CPA needs by December 20

Founders who hand over a clean package get faster closes and fewer surprise questions in March. The ones who hand over a single ending-inventory number and a shrug pay for it in back-and-forth and, sometimes, in a return that has to be amended. The deliverable is a short, boring memo with the following pieces:

  1. The physical count date.
  2. The counting method and who was on the team.
  3. Ending inventory value, by SKU or by category.
  4. Total purchases for the year, from your POs and bills.
  5. Beginning inventory, from last year-end or the opening balance sheet.
  6. The write-off schedule, with supporting detail on any material variance.
  7. Your costing method (FIFO, LIFO, or weighted-average) with explicit confirmation that it did not change.

That last point matters more than it looks. Switching inventory methods mid-stream without filing IRS Form 3115 is a real audit exposure, and a method change also triggers a Section 481(a) adjustment. If you did not change methods, say so in one line. If you think you need to, that is a CFO-and-CPA conversation before year-end, not a decision you make quietly in the accounting software.

One more planning note. Before the count even starts, it is worth setting a defensible exposure budget so the write-down does not feel like a shock. Combining a 1.6% shrink rate with a 1.2% median DTC write-down gives a 2.8% combined baseline you can plan around.

For a $10M brand that is roughly $280K a year in expected shrink plus write-down -- a planning baseline, not a study finding. When we talk through this with operators, the number lands hard the first time, because most have never named it. But a named number is a budgeted number, and a budgeted number does not blow up your December.

The count is not the ops chore at the end of the year. It is the one financial control that decides whether your COGS, your taxable income, and your balance sheet are telling the truth. Run it blind, classify every variance, and hand your CPA a package instead of a guess. That is the difference between a clean close and an amended return.

Making this repeatable, from one-time scramble to annual process

The last piece is turning this from a December fire drill into a system the ops manager owns without you. Set the count date in October, not the week before. Assign a single owner. Build a count-sheet template from your Shopify or Cin7 tools once and reuse it. Then run a mid-year cycle count in June as a sanity check, so the year-end count confirms what you already roughly know instead of revealing a year of drift all at once.

When we help a brand stand this up, the shift we care about is that the founder stops being in the count. The whole point of a real SOP is that it runs the same way whether or not you are in the building. That is what makes inventory boring, and boring is exactly what you want from the number that drives your COGS.

Related reading. For more on keeping inventory and COGS honest, see inventory turns and dead stock and how to take inventory writedowns. For how we help brands model margin and cash, see our fractional CFO work.

Sources and methodology

Inventory shrinkage benchmarks come from the NRF National Retail Security Survey and category analyst estimates. The 1.6% of revenue figure ($112.1B) is from the NRF National Retail Security Survey 2023, with a 2024 read reaching 1.68%, the highest in a decade. NRF announced in October 2024 that it would stop publishing the annual shrink report, so later figures rely on the archived surveys and analyst estimates. Category ranges are midpoints of published benchmarks. See the NRF National Retail Security Survey 2023 and the Statista retail shrinkage series.

COGS mechanics and inventory tax treatment come from IRS Publication 538. The formula (beginning inventory plus purchases minus ending inventory equals COGS), the recognized costing methods (FIFO, LIFO, specific identification), the requirement that LIFO users value at cost, and the Form 3115 requirement for a method change are all drawn from Publication 538. Read it directly at IRS Publication 538.

Inventory valuation and write-down rules come from FASB ASC 330. The lower-of-cost-and-net-realizable-value standard for FIFO and weighted-average inventory, and the definition of NRV, reflect ASU 2015-11, which amended ASC 330. The FASB ASU 2015-11 document has the full text.

Record-accuracy and audit-observation figures come from named benchmark and standards sources. The 83% average record accuracy and the 69% tracking figure are from CAPS Research, cited by NetSuite. The blind-count and physical-observation expectations reflect PCAOB AS 2510 and published accounting-firm year-end guidance.

Count-protocol and 3PL reconciliation practices are compiled from practitioner guidance and Eightx client work. The step sequence and variance classifications draw on year-end guidance from Cin7, Shopify, and ShipMonk on 3PL discrepancies, combined with what we see running these counts with DTC brands. Illustrative dollar impacts are calculated from the Publication 538 formula and clearly labeled as illustrative.

Frequently asked questions

what happens if my year-end inventory count is wrong on my tax return?

Your COGS is wrong, so your taxable income is wrong. Overstate ending inventory and you understate COGS, which overstates income and you pay tax on money you never made. Understate ending inventory and you under-report income, which is the version the IRS cares about most. Either way the fix is a real physical count you can defend.

do i have to do a physical inventory count every year for taxes?

If you hold inventory, you need a defensible year-end value, and a physical count is the standard way to establish it. Below the IRS small business threshold (roughly $32M in 3-year-average gross receipts for 2026) you get simpler treatment, but you still need a count to support the number on your books and your return.

how does ending inventory affect cogs?

Directly and inversely. COGS equals beginning inventory plus purchases minus ending inventory. Every dollar you add to ending inventory removes a dollar from COGS, and every dollar you take off ending inventory adds a dollar to COGS. That is why a small counting error at the end of the year moves your whole tax picture.

how do i reconcile shopify inventory to my actual physical count?

Export a pre-count inventory snapshot from Shopify (Products, then Inventory, then Export) before you count. Do the physical count on paper or a mobile app without looking at system quantities. Then compare, classify each variance, and upload the reconciled counts as your new baseline. Watch for negative inventory and unassigned unit costs, which quietly corrupt Shopify COGS.

what do i do if my physical count is way off from what's in my system?

Do not just overwrite the system and move on. Classify the variance first: shrinkage, a mis-pick, a system sync error, a 3PL discrepancy, or transit stock. The root cause drives the accounting treatment and what you tell your CPA. A large unexplained swing is exactly what an examiner asks about, so document why it happened.

how does my 3pl warehouse affect my year-end inventory numbers?

A lot, and usually badly if you do not check it. It is common for a 3PL's system and your Shopify or ERP to be out of sync by 2% to 8% of units from receiving errors, unsegregated returns, and SKU mapping. Ask the 3PL for item-level, time-stamped movement data as of the count date so you can find where the variance started.

what is net realizable value and when do i have to write down inventory?

Net realizable value is the estimated selling price minus the costs to finish, sell, and ship the item. Under ASC 330, if dead or slow stock has an NRV below its cost, you write it down to NRV and recognize the loss in the period you find it. Year-end counts are usually when you find it, so the count and the write-down go together.

how do i give my cpa clean inventory numbers at year-end?

Hand over a package, not a single figure: the count date, your count method and team, ending inventory value by SKU or category, total purchases for the year, beginning inventory, a write-off schedule, and your costing method with confirmation that it did not change. Deliver it by around December 20 and your close gets faster and less expensive.

About the Author

Matt Putra, Managing Partner

Matt is the Managing Partner of Eightx, a fractional and interim CFO firm managing $650M+ in revenue across 35+ ecommerce, DTC, and CPG portfolio brands across the US, Canada, Australia, and the UK. A former PE investor with $500M+ deployed, Matt specializes in benchmark-driven financial leadership for apparel, beauty, food and beverage, and household brands.

Related Insights

Staring down a December count?

Get a CFO to pressure-test your inventory number before it hits your return

30-minute call. We will walk your count method, your write-down logic, and the exact package your CPA needs, so COGS stops surprising you.

Talk to a CFO