The "cost of inventory" field is a calculated column: #{length _m_} * #{cost __m_}. That single formula is the whole argument for why this template exists. Every metre of fabric that enters your atelier has a real dollar value attached to it, and if you're running a business, that value has to be auditable.
When the Stash Becomes a Liability
A fabric collection that outgrows its original container — a couple of shelf bins, a spare room corner, eventually an entire spare room — doesn't fail all at once. It fails one project at a time. You buy a metre and a half of a ponte double-knit because you're certain you have nothing suitable for a size 14 blazer block, and two months later you find 2.3 metres of the same weight in a different colourway shoved behind your interfacing rolls.
The issue isn't volume. Professional ateliers carry hundreds of pieces. The issue is metadata loss. You stop remembering what you have, where it is, whether it's been pre-washed, and what you paid for it. At that point the stash is no longer an asset — it's a storage problem.
The separation between personal and business stock is also chronically underhandled in sewing circles. The moment you sell a garment made from your personal collection, you have a cost basis problem with no paper trail.
The Fields That Actually Earn Their Keep
The woven/knit distinction is the first filter any experienced sewist applies when pulling fabric for a new project — before colour, before print, before anything else. Getting that wrong at the selection stage means your pattern blocks are wrong, your ease calculations are wrong, and you don't find out until you've cut. Having it as a hard choice field (Woven, Knit, Stretch Woven, Nonwoven) rather than a free-text note means your filter actually works.
The knit stretch field is where this template earns serious points. Most fabric trackers that include a "stretch" field leave it as free text, which is useless for filtering. This one prompts for directionality: 2-way (2×) or 4-way (4×), and percentage stretch in each direction (e.g., 50/20, 60/20). That's the format professional pattern instructions actually use when they specify fabric requirements. If you're working from any performance or activewear pattern that specifies "50% two-way stretch woven", you can filter your stash on those exact parameters.
The properties multichoice — Stable, Drape, Recovery — mirrors exactly how pattern designers describe their fabric requirements. Stable is your shirting cottons and canvas. Drape is your rayon challis, your crepe de chine. Recovery is your ponte, your scuba. These three properties are more diagnostic than fibre content alone: a 95/5 cotton-spandex can be stable or have reasonable recovery depending on the weave. Tagging correctly here means your pattern-to-fabric matching actually works instead of relying on memory.
When You Need the Answer in Three Seconds
You've promised a client a jacket for Saturday. It's Thursday afternoon. The wool suiting you ordered hasn't arrived. You need something structural, at least 150cm wide, ideally in a dark neutral, definitely pre-washed because there's no time to wash and press before cutting.
You filter: Woven. Properties includes Stable. Width ≥ 150. Pre-washed = true. Colour includes Black, Grey, or Brown. Business owned = true (you're not cutting into personal stock for a client piece).
Five records come back. Two are off-cuts flagged accordingly — too small for a full jacket front. You open the third: 2.8 metres of a charcoal wool-poly blend, Storage Location field says "third shelf, bin 2, left side". You're at the shelves in ninety seconds. Cost of inventory auto-calculated at NZD 84.00. You know your margin before you've touched the fabric.
That retrieval speed is the whole point. The database doesn't replace your textile knowledge — it just stops that knowledge from leaking out of your head every time the stash grows by another twenty pieces.