Coffee Roastery Inventory Management: Green Beans to Roasted Batches
Coffee roastery inventory software that tracks green beans to roasted batches, blend BOMs, roast-loss shrinkage, and FEFO roast dates. Try Shelvr free.
On this page
- Why coffee roasteries are hard to inventory: two products, two shelf lives
- Tracking green coffee: bags, lots, origins, and moisture
- The production step: green to roasted with a bill of materials
- Roast loss and shrinkage: where your margin disappears
- Blends and BOMs: pre-blend vs post-blend recipes
- Freshness and FEFO: selling by roast date, not just batch
- Demand planning for wholesale and subscription orders
- Why offline-first matters on the roastery floor
Coffee roastery inventory software has to do something most inventory tools were never built for: track two completely different products that used to be the same coffee. A wholesale roastery holds green beans that keep for a year and roasted coffee that peaks in two weeks, and the roaster itself is the machine that turns one into the other while quietly burning off 15% of the weight. If your stock system can't follow a lot of green Colombian through a roast batch and out into bagged finished goods, it isn't tracking your business — it's tracking half of it.
This guide walks through how to inventory a wholesale roasting operation the way it actually runs: green lots in, roast batches out, shrinkage measured, blends built from a recipe, and everything shipped oldest-roast-first. The connective tissue is a bill of materials, because that's the only honest way to link what you bought to what you sold.
Why coffee roasteries are hard to inventory: two products, two shelf lives
A roastery holds two fundamentally different inventories that share a name and almost nothing else. Green (unroasted) coffee is a raw material. Stored properly — cool, dry, off the floor — it holds quality for months and often a year or more. Roasted coffee is a perishable finished good, best sold within a few weeks of the roast date. Fold them into one "coffee on hand" number and every downstream decision goes wrong: you'll over-roast, you'll let green sit past crop freshness, and you'll never see where margin leaks.
The cleanest mental model is a set of stages every bean passes through:
- Green on hand — raw material, tracked by lot.
- Work in progress — currently roasting.
- Roasted bulk — resting and degassing, not yet packaged.
- Packaged finished goods — retail 12 oz bags, wholesale 2 kg / 5 lb, subscription units.
Accountants usually model the roast as a work-in-progress transfer from green to roasted. That's exactly right, and it's why a production-aware system matters — the moment of transformation is where the two inventories connect.
Tracking green coffee: bags, lots, origins, and moisture
Green coffee is bought and stored by weight, in whole bags, almost always tracked in kilograms or pounds. The industry-standard sizes are worth building your units around: 60 kg (about 132 lb, common across Africa and Central America), 69–70 kg (Colombia ships 70 kg), plus smaller 30–35 kg bags and micro-lot boxes. Bags are jute or burlap, frequently with a GrainPro or Ecotact hermetic liner that slows oxidation and holds freshness. Many roasters buy spot positions held at an importer's warehouse and release bags as they need them, so your reorder logic has to respect an importer lead time, not a same-week restock.
The trap is treating green as a single fungible pile. Each lot is its own item with attributes you'll want on record for cupping, traceability, and troubleshooting:
- Origin, farm or co-op, and process (washed, natural, honey)
- Crop year — freshness of the green matters, not just the roast
- Moisture content — green typically arrives at 10–12%; drift signals storage or roast-yield problems
- Certifications (organic, Fair Trade) and a lot / traceability code
Green storage isn't passive. Moisture, mold and mycotoxins, pests, and debris all degrade a lot in place. Whatever moisture reading you logged at intake won't hold forever in a humid warehouse — and a shifted moisture level changes how much roasted coffee that bag will yield.
The production step: green to roasted with a bill of materials
Here's the operation everything else hangs on. A roast is a transformation: green coffee goes into the drum, roasted coffee comes out, and weight is lost on the way. A generic inventory app can decrement one SKU and increment another, but it can't tell you that a specific 70 kg lot of green became 59 kg of roasted at a measured loss — and that gap is your whole margin story.
This is where a bill of materials earns its place. In Shelvr, a roast batch is a production run: it auto-deducts the green-bean components and receives the roasted yield as a new item. For a single origin, that's one green lot in, one roasted item out. For a pre-blend, it's several lots weighted by percentage. The difference between green input weight and roasted output weight is captured as waste / shrinkage — so roast loss stops being a mystery and becomes a number on every batch.
A packaged bag is simply a second BOM level: roasted coffee + valve bag + label becomes a finished unit, and building one deducts all three. This mirrors how any maker-manufacturer assembles a finished good — the same pattern covered in inventory for makers and manufacturers, applied to coffee.
The roast is the one moment your green inventory and your roasted inventory are the same coffee. Capture the weight on both sides of it, or you'll never know your true yield.
Roast loss and shrinkage: where your margin disappears
Roasting drives off moisture as steam, sheds chaff, and off-gasses CO2, so roasted weight is always less than green weight. Typical roast loss runs 12–20%: around 11–16% for specialty light-to-medium roasts, closer to 10% for very light coffees dropped near first crack, and up to 20–25% for dark roasts taken past second crack. The formula is simple and worth logging every time:
weight loss % = (green weight − roasted weight) / green weight × 100
Record green-in weight, roasted-out weight, shrinkage %, batch ID, roast level, and profile per batch. That loss percentage is what makes your true cost of goods honest — the coffee that left as steam still cost you — and it feeds yield forecasting. When a batch comes in at an unexpected shrinkage, that variance is a flag: a moisture problem in the green, a profile that ran long, or a scale that's off.
| Roast level | Typical weight loss |
|---|---|
| Very light (dropped at first crack) | ~10% |
| Light to medium (specialty) | 11–16% |
| Dark (past second crack) | 20–25% |
Shrinkage isn't the only leak. Chaff, spillage, defect sorting (quakers, underdeveloped beans, stones and debris), sample and cupping roasts, and stale unsold roasted stock all bleed weight. Waste tracking alongside your batches turns each of these from a fuzzy shortfall into a line you can see and shrink.
Blends and BOMs: pre-blend vs post-blend recipes
A blend is a BOM with percentages. There are two ways to build one, and the choice changes your inventory shape.
Pre-blend
Pre-blending weighs the green components together and roasts them as a single batch. Wholesale roasters tend to favor it: no extra blending labor or equipment, one storage bin, and one roast that can fill orders. In BOM terms, the recipe lists each green lot and its share, and one production run deducts all of them at once by percentage.
Post-blend
Post-blending roasts each component separately and combines the roasted coffee afterward — more control over each component's development, but more roasted SKUs and a second combining step to track.
A workable blend convention: a base for body, one component for sweetness, one for acidity or brightness. Keep any single component at 15% or more — below that it rarely changes the cup enough to justify the recipe complexity or the extra lot in your BOM.
Freshness and FEFO: selling by roast date, not just batch
Roasted coffee has a clock. Beans release about half their CO2 in the first 24 hours and need to degas — rest 1–3 days while flavor is sharp and unstable, hit peak around days 4–14, stay good through roughly day 15–30, and generally ship within about five weeks. That's why the meaningful stamp on a bag is the roast date, not a generic best-by, and why bags use one-way degassing valves.
Inventory should be picked and shipped oldest-roast-first — FEFO by roast date — so wholesale cafes and subscribers always get coffee near peak freshness and nothing lingers into staleness. Batch tracking keyed to roast date makes this automatic rather than a matter of someone reading Sharpie dates on a shelf; the same batch and expiry tracking that protects any perishable applies cleanly to roasted coffee.
Demand planning for wholesale and subscription orders
Wholesale is the part of this business you can forecast. Standing accounts — cafes, offices, grocery — plus monthly subscriptions give you a predictable daily roast volume, which is a luxury most perishable-goods businesses don't have. The best-practice move is to set par levels (min–max roasted stock) per core blend: never less than about a day on the shelf, never more than roughly five days, so freshness holds. Review weekly about a month out, adjust for seasonality, and commit to a fixed wholesale roast schedule instead of reactive bulk roasts.
Green reorder points are the twist. Because of roast loss, you always need more green than the roasted quantity you owe — bake the shrinkage factor and the importer lead time into the trigger:
green reorder point = (roasted demand ÷ (1 − roast loss %) × lead time) + safety stock
Reorder points and demand forecasting for a small business are what keep you from stocking out of a signature blend's green mid-season. You can see the plan and Pro pricing for forecasting and BOM features on the pricing page.
US roasters selling across state lines hold an FDA food facility registration and follow cGMPs under a FSMA food safety plan. Lot and traceability codes are what tie every finished bag back to its green shipment — another reason to track green by lot from intake, not just as bulk weight.
Why offline-first matters on the roastery floor
Roasting floors, green warehouses, and walk-in storage are exactly the places phones lose signal — concrete, metal, back corners. If counting a bin or logging a roast batch requires bars, the log doesn't happen and your numbers drift. Shelvr is offline-first: scan a green bag, record a roast batch, adjust roasted stock, or run a transfer with no connection, and it all syncs across devices once you're back online.
That also suits larger operations that split green warehouse, roasting floor, and retail or cafe locations and move stock between them. Multi-location transfers let a bag of green move from the warehouse to the roasting floor, and finished bags move out to the cafe, with each site's counts staying honest. Green in, roasted out, weight accounted for, oldest shipped first — that's the whole loop, and it's the loop a roastery-aware system is built to close.
Run your inventory in one app
Track stock, orders, and production across web, iOS, and Android — free to start.