Production Scheduling for Glass Container Manufacturing

Learn how to schedule a glass container production line in Schantt — from furnace colour changes and IS-machine assignments to mixed shift patterns and skip routing for different product classes.

Production planners and operations managers in glass container manufacturing can model their full seven-stage flow line in Schantt — from the continuous furnace through forming, coating, annealing, inspection, and packaging — with per-class routings, directional changeover times, and mixed shift calendars that match real plant conditions. This guide walks through the setup step by step so you can build and run a schedule that respects every constraint in the line.

This guide follows a fictional composite company built from industry research on glass container manufacturing; all names, parameters, and figures are illustrative.

Industry context

Glass container manufacturing is a continuous high-volume process. Raw materials (silica sand, soda ash, limestone, and cullet) are melted in a furnace that runs 24 hours a day, 365 days a year without stopping within a campaign. The molten glass flows through forehearths to individual section (IS) machines that form containers at rates of 170 to 280 bottles per minute, depending on gob configuration and container weight. From forming, the containers travel through hot-end coating, annealing lehrs (with a residence time of approximately 90 minutes), cold-end coating, automated inspection, and finally packaging, where they are palletised and stretch-wrapped.

The physical constraints of this process are fixed. Colour changes on the furnace require a 3-to-4-hour purge window during which all downstream lines effectively stop producing saleable ware. Mould changes on IS machines take 15 to 45 minutes per change, and a typical plant cycles through 8 to 12 mould changes per week as it rotates through product shapes. Lehr belt speeds impose per-class throughput limits — heavier bottles such as wine bottles pass through at roughly three-quarters the rate of standard amber beer bottles on the same lehr. And the packaging stage, often staffed on a two-shift schedule, cannot keep pace with the 24-hour forming line, creating an accumulation of finished ware that must wait for the next packaging shift to be palletised.

Apex Glass Containers runs approximately 85 people at a single facility, making 3 product classes across 7 production stages, scheduled by a team of 2 production planners. The facility operates a single furnace, 2 IS machines, 2 lehrs, and 2 cold-end lines.

Process overview

flowchart LR
    M["Melting"] --> F["Forming"]
    F --> HEC["Hot-End Coating"]
    F --> A["Annealing"]
    HEC --> A
    A --> CEC["Cold-End Coating"]
    CEC --> I["Inspection"]
    I --> P["Packaging"]

The seven-stage glass container production flow. Molten glass from the continuous furnace is formed on parallel IS machines, then passes through hot-end coating (optional — F-250-JAR skips this stage), annealing, cold-end coating, inspection, and packaging.

Skip-routing note: Product class F-250-JAR (flint 250 ml food jar) skips the Hot-End Coating stage entirely — dealkalisation treatment replaces the hot-end tin(IV) oxide spray. A bridging transfer time from Forming to Annealing handles the handoff across the skipped stage, and the jar receives its coating at the Cold-End Coating stage instead.

Scheduling challenges and how Schantt handles them

The schedule in a glass container plant is driven by demand orders for each product class — beer, wine, and jar volumes with their due dates. Schantt minimises total production time by optimising the sequence and machine assignments across all seven stages, scheduling forward from a start date over a practical horizon of several weeks. You can run the algorithm in Auto mode, where it explores job sequence and machine assignments together, or in Semi-Auto mode, where it explores machine assignments only while keeping your chosen job order fixed. Note that if your plant is constrained by raw-material availability rather than by customer orders, you can adapt the approach by treating upstream supply as the schedule driver — the rest of the modelling steps remain the same. Also keep in mind that Schantt minimises total production time, not due-date adherence; in Semi-Auto mode you can sequence urgent jobs earlier manually, then check the Gantt to confirm delivery deadlines.

What Schantt handles well

  • Flow stages with throughput across the full pipeline — Model every stage (melting, forming, annealing, coating, inspection, packaging) as a flow stage with per-product-class throughput, so line speeds, furnace pull rate, and lehr belt speeds become scheduling constraints the optimizer respects.
  • Directional changeovers on any machine — Encode both furnace colour transitions (4 hours flint-to-amber, 3 hours amber-to-flint) and IS-machine mould-change penalties (15 to 45 minutes per pair) as directional changeover durations, so the algorithm naturally groups same-colour and same-shape runs to minimise total production time.
  • Multi-machine stages for parallel IS assignment — Place IS machines as parallel machines on a single forming stage, and let the algorithm explore which machine runs which job to balance load across sections and reduce the mould-change count.
  • Per-class routing with stage-skipping — Define each product class's own stage sequence via per-class routing, so classes that skip hot-end coating (like the F-250-JAR food jar) follow their true path through the line, with bridging transfer times to handle the skip.
  • Calendar-aware scheduling across mixed shift patterns — Assign different calendars to different stages: 24/7 for the furnace, three-shift for forming and cold-end, two-shift for packaging — so the plan reflects when each stage is actually staffed.
  • Capability-restricted machines — Restrict double-gob jar production to the capable IS machine by giving only that machine the jar's throughput entry, keeping the product on its dedicated equipment while letting other products use the full machine pool.

How Schantt handles each challenge

1. Furnace colour-change sequencing.

  • Each colour transition on the furnace consumes 3 to 4 hours of purge time during which the entire downstream line produces only cullet — no saleable containers. A plant cycling through 2 to 3 colour changes per week loses up to 12 hours of productive line time to these transitions alone. The changeover times are asymmetric: switching from flint to amber takes 4 hours, while the reverse takes 3 hours. These durations are plant-specific — the values shown are illustrative estimates; enter your own measured purge times per transition when configuring changeovers.
  • You enter these furnace changeover times as directional durations — flint-to-amber 240 minutes, amber-to-flint 180 minutes — on the Furnace machine. The scheduling algorithm treats each changeover as a time penalty between consecutive furnace jobs and naturally groups same-colour runs to reduce the total number of transitions. The changeovers appear as labelled segments on the Gantt before each colour-change operation, so you can see exactly when the purge window starts and ends.

2. IS-machine mould-change duration and parallel assignment.

  • Each IS machine runs different product shapes, and changing moulds takes 15 to 45 minutes depending on whether the change is within the same colour family or crosses to a different container type. With 8 to 12 changes per week, the machine-assignment decision — which IS machine runs which job — directly affects how many mould changes the schedule needs.
  • Both IS machines sit as parallel resources on a single Forming stage. You enter the mould-change durations as directional changeover times on each machine (30 minutes for same-colour narrow-neck swaps, 45 minutes for changes to a different colour). In Auto mode, the algorithm explores both job ordering and machine assignment, so it can keep a changeover-heavy product on the machine already set up for it. In Semi-Auto mode, the planner fixes the job order and the algorithm assigns each job to the better-suited IS machine, reducing mould changes where possible.

3. Lehr bottleneck from throughput variation.

  • The F-750-WINE flint wine bottle passes through Lehr 1 at approximately 75 percent of the speed of the standard A-12-BEER amber beer bottle — roughly 8,100 bottles per hour versus 10,800. When heavy bottles follow light bottles in sequence, the downstream line starves briefly while the lehr clears, and the upstream forming stage must throttle back or wait.
  • Each product class gets its own throughput value on every flow-stage machine it passes through. For Lehr 1, the beer class is set to 10,800 bottles per hour and the wine class to 8,100 per hour. When a wine run follows a beer run, the schedule automatically applies the slower rate for the wine portion, and if the upstream stage produces faster than the lehr can process, the simulation inserts wait-material pauses between the processing bars on the Gantt. The planner sees exactly where the bottleneck sits and can adjust the sequence to alternate heavy and light products to balance lehr utilisation.

4. Mixed shift calendars and the packaging gap.

  • The furnace, forming, coating, annealing, and inspection stages run on a continuous 24/7 rotating-shift schedule. Packaging, however, operates on a two-shift pattern — Monday to Saturday, 6:00 to 22:00 — with no Sunday shift. This means that during the roughly 72 hours per week that packaging is not staffed, the forming and annealing lines continue producing, and finished containers accumulate at the palletisers.
  • You assign the 24/7 calendar to all upstream stages and a separate two-shift calendar (Monday to Saturday, 06:00 to 22:00, Sunday non-working) to the packaging stage. When the schedule runs, each downstream operation advances by working time only — packaging jobs that end their shift before they finish pause and resume when the next packaging shift starts. The non-working gaps appear as shaded overlays on the Gantt, so the accumulation at the palletiser is visible and you can plan buffer staging accordingly.

5. Per-class skip routing for products that bypass stages.

  • The F-250-JAR food jar skips the Hot-End Coating stage because dealkalisation treatment replaces the hot-end spray. Without explicit routing, a planner modelling all three product classes on a single shared line would have to invent a placeholder step or a zero-duration hot-end entry for the jar, neither of which reflects the actual material flow.
  • Each product class gets its own per-class routing — the set of stages it actually traverses. The jar class includes Melting, Forming, Annealing, Cold-End Coating, Inspection, and Packaging, but omits Hot-End Coating entirely. A bridging transfer time from Forming to Annealing (4 minutes) handles the handoff across the skipped stage, so the schedule chains the jar from forming directly to annealing with no gap and no phantom hot-end operation. On the Gantt, the jar simply has no row for the hot-end stage, while the beer and wine classes show their normal hot-end and annealing sequence.

What to model in Schantt

The dataset for this scenario models the plant's production line as a set of first-class entities the planner creates directly.

Entity Count Notes
Stage 7 All flow stages: Melting, Forming, Hot-End Coating, Annealing, Cold-End Coating, Inspection, Packaging
Machine 13 1 furnace, 2 IS machines, 2 coating stations, 2 lehrs, 2 cold-coat stations, 2 inspection stations, 2 palletisers
Product Class 3 A-12-BEER (amber beer bottle), F-750-WINE (flint wine bottle), F-250-JAR (flint food jar)
Product 3 One representative product per class
Calendar 2 Default 24/7 (furnace through inspection) and 2-shift packaging (Mon–Sat 06:00–22:00)

Step-by-step setup

1. Create the stages in order. Set up seven flow stages in their production sequence: Melting, Forming, Hot-End Coating, Annealing, Cold-End Coating, Inspection, and Packaging. Each stage's production type is set to flow — there are no batch stages in glass container manufacturing. After the stages exist, open each stage's detail page and set the transfer times between consecutive stages:
- Melting → Forming: 3 minutes (forehearth and feeder channel transit)
- Forming → Hot-End Coating: 1 minute
- Hot-End Coating → Annealing: 2 minutes
- Annealing → Cold-End Coating: 5 minutes
- Cold-End Coating → Inspection: 1 minute
- Inspection → Packaging: 2 minutes
- Forming → Annealing: 4 minutes (skip bridge for F-250-JAR; this bridges across Hot-End Coating)

2. Add the machines to each stage. Add each machine to its stage:
- Melting: Furnace
- Forming: IS Machine 1, IS Machine 2
- Hot-End Coating: Coating Station 1, Coating Station 2
- Annealing: Lehr 1, Lehr 2
- Cold-End Coating: Cold Coat 1, Cold Coat 2
- Inspection: Inspection 1, Inspection 2
- Packaging: Palletiser 1, Palletiser 2

3. Create the product classes and define per-class routing. Create three product classes: A-12-BEER (amber 355 ml beer bottle, unit: bottle), F-750-WINE (flint 750 ml wine bottle, unit: bottle), and F-250-JAR (flint 250 ml food jar, unit: jar). For each class, define its routing on the Product Class detail page — all classes pass through Melting, Forming, Annealing, Cold-End Coating, Inspection, and Packaging. The key difference: A-12-BEER and F-750-WINE also include Hot-End Coating in their routing, while F-250-JAR omits it. Enable the bridging transfer time (Forming → Annealing, 4 minutes) for the F-250-JAR class to handle the skip. No partial-transfer settings are needed for this scenario — each stage must complete fully before material moves to the next.

4. Add one representative product per class. Create one product for each class:
- Amber 355 ml Beer Bottle (class: A-12-BEER)
- Flint 750 ml Wine Bottle (class: F-750-WINE)
- Flint 250 ml Food Jar (class: F-250-JAR)

5. Set throughput values and changeover times on each machine. Each machine needs its throughput rate for every product class that runs on it. The Furnace runs all three classes at 50,000 units per hour. On the forming stage, IS Machine 1 runs A-12-BEER (10,800 per hour) and F-750-WINE (10,200 per hour); IS Machine 2 runs A-12-BEER (10,800 per hour) and F-250-JAR (15,600 per hour). Note that F-250-JAR is restricted to IS Machine 2 — it has no throughput entry on IS Machine 1.

Then set the directional changeover times on the Furnace and on each IS machine:
- Furnace: A-12-BEER → F-750-WINE: 240 min, A-12-BEER → F-250-JAR: 240 min, F-750-WINE → A-12-BEER: 180 min, F-250-JAR → A-12-BEER: 180 min, F-750-WINE ↔ F-250-JAR: 0 min (both flint)
- IS Machine 1: A-12-BEER ↔ F-750-WINE: 30 min each direction
- IS Machine 2: A-12-BEER ↔ F-250-JAR: 45 min each direction

On the remaining flow stages, set the throughput values for each (product class, machine) pair — for example, Lehr 1 processes A-12-BEER at 10,800 per hour and F-750-WINE at 8,100 per hour, while Lehr 2 processes A-12-BEER at 10,800 per hour and F-250-JAR at 15,600 per hour. Inspection and packaging machines follow a similar per-class throughput pattern.

6. Configure calendars, exceptions, and downtimes (optional). Create two calendars: a 24/7 continuous calendar (default, covering the furnace through inspection) and a two-shift packaging calendar (Monday to Saturday 06:00 to 22:00, Sunday non-working). Add calendar exceptions for planned non-working days — New Year's Day (1 January), International Workers' Day (1 May), and the year-end shutdown (24 to 26 December plus 31 December). Add machine downtimes for planned maintenance: an 8-hour quarterly mould section overhaul on IS Machine 1 (15 March, 06:00 to 14:00) and an 8-hour lehr belt service on Lehr 1 (18 June, 08:00 to 16:00).

For step-by-step instructions on configuring each of these in Schantt, see the Schantt documentation.

Common mistakes

1. Modelling each IS-machine section as a separate machine. An IS machine has 5 to 20 individual sections, each blowing one container per cycle. If your plant always runs a single job across all sections of an IS machine, modelling each section as a separate machine creates unnecessary setup complexity and makes the schedule harder to read. Fix: Model each IS machine as a single machine with a combined throughput rate (e.g., 10,800 bottles per hour for 10-section single-gob operation). Only split sections into separate machines if your plant staggers different jobs across sections on the same IS machine.

2. Using a single blanket colour-change duration instead of directional times. A furnace colour change from flint to amber takes approximately 240 minutes, while amber to flint takes roughly 180 minutes. Using one average value for both directions means the schedule will either overestimate or underestimate every other transition. Fix: Enter both directional durations on the Furnace machine's changeover matrix. Set flint-to-amber (240 min) and amber-to-flint (180 min) as separate entries, and add corresponding entries for transitions involving the flint jar class at 0 minutes (both flint classes, no purge needed).

3. Forgetting the skip-routing bridge transfer time. When a product class skips an interior stage (like F-250-JAR skipping Hot-End Coating), the schedule needs a transfer time that connects the stage before the skip directly to the stage after it. Without this bridge, the schedule treats the handoff as instantaneous or — worse — as undefined, and the Gantt may show an implausible gap or overlap. Fix: On the Product Class detail page for the F-250-JAR class, ensure its routing excludes the Hot-End Coating stage. Then create a transfer time entry from Forming to Annealing (4 minutes) that acts as the skip bridge. The schedule will chain the jar directly from Forming to Annealing with the correct handoff delay.

4. Assigning identical throughput to all product classes on bottleneck machines. Lehr 1 processes F-750-WINE at a significantly lower rate (8,100 per hour) than A-12-BEER (10,800 per hour). If all three classes are given the same throughput on the same lehr, the schedule will overestimate how quickly wine bottles clear the annealing stage, leading to unrealistic timing for downstream coating and inspection. Fix: Enter the true per-class throughput on every machine, especially on known bottleneck stages like the annealing lehrs. Use the per-class values from your plant records — the schedule can only be as accurate as the throughput data it runs on.

5. Giving packaging the same calendar as the furnace. The packaging stage typically runs on a reduced shift pattern, yet it is easy to assign the default 24/7 calendar by habit. When packaging has more capacity in the model than it does on the floor, the schedule shows palletising completing at times no one is actually at the line, and the accumulated buffer of ware goes unmanaged. Fix: Create a separate two-shift calendar for packaging (06:00 to 22:00, Monday to Saturday, Sunday non-working) and assign it to both palletisers from the Machine detail page. The schedule will then respect the actual packaging hours, and the shaded non-working bands on the Gantt will show where finished containers accumulate between shifts.

What a good schedule looks like

When the model is correctly configured, the schedule produced by Schantt in Auto mode reflects the real constraints of the glass container line rather than a planner's best guess in a spreadsheet.

Before (manual spreadsheet): A planner manually sequences 2 to 3 colour changes per week, each requiring a full 4-hour purge window, losing approximately 8 to 12 hours per week to colour transitions alone. Mould changes are sequenced reactively, with no systematic attempt to group same-colour or same-shape runs on the same IS machine. The packaging backlog is invisible until unstacked pallets fill the warehouse aisle, and planners guess at buffer timing between shifts.

After (Schantt Auto mode): The algorithm groups same-colour runs together automatically, reducing the weekly colour-change count from 3 to 2 and saving approximately 4 hours of purge time per week. IS-machine assignments are optimised so that mould-change-heavy products stay on the machine already set up for them, reducing the total number of mould changes and their cumulative time penalty. The Gantt shows exact wait-material gaps at bottleneck stages (Lehr 1 during wine runs) and shaded non-working bands at the packaging stage, so planners can see exactly where accumulation happens and plan buffer space and inter-shift handoffs with confidence.

Ready to schedule your own facility?

Try Schantt free — no credit card required. Go from spreadsheet to optimized Gantt chart in 60 minutes.

Try Schantt Free