Dried herbs don't spoil; they fade. Their flavor lives in volatile oils that slowly evaporate, and their green color fades in light, so an old jar of oregano tastes like dust and looks like it. Light, air and heat speed it up; a tight jar in a dark cupboard slows it. Whole leaves keep longer than crumbled or ground. In the example below, a Duluth spice shop's sealed jars of dried oregano passed every test through day 480, and they say best by 360 days, a 25% margin. Below is what ends dried herbs' shelf life, how storage changes it, the study, the date on the label, and a free template.
The short version
- Dried herbs fade; they don't spoil if kept dry.
- Volatile oils evaporate; color fades in light.
- Tight jars, dark shelves, cool rooms.
- Whole leaves keep longer than ground.
- Run a real-time study and leave a margin before the date.
- The date is a best-by: quality, not safety.
- TaroStack gives every batch its date from the shelf life you set. More below.
What ends its shelf life
| What ends it | What happens | What slows it |
|---|---|---|
| Aroma loss | Volatile oils evaporate; flavor flattens | Tight jars; whole leaves; small batches repacked often |
| Color fading | Green turns gray-brown in light | Amber or opaque jars; out of sunny windows |
| Moisture | Damp herbs clump and can mold | Dry storage; sealed jars |
| Heat | Speeds every change | Away from stoves and sunny windows |
What a spice shop needs to open is in how to open a spice shop, and what goes on the jar in spice labeling requirements.
How it's stored
| Stored | In the example's tests | On the label |
|---|---|---|
| Sealed glass jar, dark shelf | Passed every test through day 480 | Best by 1 year |
| Clear jar in a sunny window display | Faded and weak by day 180 in a side study | Display jars swapped monthly |
| Bulk bag, opened in the shop | Not part of the study | Repacked within three months of opening |
The shop buys oregano in quantities it sells within months, and repacks small batches rather than filling a year of jars at once.
An example: a shelf life study
Lakewalk Spice Co., the made-up spice shop in Duluth, Minnesota, I use in these examples, kept sealed jars of dried oregano from one repacking on a dark shelf and opened one at each pull:
| Test | Pass if | Day 0 | Day 120 | Day 240 | Day 360 | Day 480 | Day 600 |
|---|---|---|---|---|---|---|---|
| Aroma score, 1 to 9 | at least 6 | 9 | 9 | 8 | 7 | 6 | 5 |
| Color score, 1 to 9 | at least 6 | 9 | 9 | 8 | 8 | 7 | 6 |
| Taste score, 1 to 9 | at least 6 | 9 | 9 | 8 | 7 | 6 | 5 |
| Clumping, 1 to 5 | at most 2 | 1 | 1 | 1 | 1 | 1 | 2 |
| All pass? | Pass | Pass | Pass | Pass | Pass | Fail |
Everything passed through day 480; at day 600 the aroma and taste fell below 6. Taking a 25% margin off day 480 gives 360 days, a year. How the pulls and margin are planned is in shelf life testing.
The date on the label
Dried herbs' date is a quality date: "Best by" or "Best if used by". In California, food made from July 1, 2026 that shows a date uses "BEST if Used by" for quality, in sell by date law, and how to write the date is in best by date format. The shop dates each jar from the day the bulk bag arrived, not the day the jar was filled, and carries the supplier's lot onto the jar, in lot number on food packaging.
Get the template
Download the dried herb shelf life study template. One sheet: the product, the lot tested, the day it was made, how it's stored and the margin to leave; then each test with its limit and the result at each pull. It marks each pull pass or fail, finds the last day everything passed, takes the margin off, and gives the shelf life for the label and the date for a batch made today. It's an ordinary Excel file with no macros, and it works in Google Sheets, LibreOffice and Numbers.
Where this stops working
The study gives one date for one herb. A hundred herbs and spices, repacked in small batches, refill bags and jars, two restaurants: someone has to date each repacking, carry the supplier's lot with it, and sell the oldest jars first.
How TaroStack does it
TaroStack gives every batch its date from the shelf life you set, and sends the oldest out first.
Dates from the shelf life. Each herb carries its shelf life in days, and each batch's lot gets its production date and the date that follows from it.
First-expired-first-out. Orders take the oldest lots first by default, and a restaurant can be set to take only stock with enough days left.
What's coming up. A forecast shows what will expire unsold and what it costs, and anything thrown out is recorded with its reason, expired or spoiled, so waste shows by item.
| The job | Spreadsheet | In TaroStack |
|---|---|---|
| The date on a batch | Worked out by hand | From the shelf life, on the lot |
| Which batch goes out first | Dates on tape | First-expired-first-out |
| Stock with enough days for a restaurant | Checked by hand | The customer's shelf-life rule |
| What expired last month | Not counted | Waste by reason |
Lots, dates, first-expired-first-out and the expiry forecast are on every plan, from $49 a month. The first 30 days are free, with no credit card. If you'd like a hand setting up, ask, and we'll do it with you.
