Contents

Roasters roast on set days, and shoppers want to know when their bag will be roasted. Roast turns your real schedule into a next-roast date, an order cut-off countdown and freshness stamps across the store. You set it once in Theme settings › Roast schedule.

Note

Use your real schedule. Shoppers rely on these dates, and the countdown is a real recurring deadline: when a cut-off passes it moves on to the next one, the same for every shopper. Don't use it to invent urgency.

Settings

SettingDefaultWhat it does
Show the roast scheduleOnTurns every next-roast date and the roast countdown on or off. Roast date stamps from the custom.roast_date metafield still work when it's off.
Batch wordroastThe noun in "Next roast Thursday 23 October": roast, batch, bake.
Roast on Mondays … Roast on SundaysMonday and ThursdayThe days you roast. With none ticked, the schedule is off.
Order cut-off9 h (0 to 23)The hour, in your store's time zone, after which orders go in the next batch. 9 means 9 am.
PostedThe day of the roastOr The day after the roast. Changes "posted the same afternoon" to "posted the next day".
Days offEmptyOne date per line, written YYYY-MM-DD, such as 2026-12-25. No roast on these days; the next roast day takes over.
Card stampsRoast date or next roastOff removes every stamp. Roast date only stamps products that have a roast date. Roast date or next roast also stamps roast-to-order products with the next roast.
Show roast dates for30 d (7 to 60)How many days a "Roasted 20 Oct" stamp stays up after the roast date.
Stamp every productOffOff: only products tagged roast-to-order or with a roast date get a stamp. On: every product without a roast date is treated as roast-to-order.
Word for a past batchRoastedAs in "Roasted 20 Oct": Made, Baked.
Word for the next batchRoastingAs in "Roasting 23 Oct": Making, Baking.

Time zone

The schedule works in your store's time zone, set in Shopify admin under Settings › General › Store defaults › Time zone. Check it before you go live: a 9 am cut-off is 9 am there, wherever the shopper is. Daylight saving changes over the next three weeks are taken into account.

How the next roast is worked out

The next roast is today, if today is a roast day, isn't a day off, and the cut-off hour hasn't passed. Otherwise it's the next ticked day that isn't a day off. Roast looks up to three weeks ahead; if every roast day in that time is a day off (a long holiday closure), the next-roast lines hide instead of showing a wrong date.

The dates are worked out in the shopper's browser from its own clock, and refreshed every 30 seconds. Pages can be cached, so nothing prints a date the server worked out in advance. Without script, the same places show a sentence built from your ticked days instead: "Roasted to order every Monday and Thursday."

Where it shows

WhereWhat shoppers seeTurned on by
Announcement bar"Next roast closes in 1d 14h 22m", counting down to the next cut-offA Countdown block with Count down to set to The next roast cut-off
Hero"Next roast Thursday 23 October. Order by 9 am and it's in that batch."Hero › Show the next roast
Product cardsA round stamp: "Roasted 20 Oct" or "Roasting 23 Oct"Card stamps, a roast date or the roast-to-order tag
Product imageA larger stamp, with the lot: "Roasted 20 Oct · Lot 0412"The same as cards
Buy box"Roasted to order. Next roast Thursday 23 October, posted the same afternoon. Order in the next 14 h 22 m."A Freshness block on the product page
Subscription builder"First bag roasted Thursday 23 October."Show the first roast date
Cart lines"Roasting Thursday 23 October" under a roast-to-order itemAutomatic
Empty cart"Order now and it goes in the next roast, Thursday 23 October."Automatic

Sold-out products never get a stamp.

Roast dates and pre-order lots

A product with a custom.roast_date shows that date instead of the next roast:

  • A date in the past, within Show roast dates for: "Roasted 20 Oct" on the stamp, and "Roasted Tuesday 20 October. Lot 0412." in the Freshness block.
  • A date in the future, such as a pre-order lot: "Roasting 29 Oct", and "Roasting Thursday 29 October. Order now and it goes out with that roast."
  • A date older than the window: no date stamp. With Card stamps on Roast date or next roast, a roast-to-order product falls back to the next roast.

Update the roast date when a new lot comes out of the roaster, or tag the product roast-to-order and let the schedule do it.

The Freshness block

Add it to the product page's buy box (Product section › Add block › Freshness). Settings:

SettingDefaultWhat it does
Show the order countdownOnAdds "Order in the next 14 h 22 m." (not used with Custom text)
Custom textEmptyReplaces the roast-to-order sentence. Write [date] for the next roast and [countdown] for the time left to order: "Fresh from the roaster on [date]. Order within [countdown]."

The block shows nothing for a product with no roast date and no roast-to-order tag (unless Stamp every product is on). In the theme editor it shows a sample sentence with a note saying what turns it on.

Schedule off

With Show the roast schedule off, or no roast day ticked, every next-roast line, the roast countdown and the "Roasting" stamps hide, and the hero shows its Stat blocks instead of the next-roast line. "Roasted 20 Oct" stamps from roast dates keep working while Card stamps isn't Off. In the editor, a next-roast countdown block shows a note: "Not shown to shoppers: turn on the roast schedule and tick a roast day."