Production Scheduling for Aerosol Spray Paints

Learn how to model your aerosol spray paint plant in Schantt — from premix and milling through aerosol filling to palletising — with directional colour changeovers, parallel filling lines, seasonal calendars, and stage-skipping clear coats.

Planning production for aerosol spray paints means coordinating multiple batch and flow stages — from premixing and milling through letdown and aerosol filling to case packing and palletising — while managing directional colour changeovers, parallel filling lines with different throughputs, and seasonal shifts in available capacity. This guide shows how to configure Schantt for this environment and what a well-structured schedule looks like.

This guide follows a fictional composite company built from industry research on aerosol spray paints; all names, parameters, and figures are illustrative.

Industry context

Aerosol spray paint production is a six-stage hybrid flowshop. The process begins with premixing — dispersing pigments and resins in a solvent base using high-speed dispersers. The resulting millbase then passes through horizontal bead mills for fine grinding, followed by letdown where the formulation is adjusted to final viscosity and colour. After a routine quality-control hold, the paint is transferred to rotary aerosol filling lines where propellant is charged and cans are crimped, hot-water tested, cased, and palletised.

Three product classes define the production mix: Light Base Gloss (lighter colours with fine pigment dispersion), Deep Base Matte (heavier pigment loads requiring longer milling), and Clear (unpigmented formulations that bypass milling entirely). The deep-to-light colour swing creates asymmetric changeover penalties — cleaning dark pigment residue from a mill or filling line before running a light colour takes significantly longer than the reverse direction. Two parallel filling lines operate at different speeds, and a quality-control hold of 180 minutes is routine between letdown completion and filling.

AeroCoat Coatings runs approximately 85 people at a 1.5 ha single-plant facility, making 3 product classes across 6 production stages, scheduled by a 2-person planning team. The plant produces 8–10 million aerosol cans per year across about 350 active SKUs, with 60–100 produced in any given month. The team manages two calendar patterns: a standard two-shift schedule covering 16 hours per day, Monday to Friday, for most of the year, and a single-shift pattern covering 8 hours per day that replaces it during an eight-week summer reduced-staffing period. Planned downtimes include a full-plant year-end shutdown and a mid-year maintenance window on one bead mill, and three public holidays add further non-working days to the annual calendar.

Process overview

flowchart LR
    Premix["Premixing<br/>(Batch, 2 tanks)"]
    Mill["Milling<br/>(Batch, 2 mills)"]
    Letdown["Letdown<br/>(Batch, 2 tanks)"]
    Fill["Aerosol Filling<br/>(Flow, 2 lines)"]
    Pack["Case Packing<br/>(Flow, 1 packer)"]
    Pall["Palletising<br/>(Flow, 1 palletiser)"]

    Premix -->|"15 min transfer"| Mill
    Mill -->|"15 min transfer"| Letdown
    Letdown -->|"QC hold + transfer: 210 min"| Fill
    Fill -->|"10 min transfer"| Pack
    Pack -->|"12 min transfer"| Pall
    Premix -.->|"Bridge: 15 min (Clear skip)"| Letdown

Six production stages from raw material premixing to finished pallets. Clear product class bypasses the Milling stage via a direct bridging transfer from Premixing to Letdown.

Routing note: The Clear product class skips the Milling stage entirely — unpigmented formulations need no pigment grinding. A bridging transfer time connects Premixing directly to Letdown for Clear batches.

Scheduling challenges and how Schantt handles them

In this scenario the schedule is driven by a fixed order book — a known set of product batches to run within a finite horizon, sequenced primarily by colour family to minimise changeover time between similar formulations. Readers whose scheduling driver is a running order backlog rather than a fixed book should note that the same model works with a shorter planning window and more frequent re-scheduling. The scheduling algorithm minimises total production time across all stages, scheduling forward from a start date. For this guide the horizon is a typical production week of five days (Monday to Friday). Schantt offers two optimisation modes: Auto mode, where the algorithm determines both job sequence and machine assignments; and Semi-Auto mode, where the planner sets the job sequence and the algorithm optimises machine assignments around it. This guide uses Semi-Auto mode for the worked example, fixing the sequence by colour family while letting the system assign jobs to the best-fitting premix tank, mill, filling line, and case packer.

What Schantt handles well

  • Mixed batch-and-flow pipelines. Premixing, milling, and letdown are batch stages with per-class batch sizes and cycle durations; aerosol filling, case packing, and palletising are flow stages with throughput rates. Schantt schedules the whole route in one model, chaining each downstream stage from its upstream completions and showing wait-material segments when supply is starved.

  • Multi-machine stages with parallel machines. Each stage can host multiple parallel machines. The scheduling algorithm optimises machine assignments across the eligible pool, assigning jobs to the filling line, premix tank, or mill that best fits each run.

  • Sequence-dependent directional changeovers. Changeover matrices on milling machines and filling lines model the asymmetric penalty — dark-to-light cleanout takes three to five times longer than the reverse direction. The optimiser favours sequences that cluster similar product classes and reduce total changeover time.

  • Per-class routing with stage skipping. Clear formulations contain no pigments and skip the Milling stage entirely. A bridging transfer time routes material directly from Premixing to Letdown across the skipped stage. Other product classes follow the full six-stage route.

  • Shift-aware availability with seasonal calendar switching. The standard two-shift pattern (16 hours per day, Monday to Friday) covers most of the year; a single-shift pattern (8 hours per day) replaces it during reduced-staffing summer weeks. Calendar exceptions handle public holidays; machine downtimes handle planned maintenance.

  • Inter-stage hold as transfer time. The routine QC hold between letdown completion and filling line start (180 minutes) is modelled as a fixed transfer time — a forward delay that appears as a gap on the Gantt without consuming machine capacity.

How Schantt handles each challenge

1. Directional colour changeovers on mills and filling lines.

  • The colour swing between deep-base matte and light-base gloss creates significantly asymmetric changeover times. Cleaning dark pigment residue from a mill before a light run takes 60 to 90 minutes depending on the machine, while the reverse direction takes only 10 to 20 minutes. A similar asymmetry exists on filling lines, where a dark-to-light cleanout takes 25 to 55 minutes compared with 25 to 45 minutes in the opposite direction.
  • Schantt models changeovers as a per-pair directional matrix on milling machines and filling lines, where the planner enters the duration for each product-class transition in each direction. The scheduling algorithm then sequences jobs to favour transitions with low time penalties, clustering light batches together and dark batches together, and only crossing colour boundaries when necessary. The planner enters the times once on the machine detail page and the optimiser handles the rest.

2. Parallel filling lines with different line speeds.

  • The plant has two parallel aerosol filling lines: a primary rotary line that runs at 5,000 cans per hour and a secondary inline line that runs at 3,000 cans per hour. Assigning a long dark-base run to the slower line while the faster line cycles through short light-base runs wastes throughput and extends the overall schedule.
  • Schantt treats filling lines as parallel machines within the Aerosol Filling stage, each with its own throughput rate per product class. In Semi-Auto mode the algorithm assigns each scheduled batch to the filling line whose throughput best matches its volume, balancing load across both lines and reducing total makespan. The planner can review the assignment on the Gantt and override it if shop-floor conditions require.

3. Mixed batch-and-flow handoff with QC hold.

  • The upstream batch stages produce discrete 1,200 to 2,400 kg batches on cycles ranging from 32 to 90 minutes. The downstream flow stages consume material at a continuous rate of thousands of cans per hour. One letdown batch supplies roughly 1.5 to 2.5 hours of filling time, and a routine quality-control hold of 180 minutes sits between letdown completion and the start of filling.
  • Schantt handles this by typing each stage as either batch or flow and chaining downstream consumption to upstream completions. The QC hold is modelled as a fixed transfer time on the Letdown stage, so the schedule automatically inserts the required delay. If filling outruns supply, the system inserts a wait-material segment that the planner can see on the Gantt as an idle period with the cause annotated.

4. Stage-skipping routing for Clear product class.

  • Clear lacquer formulations contain no pigments and therefore do not require milling. Routing Clear batches through the bead mills would add unnecessary cycle time and risk cross-contamination with pigmented residue. A bridging material transfer of 15 minutes moves pre-dispersed Clear paste directly from premixing to letdown.
  • In Schantt, each product class has its own per-class routing. The Clear class simply omits the Milling stage from its process route, and a bridging transfer time of 15 minutes connects Premixing directly to Letdown. Light Base Gloss and Deep Base Matte batches follow the full route through Milling. The scheduler resolves each batch against its class routing, so Clear batches never occupy a mill.

5. Seasonal calendar switching with reduced summer staffing.

  • The plant runs a standard two-shift pattern (06:00 to 22:00, Monday to Friday) for most of the year. During an eight-week summer reduced-staffing window from July to August the schedule shifts to a single shift (06:00 to 14:00, Monday to Friday), cutting daily available hours in half while peak seasonal demand rises roughly 50% above the winter baseline. Three public holidays and a full-plant year-end shutdown add further non-available periods.
  • Schantt supports two base calendars — Standard 2-Shift and Summer Reduced 1-Shift — and a schedule calendar period that switches between them on a given date range. Calendar exceptions mark the three public holidays, and machine downtimes handle the year-end shutdown and a planned mid-year maintenance window on mill_1. The schedule automatically respects each calendar's working hours, so a batch started under the summer pattern runs within the shorter day without manual adjustment.

What to model in Schantt

The following table lists the entities you configure in Schantt to model this aerosol spray paint scenario.

Entity Count Notes
Stage 6 Premixing (BATCH), Milling (BATCH), Letdown (BATCH), Aerosol Filling (FLOW), Case Packing (FLOW), Palletising (FLOW)
Machine 10 2 premix tanks, 2 bead mills, 2 letdown tanks, 2 filling lines, 1 case packer, 1 palletiser
Product Class 3 Light Base Gloss, Deep Base Matte, Clear
Product 3 Gloss White, Matte Black, Clear Gloss Lacquer — one representative per class
Calendar 2 Standard 2-Shift (default), Summer Reduced 1-Shift

Step-by-step setup

1. Create the stages and set transfer times. Define six stages in production order: Premixing (BATCH), Milling (BATCH), Letdown (BATCH), Aerosol Filling (FLOW), Case Packing (FLOW), Palletising (FLOW). On each stage's detail page, set the forward transfer time to the next stage:

  • Premixing → Milling: 15 minutes
  • Milling → Letdown: 15 minutes
  • Letdown → Aerosol Filling: 210 minutes (includes 180-minute QC hold plus 30-minute material transfer)
  • Aerosol Filling → Case Packing: 10 minutes
  • Case Packing → Palletising: 12 minutes

Also add a bridging transfer from Premixing directly to Letdown at 15 minutes for the Clear class skip route.

2. Add machines to each stage. Assign ten machines to their respective stages:

Premixing: premix_1, premix_2
Milling: mill_1, mill_2
Letdown: letdown_1, letdown_2
Aerosol Filling: fill_1, fill_2
Case Packing: pack_1
Palletising: pall_1

3. Create product classes and define per-class routings. Create three product classes:

  • Light Base Gloss — full route through all six stages, in position order
  • Deep Base Matte — full route through all six stages, in position order
  • Clear — route omits Milling: Premixing (position 10), Letdown (position 20), Aerosol Filling (position 30), Case Packing (position 40), Palletising (position 50)

On each product class's detail page, verify the routing sequence and confirm that partial transfers are disabled for this scenario.

4. Add one representative product per class. Create exactly three products, each linked to its class:

  • Gloss White (class: Light Base Gloss)
  • Matte Black (class: Deep Base Matte)
  • Clear Gloss Lacquer (class: Clear)

5. Set machine capacity parameters and changeovers. On each machine's detail page, enter batch parameters or throughput rates per product class and the directional changeover matrix.

Batch parameters (Premixing, Milling, Letdown): Enter the cycle duration and batch size for each product class. For example, premix_1 processes a 1,200 kg batch of Light Base Gloss in 32 minutes, while premix_2 processes a 2,400 kg batch in 40 minutes. Deep Base Matte and Clear have their own per-class cycle and batch-size values.

Throughput rates (Aerosol Filling, Case Packing, Palletising): Enter throughput in cans per hour per product class. For example, fill_1 runs at 5,000 cans per hour for all classes; fill_2 runs at 3,000 cans per hour.

Changeover times: Enter the directional per-pair matrix on milling machines and filling lines. Key asymmetric values:

  • Milling: dark-to-light 75 minutes (mill_1) or 75 minutes (mill_2), light-to-dark 15 minutes (both mills)
  • Aerosol Filling (fill_1): dark-to-light 55 minutes, light-to-dark 45 minutes
  • Aerosol Filling (fill_2): dark-to-light 30 minutes, light-to-dark 25 minutes
  • Premixing and Letdown: symmetric changeovers between 10 and 25 minutes across all class pairs

6. Configure calendars, exceptions, and downtimes. Create two base calendars:

  • Standard 2-Shift (default): Monday to Friday, 06:00 to 22:00 (two shifts, 16 hours per day)
  • Summer Reduced 1-Shift: Monday to Friday, 06:00 to 14:00 (single shift, 8 hours per day)

Add three calendar exceptions as non-working days:
- New Year's Day (1 January)
- International Workers' Day (1 May)
- Christmas Day (25 December)

Add two machine downtimes:
- Full-plant year-end shutdown: 26 to 31 December (applies to all machines)
- Mill_1 mid-year maintenance: 13 to 18 July (mill_1 only)

Use a schedule calendar period to switch from the Standard to the Summer Reduced calendar during the relevant eight-week summer window.

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

Common mistakes

1. Using a single blanket changeover value instead of directional per-pair times. Entering one symmetric changeover duration across all product classes ignores the reality that dark-to-light cleanout on mills and filling lines takes three to five times longer than the reverse direction. The schedule then underestimates transition gaps and may place a long colour swing where a short changeover would suffice.
Fix: Enter the full directional matrix for each multi-class machine — both the from-to and to-from durations — so the algorithm can accurately evaluate sequence decisions.

2. Treating all product classes as identical in routing. If every class follows the same six-stage route, Clear batches will be routed through the Milling stage unnecessarily, wasting mill capacity and risking cross-contamination with pigmented residue.
Fix: Create a per-class routing for Clear that omits Milling, and add the 15-minute bridging transfer from Premixing directly to Letdown on that class's route.

3. Omitting the QC hold as a transfer time. With no transfer time set between Letdown and Aerosol Filling, the schedule chains letdown completion directly to filling start, ignoring the routine 180-minute quality-control inspection that every batch requires.
Fix: Enter a 210-minute transfer time from Letdown to Aerosol Filling on the Letdown stage detail page, covering the QC hold plus the physical material transfer.

4. Overlooking seasonal calendar switching. Keeping the same two-shift calendar active year-round means the schedule plans 16-hour days during the eight-week summer reduced-staffing period, creating over-allocated time that the planner must correct for every batch manually.
Fix: Create a second Summer Reduced calendar with 8-hour shifts and use a schedule calendar period to switch between the two calendars on the relevant date range. The schedule then respects the shorter day automatically.

5. Assigning all filling jobs to the faster line manually. Routing every batch to fill_1 (5,000 cans per hour) ignores the secondary line's throughput and can create a bottleneck that extends the overall schedule. The planner has no easy way to predict which line assignment minimises total makespan across a multi-colour sequence.
Fix: Let Schantt's scheduling algorithm assign jobs to either filling line in Semi-Auto mode. The algorithm evaluates throughput, changeover time, and line availability to balance load across both lines.

What a good schedule looks like

With the model configured as described — six stages, ten machines, three product classes with per-class routing, directional changeovers, seasonal calendars, and the QC hold as transfer time — the scheduling algorithm produces a production plan that reflects the real constraints of the plant floor.

Before (manual or spreadsheet-based planning): Even with an experienced planner, hand-built schedules accumulate avoidable inefficiencies over a typical production week.

  • Around 2 to 3 hours per week of unnecessary changeover time from sequences that swing between colour families too often rather than clustering light and dark runs together
  • Approximately 4 to 6 hours of avoidable makespan per week from sub-optimal filling line assignment — putting long dark-base runs on the faster line while the slower line handles short light-base jobs, or vice versa, without a way to evaluate the trade-off
  • Two to four hours per month of filling line starvation because upstream batch completions are not sequenced to match downstream consumption, leaving the faster line idle while the next letdown batch is still running
  • Manual re-work whenever a calendar change — summer shift reduction, public holiday, or planned maintenance — shifts the available hours, requiring each batch to be checked and re-adjusted by hand

After (Schantt Semi-Auto mode): With the same inputs, Schantt produces a complete week's schedule that respects all constraints without manual intervention.

  • Clusters runs by colour family, reducing total changeover time by sequencing fewer dark-to-light transitions across the entire production period
  • Assigns each batch to the filling line whose throughput best matches its volume — heavier runs to the faster line, shorter runs to the slower line — distributing load across both lines and compressing the overall schedule
  • Chains each downstream stage start to its upstream completion plus transfer time, so filling never begins before the QC hold expires and every wait-material segment is visible on the Gantt
  • Automatically respects the active calendar — batches under the summer single-shift pattern fit within the shorter day without manual adjustment, and public holidays and planned downtimes are blocked out
  • Produces a single Gantt view where every operation from premix tank to palletiser is sequenced, giving the planner a complete, constraint-respecting plan in minutes rather than hours

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