Inventory Management for Bean-to-Bar Chocolate Makers
A working guide to inventory for craft chocolate makers — the four inventory classes (raw cacao, in-progress, finished goods, packaging), realistic par levels and reorder points, shelf-life discipline by class, FIFO implementation in a small shop, batch-lot traceability requirements, the weekly physical count workflow, tool options, and the common mistakes that silently drain margin.
Inventory is the invisible P&L line item in craft chocolate. Done well, it quietly preserves your margin, protects your shelf-life consistency, and gives you the traceability records regulators increasingly require. Done poorly, it silently drains cash (too much stock), creates stock-outs that break wholesale commitments (too little), produces off-tasting bars from aged cacao, and turns a Prop 65 notice into an unrecoverable scramble. Most small craft makers don't think about inventory systematically until their third year — by which point several expensive lessons have already happened. This post is the working guide for avoiding them.
The four inventory classes
Every bean-to-bar operation has four distinct inventory classes, each with its own shelf life, its own par-level math, and its own reorder cadence. Treating them as one bucket (what most first-year makers do) produces systematic planning errors.
| Class | Typical shelf life | Cost lock-up horizon |
|---|---|---|
| Raw cacao (unroasted beans) | 12–18 months properly stored | Large — ordered 6–10 weeks in advance |
| In-progress inventory (roasted nibs, refining batches) | 3–8 weeks | Short-term float; part of weekly cycle |
| Finished goods (bars, wrapped inventory) | 8–14 months depending on recipe | Holds Q4 seasonal pre-build |
| Packaging materials (foil, wraps, boxes, labels) | Indefinite (1–5 years practical) | Long — minimum orders drive bulk positions |
Raw cacao
The dominant input cost and the class with the longest lead time. Properly stored — dry, dark, stable temperature, insect-controlled — fermented and dried cacao beans hold flavor for 12–18 months. Beyond 18 months, even well-stored cacao loses aromatic top notes. The inventory discipline: track arrival date per lot, rotate strictly FIFO, and commit to consuming each lot within 12 months of arrival.
In-progress inventory
Roasted beans, winnowed nibs, chocolate mid-conche, tempered chocolate being molded. All short-lived in inventory terms — roasted nibs lose brightness within a few weeks, and chocolate that sits between melanger stages develops fat bloom. In-progress inventory is the class you're always trying to minimize; it's money that has left raw-material pricing but hasn't entered finished-goods pricing.
Finished goods
Wrapped bars ready to sell. Shelf life depends on formulation: plain dark chocolate 12–14 months, inclusion bars with nuts or dried fruit 8–10 months, milk chocolate 6–8 months. Storage matters more here than at any other stage — temperature fluctuations cause bloom, humidity produces sugar crystallization, light degrades cocoa butter. The discipline: date every batch, store below 20°C at stable humidity, and rotate FIFO to wholesale and subscription shipments.
Packaging materials
Foil inner wraps, printed outer wraps, boxes, ribbon, labels, tape, mailer envelopes. Long-life inventory with moderate cost-per-unit but huge minimum order quantities. Offset-printed outer wraps at 5,000+ units are dramatically cheaper than short-run digital, but commit you to the current label design for 12–24 months. Balance: run digital for the first year, switch to offset once the label design is stable.
Par levels and reorder points
A par level is the target stock you want on hand at any given moment. A reorder point is the level at which you place a new order. Setting them deliberately — not emotionally — is the entire inventory-discipline exercise. The formula:
Worked example for a solo maker running 120 bars/week at 60% Madagascar, 40% blend of Dominican and Peru:
| Item | Weekly use | Lead time | Safety stock | Reorder point |
|---|---|---|---|---|
| Madagascar cacao | ~5 kg | 8 weeks | ~12 kg (2.5 weeks) | ~52 kg |
| Dominican cacao | ~2 kg | 6 weeks | ~6 kg (3 weeks) | ~18 kg |
| Peru cacao | ~2 kg | 7 weeks | ~6 kg (3 weeks) | ~20 kg |
| Organic cane sugar | ~5 kg | 1 week (local) | ~10 kg (2 weeks) | ~15 kg |
| Cocoa butter | ~1.5 kg | 2 weeks | ~3 kg (2 weeks) | ~6 kg |
| Foil wrap | ~700 sheets | 3 weeks (digital print) | ~1,400 sheets (2 weeks) | ~3,500 sheets |
| Outer wrap (offset) | ~700 sheets | 6 weeks (offset) | ~2,800 sheets (4 weeks) | ~7,000 sheets |
Review par levels quarterly. Weekly consumption patterns shift as your SKU mix evolves, new wholesale accounts come on, and seasons change. Par levels set in January rarely stay right through December. The Monday-morning inventory review (paired with your production calendar review from our production calendar guide) is where adjustments happen.
FIFO discipline
First-in, first-out rotation is non-negotiable for cacao and finished goods. It's also extremely easy to violate in a small shop where the maker grabs the closest bag of cacao instead of the oldest one, or pulls finished bars off the top of a stack instead of the bottom. Three practices that enforce FIFO:
- Date every receipt. Every sack of cacao, every case of sugar, every roll of foil gets the receive date written on the packaging in permanent marker. Year/month/day format.
- Physical arrangement reflects age. Older stock in front / on top / in the first pulling-position. New stock goes to the back, the bottom, or the rotation queue. Your shelving layout should make the oldest item the easiest to grab.
- Receiving ritual. Every incoming shipment triggers: date-mark, log entry (digital or spreadsheet), rotation to back position. If you skip any of the three, FIFO silently breaks down within 3–6 months.
Batch and lot tracking
Every production batch must link back to the specific cacao lots (and inclusion lots) that went into it. This is table-stakes for recall capability, for FSMA 204 traceability if you sell FTL-eligible inclusion bars, and for diagnosing flavor changes across batches. The minimum linkage structure:
- Every incoming cacao receipt gets a lot ID (e.g. ECU-KAL-2026-003: Ecuador, Kallari, 2026 harvest, third lot received);
- Every production batch gets a batch ID and records which cacao lot IDs (plus inclusion lot IDs) went in;
- Every finished-goods case gets a case/batch code visible on the case and optionally on the individual bar wrapper;
- Every wholesale shipment records which case/batch codes shipped to which account.
A trace from “a customer complained about a specific wrapper code” back to “the specific Ecuador lot received on July 14” should be doable in minutes, not hours. Small makers who can't execute that trace have a ticking compliance problem.
The weekly physical workflow
Inventory data rots fast if it's never physically verified. The minimum cadence that keeps records honest:
- Monday: raw material count. Quick visual check of every raw cacao lot, sugar, cocoa butter, and inclusion inventory. Compare to digital system. Reconcile discrepancies now, not at month-end.
- Mid-week: finished goods walkaround. Before wholesale shipments go out, visually verify batch codes match what the system says is on hand. Catches mis-shelving before it becomes a mis-ship.
- End of month: full count. Complete cycle count across all four classes. Reconcile all variances. Identify any items trending toward shelf-life limits. Update par levels if consumption patterns have shifted.
- Quarterly: shelf-life audit. Flag every item approaching 75% of shelf life. Decide: use urgently, discount, or discard.
Tools
Three realistic options for small craft makers:
- Spreadsheet. A Google Sheet with tabs per inventory class, rows per SKU or lot, columns for receive date, quantity on hand, par, reorder point. Works through your first year of commercial operation; breaks down around 15+ lots or when batch-to-lot linkage becomes essential. Cost: free. Friction: high.
- Generic food manufacturing / ERP. Katana, MRPeasy, Fishbowl. Full-featured; handle multi-class inventory, batch tracking, and ordering. Over-scoped for craft chocolate's specific needs and require learning curves. Cost: $200–$500/month.
- Chocolate-specific platforms. Tools like Cacao Craft integrate the inventory classes with recipes, batches, wholesale orders, and subscription ship dates — so par levels dynamically adjust as demand shifts. The specific workflows (cacao lot IDs, batch-to-lot linkage, finished-case batch codes) are built for bean-to-bar rather than general food manufacturing.
Before I had proper inventory tracking, I thought my cacao costs were constant and I was making flat margins. After six months of actual data, I realized I was buying Madagascar too often (holding too much), letting Dominican sit until it aged, and over-ordering foil wrap by a factor of two. None of those were visible without the records. Tightening them added three points to my gross margin with zero change to recipe or pricing.
Common mistakes
- Treating all inventory the same. Raw cacao, in-progress, finished goods, and packaging have radically different carrying costs and risks. One reorder rule for all fails at every class.
- No reorder points. Ordering when you notice you're low instead of when a formula-based trigger fires. Produces regular stock-outs on long-lead-time items.
- No physical reconciliation. Digital records that aren't compared to physical reality drift within a few months. Without the weekly count, you're making decisions on fiction.
- Missing batch-to-lot linkage. The moment you can't answer “which cacao lot went into the bar with batch code B-2026-017” is the moment you're non-compliant on modern food-safety expectations.
- FIFO violations.Grabbing newest stock because it's on top. Compounds silently; the oldest bag sitting in the back for 14 months is the flavor defect you can't explain.
- Over-ordering packaging. A 5,000-unit offset print run feels cheaper per-unit than digital — and is — but commits you to the current design for 18 months. Match packaging order volume to real demand visibility.
Common questions
How much raw cacao should I keep on hand?
Per origin, roughly 8–12 weeks of consumption — long enough to cover the reorder cycle, short enough to avoid aging out. For a 5-kg/week Madagascar user, that's 40–60 kg on hand. Below 8 weeks you risk stock-outs on lead-time slippage; above 12 weeks you risk flavor aging.
How long do wrapped bars actually last?
Plain dark chocolate (70%+), properly stored (under 20°C, stable humidity, dark): 12–14 months for flavor; legally safe for much longer. Milk chocolate: 6–8 months due to milk fat oxidation. Inclusion bars with nuts: 8–10 months before nut-oil migration becomes noticeable. Label best-by dates conservatively — 12 months is standard for dark, 9 months for milk, 8 months for inclusions.
What's the point of safety stock?
To absorb lead-time variance. Cacao lead times are 6–10 weeks, but “8 weeks” in practice means “usually 8, sometimes 10, occasionally 13 if there's a shipping disruption.” Safety stock covers the tail of that distribution. Without it, every bad month produces a stock-out.
How do I value unsold inventory on my books?
At cost (loaded COGS), not at retail. See our true cost-per-bar guide for the full costing method. Inflating inventory to retail value makes your balance sheet look healthier but misleads your own tax and planning decisions. Talk to your accountant about the right valuation method for your entity.
The cheat sheet
| Question | Short answer |
|---|---|
| Four inventory classes? | Raw cacao, in-progress, finished goods, packaging |
| Reorder point formula? | (lead time × weekly use) + safety stock |
| Safety stock rule of thumb? | 2–3 weeks of consumption for essentials |
| FIFO discipline? | Date every receipt; physical arrangement reflects age; receiving ritual |
| Batch-to-lot linkage? | Required — recall capability and FSMA 204 readiness |
| Physical count cadence? | Weekly quick check; monthly full; quarterly shelf-life audit |
| Biggest mistake? | Treating all inventory as one bucket with one reorder rule |
Inventory discipline is the quiet accelerator behind every successful craft chocolate operation. It doesn't look like craft the way a good roast profile or a well-designed wrapper does, but it determines whether your actual P&L matches what you think it should be. Makers who get inventory right spend their attention on chocolate; makers who don't spend their attention chasing stock-outs, writing off aged cacao, and reconciling recall traces under pressure.
Pair this post with our production calendar guide (production and inventory are the same operational conversation from different sides), our sourcing guide (upstream lead times drive your safety stock), and our FSMA 204 guide (batch-to-lot linkage is where inventory and compliance meet).