Bakery Production Planning: Oven Slots and a Prep Timeline With AI

Coding Liquids tutorial cover featuring Sagnik Bhattacharya for Bakery Production Planning: Oven Slots and a Prep Timeline With AI.
Coding Liquids tutorial cover featuring Sagnik Bhattacharya for Bakery Production Planning: Oven Slots and a Prep Timeline With AI.

Give an AI assistant three things: tomorrow's orders with ready-by times, a sheet of your own step timings for each product, and the limits of your ovens and staff. Ask it to work backwards from every ready-by time. It returns oven slots grouped by temperature and a task timeline for each baker, which you check before anyone mixes a thing.

The assistant is good at sequencing and poor at knowing your kitchen. Left alone it can load a deck that is still recovering, pack loaves that are still steaming, or have one baker unloading and mixing in the same minute. So most of the effort goes into the inputs and most of the checking into arithmetic. This is a timeline, not a forecast: for how many to bake, start with predicting demand and unsold stock.

Follow me on Instagram@sagnikteaches

Tomorrow's orders and the two ovens in this example

The bakery here is made up, so every figure is illustrative. It is a neighbourhood shop with a head baker, an assistant baker, counter staff who arrive at 07:15 and a driver who takes the wholesale run. The ovens are a two-deck oven (each deck takes eight 800 g loaves, runs at its own temperature and has steam) and a five-tray convection oven. A retarder-prover with a timer holds shaped dough cold overnight and warms it at a set hour. Both bakers work 06:00 to 14:00. The shop opens at 08:00, which is also when the van leaves.

Connect on LinkedInSagnik Bhattacharya

Wednesday's orders, as they stand at the 11:00 cut-off on Tuesday, look like this. Thursday's are the same quantities, which matters later for the prep half of the plan.

Subscribe on YouTube@sagnikteaches
ProductFor the 08:00 vanFor the shopShop ready-byTotal
Sourdough loaf, 800 g161608:0032
Croissant243608:0060
Cinnamon bun02409:3024
Cheese scone02410:0024
Focaccia, full tray0211:452

Two things in that table shape the plan before any AI is involved. Sourdough is 32 loaves and the decks hold 16 at a time, so there are two oven cycles whatever anyone writes. And the wholesale column has a hard deadline (the van leaves), while the shop column has soft ones (a customer waits five minutes; a café driver does not). Mark which is which, because the assistant needs to know which promise it may bend first. If the wholesale side is a large share of your day, the standing-order side is covered in wholesale and standing orders for a bakery.

Time a batch yourself: the sheet the AI cannot guess

Recipe cards give total times. A plan needs four separate numbers for each product: the hands-on minutes before baking, the waiting time before baking (prove or rest), the bake itself and the cooling before it can be packed. Add a fifth that almost nobody records: how long the product can wait once it is ready for the oven before it spoils. A proved croissant left to sit for 40 minutes can over-prove and leak butter in the oven, so that limit decides whether it can be baked after something else.

ProductHands-on before bakingWaiting before bakingBakeCool before packingLongest it can wait, ready to bake
Sourdough, 800 gScore: 15 min per 16 loavesNone; baked cold from the retarder230 °C with steam, 40 min35 min for wholesale, 20 min for the shop60 min, kept cold
CroissantEgg wash: 10 min per 5 traysProve 2 h; the prover timer starts warming at 04:30190 °C, 18 min20 min20 min, then it over-proves
Cinnamon bunNone; shaped the day beforeProve 60 min at 28 °C190 °C, 22 min20 min15 min
Cheese sconeMix, cut and tray: 25 minNone200 °C, 18 min10 min15 min
Focaccia trayDress: 15 minProve 60 min220 °C, 25 min15 min20 min

Get these figures by timing one real batch of each product on an ordinary day, with a phone note for start and finish. Four or five days of notes show the spread; use the slower figure when in doubt, because a plan built on best-case times fails on the first cold morning. The same sheet doubles as the thing you hand a new baker, and the hands-on minutes per product are exactly what a bakery pricing calculator needs for its labour line, so one set of timings feeds two jobs.

Three oven facts and the fixed blocks go in as well:

  • Loading or unloading one deck takes 5 minutes of one person, and a deck needs 5 more minutes to recover before the next load.
  • The convection oven heats about 10 °C a minute and cools about 10 °C every 3 minutes with the door ajar. Cooling is the slow direction, which is why bakes should climb from low to high temperature where they can.
  • Each baker has one 20-minute break, the van leaves at 08:00 and the shop opens at 08:00. These are walls, not preferences.

The prep steps for the following day need hands-on figures too. In this example: scaling the sourdough ingredients takes 20 minutes, each of two mixes takes 20 minutes (the mixer holds 15 kg and 32 loaves need about 26 kg of dough), bulk fermentation runs 4 hours with two short folds, dividing and pre-shaping takes 45 minutes with two people, bench rest is 20 minutes and shaping 32 loaves takes 30 minutes with two people. Shaping 60 croissants from dough that was laminated and rested earlier takes 60 minutes. Cinnamon bun dough takes 20 minutes to mix, a 60-minute bulk, then 40 minutes to roll, fill and cut.

The prompt that asks for slots and a list of misses

I give the assistant the orders table, the spec table and the oven facts exactly as they appear above, plus a short set of rules. The rules do most of the work, and each exists because a plain request produces the mistake it prevents. Any of the main chat assistants (ChatGPT, Claude, Gemini or Copilot) can take the prompt, so use the one your team already has.

You are planning tomorrow's production for a small bakery. Work backwards
from every ready-by time. Plan the bakes for WEDNESDAY and, inside the same
06:00 to 14:00 shift, the prep that WEDNESDAY's team must finish for THURSDAY
(Thursday's orders are the same quantities).

ORDERS: [paste orders table]
PRODUCT TIMINGS: [paste spec table]
PREP STEPS FOR THURSDAY: [paste the prep list]
EQUIPMENT AND PEOPLE:
- Deck oven: 2 decks, independent temperatures, steam on both. 8 loaves of
  800 g per deck. Load 5 min, unload 5 min, 5 min recovery before the next load.
- Convection oven: 5 trays, one temperature at a time. +10 C takes 1 minute,
  -10 C takes 3 minutes.
- Retarder-prover with timer. Both ovens are already hot at 06:00.
- Baker 1 and Baker 2, 06:00 to 14:00, one 20-minute break each.
  Counter staff arrive at 07:15 and can bag and tray but not bake.
- Van leaves at 08:00 with wholesale packed. Shop opens at 08:00.

RULES
1. One person does one task at a time. Show who does every step.
2. For every step give start, duration and end. Do the addition visibly.
3. Never pack an item before its cooling time has passed.
4. Never let an item wait longer than its limit once it is ready to bake.
5. Order bakes from low to high oven temperature where you can.
6. Keep a 45-minute buffer for Baker 1 between 11:30 and 12:15.
7. If any ready-by time cannot be met, say so. Give the earliest time, what
   causes it and two ways to fix it with their cost. Never hide a miss.

OUTPUT: a table (Time | Baker 1 | Baker 2 | Deck oven | Convection oven),
then a list of every ready-by time with the slack in minutes.

Rule 7 is the most useful line in the prompt. Without it, assistants tend to produce a tidy plan that quietly misses a deadline. With it you get the conversation you need to have with yourself the evening before, not at 08:05 with a customer at the counter.

Five faults in the first draft, and how each was caught

This first draft is illustrative, but the five faults in it are the usual ones. It looked professional: a clean table with start and end times, and it was wrong in five places. Look for each of them in whatever your assistant returns.

  1. Arithmetic drift. It loaded the first deck at 06:20, gave a 40-minute bake and wrote "out 07:10". Adding 40 minutes to 06:20 gives 07:00. Every later step on that deck inherited the ten-minute error. A check column (end minus start, compared with the stated duration) finds this kind of slip in seconds.
  2. Cooling skipped. Wholesale loaves were bagged at 07:15, five minutes after leaving the oven, although the spec table said 35 minutes. The assistant used the figure in one place and ignored it in another.
  3. One person, two jobs. Baker 1 was unloading the first deck and mixing Thursday's dough at 07:00. Chat assistants tend to treat people as unlimited unless told otherwise; rule 1 now says so, and an overlap check per person backs it up.
  4. Hold limit broken. Putting buns ahead of croissants in the convection oven made the croissants wait 35 minutes after proving, against a 20-minute limit. It reads as sensible until you check the last column of the spec table.
  5. A silent miss. The draft showed shop sourdough on the shelf at 08:00. The decks empty at 08:00 and 08:05, and 20 minutes of cooling puts the loaves out at 08:20 to 08:25. Nothing in the draft admitted the gap.

Two formulas that police the plan

Paste the plan into a sheet with one row per task: person in column A, start time in B, minutes in C, end time in D. Two formulas do the policing. The end time is =B2+C2/1440, because spreadsheets store times as fractions of a day. The clash flag is =COUNTIFS($A$2:$A$60,A2,$B$2:$B$60,"<"&D2,$D$2:$D$60,">"&B2)>1, which returns TRUE when the same person has another task overlapping this one. Add conditional formatting so TRUE rows turn red, and compare each end time with the ready-by list. If rounding gives false alarms, store times as minutes after midnight (06:20 is 380) instead.

If you would rather not touch formulas, paste the plan back into the chat with a second instruction: check each row so that end equals start plus duration, list any person with overlapping tasks and list every ready-by time that is missed. Treat the answer as a second opinion rather than proof, since it comes from the same system that made the slip. The spreadsheet is the referee.

The corrected plan for 6am to 2pm

This is the plan after the five faults were fixed and the sheet showed no clashes. Times are 24-hour, D1 and D2 are the two decks, and the counter staff are not in the table: they set up the display from 07:15, bag the wholesale loaves from 07:45 to 07:55 and open the shop at 08:00.

TimeBaker 1Baker 2Deck ovenConvection oven
06:00 to 06:3006:00 check decks at 230 °C, steam on, score 16 loaves. 06:15 load cycle 1 (D1 06:15, D2 06:20). 06:25 score cycle 2 loaves, to 06:40.06:00 egg-wash 60 croissants. 06:10 pack prep: boxes, bags, racks. 06:30 load croissants, to 06:35.D1 bakes 06:20 to 07:00. D2 bakes 06:25 to 07:05.Hot at 190 °C. Croissants finish proving at 06:30.
06:30 to 07:0006:40 scale Thursday's sourdough ingredients, to 07:00.06:35 wash trays. 06:53 unload croissants. 06:58 bun trays into the prover.Both decks baking.Croissants bake 06:35 to 06:53.
07:00 to 07:2007:00 unload D1, then D2 at 07:05. 07:10 load cycle 2 (D1 07:10, D2 07:15).Free until 07:20.Cycle 1 out. D1 bakes 07:15 to 07:55. D2 bakes 07:20 to 08:00.Idle. Croissants cool until 07:18.
07:20 to 08:0007:20 bench clean, stock check, order sheet. 07:55 unload D1.07:20 box 24 wholesale croissants, tray shop croissants. 07:55 mix Thursday's sourdough, first mix, to 08:15.Baking.Idle.
08:00 to 08:4008:00 unload D2, to 08:05. 08:05 load buns. 08:10 break to 08:30. 08:32 unload buns, to 08:37.08:15 mix Thursday's sourdough, second mix, to 08:35.Empty until 10:15.Buns bake 08:10 to 08:32 at 190 °C.
08:40 to 09:2008:40 scale bun dough. 09:00 mix Thursday's bun dough, to 09:20.08:35 mix scone dough, cut, tray, to 09:00. 09:00 set oven to 200 °C. 09:10 load scones.Empty.Heating to 200 °C. Scones bake 09:15 to 09:33.
09:20 to 10:0009:20 dress two focaccia trays and put them in the prover, to 09:35.09:33 unload scones, to 09:38.Empty.Idle.
10:00 to 11:0010:00 fold the sourdough, to 10:10. 10:35 load focaccia into D1, to 10:40.10:00 break to 10:20. 10:20 roll, fill and cut Thursday's buns, to 11:00. 11:00 trays into the retarder.D1 set to 220 °C at 10:15. Focaccia bakes 10:40 to 11:05.Idle.
11:00 to 12:1511:05 unload focaccia. 11:12 second fold. 11:25 cut focaccia and take to the counter. 11:30 to 12:15 buffer.11:05 shape 60 croissants for Thursday, to 12:05. 12:05 trays into the retarder-prover, timer set for 04:30.Idle.Idle.
12:15 to 13:00Divide and pre-shape Thursday's 32 loaves, first mix then second from 12:35.Same, working alongside Baker 1.Idle.Idle.
13:00 to 14:0013:00 bench rest and clean-down. 13:20 shape 32 loaves into baskets, to 13:50. Baskets into the retarder, handover note.13:20 shape 32 loaves with Baker 1, to 13:50. Then clean down, ovens off.Off.Off.

The list of ready-by times that came with it is as useful as the table. Wholesale sourdough is cooled by 07:45 and bagged by 07:55, so the van has only 5 minutes of slack, the thinnest margin in the day. Wholesale croissants are boxed by 07:40, 20 minutes ahead of the van. Buns are ready at 08:57 against 09:30, scones at 09:48 against 10:00 and focaccia at 11:25 against 11:45. Shop sourdough is the miss: 08:20 for the first deck's loaves and 08:25 for the second's, against 08:00.

The assistant gave two ways to close that gap. Baker 1 could start at 05:30, which pulls both cycles 30 minutes earlier at the cost of 30 minutes of labour a day. Or the shop could sell sourdough from 08:30. That is a decision for the owner, not the model, and here the second option wins: the counter staff now say "sourdough from half past eight" and the online order page shows the same time.

The plan books about 675 of 920 available person-minutes (73%), after breaks. The unbooked quarter is where rush orders, a slow prove and a chatty supplier live, which is why rule 6 reserved a buffer rather than packing the day to the minute. For rotas that must also cover customer-facing hours, AI shift scheduling for small teams covers the staffing side.

Working backwards: how Thursday's bake sets Wednesday's mixing

The prep timeline is the same sum run in reverse. Start at the minute a product must be in the oven, then subtract each step's duration until you reach the minute someone has to touch it. The assistant does this reliably when it is given the specs and told to show every step with its start time. Three chains from the plan above show the pattern.

Thursday's sourdough must be in the decks at 06:15. Scoring starts at 06:00, so the baskets must have sat in the retarder since 13:55 on Wednesday, about 16 hours. Shaping runs 13:20 to 13:50, after a 20-minute rest that follows dividing from 12:15 to 13:00. The first mix finishes its 4-hour bulk at 12:15, which means it was mixed from 07:55 to 08:15, and its ingredients were scaled at 06:40. The sum for the dough itself: 32 loaves at 0.8 kg is 25.6 kg, plus about 3% for scraps is 26.4 kg, so two mixes of roughly 13.2 kg in a mixer that takes 15 kg. Two mixes mean two bulk clocks, which is why the second batch is divided from 12:35.

Thursday's croissants bake at 06:35, so they must be proved by 06:30. Proving needs 2 hours, so the prover timer starts warming at 04:30, and the trays have to be in the prover by 12:10 on Wednesday after being shaped between 11:05 and 12:05. That chain starts a day earlier still: the dough was laminated and rested the day before, so a Tuesday plan owns the first link. Thursday's buns bake at 08:10 after a 60-minute prove that starts just before 07:00, and they were rolled on Wednesday between 10:20 and 11:00 from dough mixed at 09:00.

Notice what the chains do to the day. The longest chain, sourdough, forces a mix at 07:55 that collides with the busiest oven hour. The plan only works because Baker 2 has no oven duties then. Ask the assistant to flag any prep step that lands in the middle of an oven handover, and to move it if it can; it will not think of this unprompted.

When the morning goes wrong: four re-plans

The same inputs make re-planning a two-minute job. Keep the chat open, change one fact and ask again. Four situations come up often enough to rehearse.

A deck goes down. Message: "Deck 2 will not hold temperature today. Same orders, same rules. Re-plan and say what is missed." With one deck, capacity falls to 8 loaves per cycle. The answer in this example: 8 loaves go on the 08:00 van, the other 8 wholesale loaves follow on a second run at about 09:00, and shop sourdough reaches the shelf at 09:15 and 10:10. Croissants, buns and scones are unaffected because they use the convection oven. Which café gets the first 8 loaves is the owner's call, and the assistant should say so rather than choose.

A rush for scones. At 09:30 a café asks for 16 extra scones by 11:00. Scone dough takes 25 minutes by hand, 18 to bake and 10 to cool, plus 10 minutes of loading and unloading, so the chain is about an hour. The assistant has Baker 1 mix from 09:35, bakes at 10:15 to 10:33 in the idle convection oven and slides the focaccia load five minutes later, which still lands the focaccia at 11:30 against 11:45. Nothing else moves.

A rush for buns. The same café then asks for 24 buns by 11:30. The assistant says no, and shows why: starting from scratch the chain is 222 minutes (20 mix, 60 bulk, 40 shape, 60 prove, 22 bake, 20 cool), so the earliest is about 13:12. It offers a second option, which is to divert Thursday's bun dough (already mixed at 09:00), shape it as planned, bake at 12:00 and have the buns ready by about 12:45. The price is Thursday's buns: they would need a fresh mix that no longer fits inside the shift. You may judge that a fair trade or not, but you can only make it because the plan shows the cost.

A baker is off sick. Give the assistant priority tiers before this ever happens. Tier A is pre-paid and wholesale orders, tier B is the core shop range and tier C is the extras. In this plan, tier C (buns, scones and focaccia, including Thursday's bun prep) takes about 175 minutes. One baker has 460 available minutes against 675 booked, so the assistant drops tier C, hands the boxing of wholesale croissants to the counter staff and skips the bench clean, which brings 675 down to about 445. Total minutes are not a timeline, though, so ask for the full table again and rerun the clash check. Tiers are what let the assistant make a defensible choice instead of a random one.

A weekly log that shows whether the plan was right

A plan is a prediction, and predictions get checked. Keep a one-line-per-day log: whether wholesale was on the van, how many shop items were more than ten minutes late, overtime minutes and the one figure in the spec sheet you now doubt. Five lines make a week. This one is illustrative.

DayWholesale on the van by 08:00Shop items over 10 min lateOvertimeSpec sheet change
MondayYes1: buns, prove ran 70 min0 minBun prove 60 to 70 min in cold weather
TuesdayYes015 minShaping 60 croissants took 75 min, not 60
WednesdayYes, 3 min spare00 minNone
ThursdayNo: 2 loaves short2: sourdough0 minD2 recovers in 8 min, not 5
FridayYes1: scones10 minScone mix takes 30 min with one baker

Read the log for patterns, not blame. Four of the five days point at a single cell of the spec sheet: a proving time, two hands-on times and one oven recovery time. Change that cell and leave the prompt alone, because the prompt encodes rules and the sheet encodes your kitchen. Over a few weeks the corrections should get smaller as the sheet fills with real figures rather than hopeful ones. When a whole week needs none, try the plan on your busiest day.

Peak weeks need the same treatment with bigger numbers. For Christmas and Easter, where pre-orders arrive in slots, a pre-order form that limits slots keeps the orders table honest before the planner ever sees it.

What the plan leaves to you

The plan sequences work. It does not know which tray touched nuts, which rack was cleaned or whether the thermostat on deck 2 has started to drift. Keep your allergen controls, cleaning schedules and temperature records as they are, and ask your food safety adviser before any change moves products that carry different allergens onto a shared deck, tray or bench.

Check any oven load the plan suggests against the manufacturer's rated capacity. An assistant can fit ten loaves on a deck rated for eight if the orders call for it, and it does not know that steam cycles need breathing room.

Breaks and hours belong in the plan as fixed blocks, so the assistant cannot schedule through them. If a change would alter someone's contracted hours, ask whoever advises you on employment rules before the plan goes on the wall.

Finally, keep customer details out of the chat. The plan needs a product, a quantity, a ready-by time and an order label. Names, phone numbers and addresses stay in the ordering system.

Questions bakers ask before trusting a plan from AI

What if the bakery has only one oven?

Treat the oven as a single resource with one temperature at a time. Give the assistant the heat-up and cool-down minutes for a 10 degree change, and ask it to order bakes from low to high temperature. Expect fewer slots per hour, so the assistant will report more missed ready-by times. That is useful: it shows when a second oven, or earlier starts, would pay for itself.

How often should I re-time my products?

Re-time a product whenever you change the flour, the recipe, the dough temperature, the prover settings or the oven. Otherwise, review the figures each Friday from your log and again each season, because cold mornings and hot kitchens shift proving times more than most owners expect. Correct the spec sheet, not the prompt.

How long does it take to set this up the first time?

Allow about a week of timing notes, because one batch of each product on four or five ordinary days shows the spread. The first plan, with its checks, takes an evening of roughly an hour. After that, updating the orders and rerunning the checks takes ten to fifteen minutes the afternoon before, and a re-plan during the morning takes a couple of minutes.

Can I reuse a plan every day instead of asking for a new one?

Yes, for a steady weekly pattern. Save each corrected plan as a template for its weekday, and ask the assistant to re-plan only when an order changes the number of oven cycles, adds a product or moves a ready-by time. A few more croissants on a tray that has room need no new plan, just a check against the oven's rated load.

Further reads

Sources: the bakery, its orders and its timings are illustrative, not measurements from a real business; replace them with your own recorded times.

Want your own bakery's morning planned from your timings?

On a 1:1 call we will go through your products, ovens and staff hours, build your timing sheet together and pick the part of the plan worth handing to an AI assistant first.

Book a 1:1 call with me