Production Scheduling for Industrial Protective Coatings

Schedule liquid protective coatings across premixing, milling, letdown, tinting, and filling with Schantt. Model directional changeovers, parallel mills, stage-skipping routings, and shift-aware calendars on a single shared plant floor.

Production scheduling for industrial protective coatings demands coordinating a hybrid batch-and-flow pipeline through premixing, wet milling, letdown, tinting, and filling — all on a shared plant floor serving multiple product classes with asymmetric changeover requirements. This guide shows how to model that pipeline in Schantt and configure it for a representative mid-market coatings facility.

This guide follows a fictional composite company built from industry research on industrial protective coatings; all names, parameters, and figures are illustrative.

Industry context

Liquid industrial protective coatings protect steel and concrete structures in demanding environments — bridges, storage tanks, marine installations, and industrial equipment. Manufacturers produce a range of chemistries including polyurethane topcoats, zinc-rich epoxy primers, and waterborne acrylics, each with distinct processing requirements. The typical mid-market plant operates a batch-oriented production line where raw materials are weighed, dispersed, milled to target fineness, let down with solvents and resins, tinted to specification, and filled into cans, pails, or drums.

The production floor runs approximately 30 batch starts per week on a two-week rolling horizon, with an annual throughput around 3,000 tonnes. Each batch is 1,500 kg — the standard vessel size across all product classes — and cycles through six production stages at rates that vary by chemistry. The plant's bottleneck stages (milling, filling) run on an extended two-shift schedule while upstream and finishing stages operate a single shift, creating an asymmetric capacity profile the schedule must respect. A two-person planning team sequences these batches using spreadsheets, manually accounting for directional changeover durations, parallel machine assignments, and the handful of stage-skip routings that differentiate product families.

Fortis Industrial Coatings runs ~80 people at a 4,500 m² facility, making 3 product classes across 6 production stages, scheduled by a 2-person planning team.

Process overview

flowchart LR
    A["Raw material batching"] --> B["Premixing / dispersion"]
    B --> C["Milling / grinding"]
    C --> D["Letdown / thinning"]
    D --> E["Tinting / colour matching"]
    E --> F["Filling / packaging"]
    B -.->|"Waterborne acrylic skips Milling"| D
    D -.->|"Zinc-rich primer skips Tinting"| F

The six-stage production flow for industrial protective coatings at Fortis Industrial Coatings. Solid arrows show the standard route. Dotted arrows show skip-routing paths.

Not all product classes visit every stage. The polyurethane topcoat follows the full six-stage route. The zinc-rich primer skips tinting — its colour is a fixed metallic grey that does not require adjustment. The waterborne acrylic, formulated with pre-dispersed pigment, skips the milling stage entirely.

Scheduling challenges and how Schantt handles them

Coating plants like Fortis schedule their production against a blend of customer orders and stock-replenishment signals — a typical make-to-order and make-to-stock mix. (If your plant is purely make-to-order, the same stage-configuration and routing principles apply; your release trigger shifts from inventory targets to customer due dates.) The scheduling algorithm minimises total production time for the batch queue, scheduling forward from a start date across a two-week rolling horizon typical of mid-market protective coatings. Schantt offers two optimisation modes: Auto mode searches both job sequence and machine assignment to find the fastest total makespan, while Semi-Auto mode lets the planner fix the job order and optimises machine choice within that sequence.

What Schantt handles well

  • Sequential multi-stage production — model industrial protective coatings as an ordered chain of batch and flow stages (premixing, milling, letdown, tinting, filling), with per-class routing that skips stages a product class does not require. Transfer times between stages capture pump, gravity, and conveyor handoff delays.

  • Multi-machine stages — each production stage can hold several parallel machines: multiple high-speed dispersers, multiple bead mills, multiple letdown tanks, multiple filling lines. In Auto and Semi-Auto modes the system explores machine assignments across each stage, choosing the combination that minimises total production time.

  • Mixed batch-and-flow pipelines — premixing, milling, letdown, and tinting are batch stages (fixed cycle per load); filling is a flow stage (continuous-rate throughput). When a downstream flow stage outruns its batch upstream supply, the Gantt shows a material-wait pause until the next batch lands.

  • Sequence-dependent changeovers — directional, per-machine changeover times model asymmetric cleanout durations: light-to-dark transitions, dark-to-light conversions, solvent-to-waterborne swaps, and zinc-rich cleanouts. The scheduler favours sequences that cluster compatible classes to shorten total production time.

  • Multi-product routing with stage skipping — product classes that skip interior stages use per-class routing to omit the unneeded stage. A bridging transfer time across the skipped span preserves the handoff delay.

  • Shift-aware availability — every stage (or individual machine) can use its own working calendar. Bottleneck stages such as milling and filling can run on two-shift schedules while letdown runs a single shift.

How Schantt handles each challenge

1. Directional changeover management.

  • Protective coating mills and letdown tanks need thorough cleaning between chemistries, and the duration depends heavily on the direction of the switch — a light polyurethane topcoat following a dark zinc-rich primer can take up to four times longer than the reverse direction. At Fortis these directional changeovers consume 20 to 30 percent of available milling time, roughly 8 to 12 hours per week. Changeover time between any two product classes is asymmetric and depends on the specific machines involved. A single blanket changeover value across all pairs does not capture the real time impact — planners must estimate the sequence impact by hand, a slow and error-prone process.
  • Each machine's changeover-time configuration accepts directional, per-pair values — for example, a 60-minute cleanout from polyurethane topcoat to zinc-rich primer on a letdown tank versus 180 minutes in the reverse direction. With these values set, Auto mode sequences the batch queue to minimise total changeover time across the entire pipeline, favouring clusters of compatible chemistries and avoiding high-duration transitions. The planner can visually inspect the Gantt for overlapping cleanout windows — a concern in plants where several machines share a single clean-in-place (CIP) system — helping detect when multiple cleaning periods coincide.

2. Dedicated-mill routing for specialised products.

  • Zinc-rich primers are highly abrasive — they wear down bead-mill internals faster than conventional paints and contaminate subsequent batches if traces remain. Fortis dedicates one of its three bead mills exclusively to zinc-rich primer production. When the planning team inadvertently assigns a zinc-rich batch to a shared mill, the resulting cleanout adds hours of unplanned downtime. Excel-based schedules have no mechanism to express per-product-class machine eligibility. A zinc-rich batch can slide onto any mill in the schedule's visual layout, and catching the misassignment before release depends on the planner's vigilance.
  • Because cycle-time entries are configured per (product class, machine) pair on the machine's detail page, populating rate entries for zinc-rich primer on only the designated mill — and omitting them on the others — restricts zinc-rich batches to that machine. The scheduler never assigns a zinc-rich batch to a mill without rate entries, eliminating the misassignment risk at the source.

3. Letdown tank contention.

  • Fortis operates three letdown tanks shared by all product classes. When all three are occupied with curing batches, a completed high-speed disperser batch from premixing has nowhere to go and waits, idling both the operator and the disperser. The planning team estimates this wastes 4 to 6 hours of disperser capacity every week. The material-wait between upstream batch completion and downstream tank availability is invisible in a spreadsheet. Planners discover a letdown bottleneck only when operators radio in that a premix batch is sitting on the floor waiting for a tank to clear.
  • The schedule and Gantt show every operation's timeline with its predecessor dependencies. When a downstream machine (a letdown tank) is occupied, the upstream operation's transfer lands as a material-wait segment — visible on the Gantt as a pause between the premixing completion and the letdown start. The planner sees exactly when and where tank contention occurs and can adjust the sequence to reduce idle time.

4. Stage-skipping routings with bridging transfers.

  • The three product classes at Fortis do not all follow the same path. Zinc-rich primer skips tinting — its colour is fixed — and proceeds directly from letdown to filling via a bridge route that includes a routine QC buffer. Waterborne acrylic skips milling because its pigment arrives pre-dispersed, flowing directly from premixing to letdown instead. Managing divergent routes in a single spreadsheet is fragile. Each product needs its own column logic for which stages to include, and the inter-stage transfer times differ by route — the letdown-to-filling bridge for zinc-rich (75 minutes including QC) is different from the letdown-to-tinting-then-filling path for the other classes. Skipped stages and route-specific handoff times are easy to misplace.
  • Each product class has its own per-class routing — an ordered list of the stages that class visits, omitting the skipped stages entirely. A bridging transfer time from the last stage before the skip to the first stage after it (premixing-to-letdown for waterborne acrylic, letdown-to-filling for zinc-rich primer) preserves the handoff delay. The scheduler follows each batch through only the stages in its class's routing, with the correct transfer times for that path. Routine QC checks (viscosity, fineness, colour) are modelled as a transfer-time buffer between tinting and filling — the schedule shows the batch arriving at filling with enough time for standard clearance.

What to model in Schantt

The following five entities form the top-level configuration for a protective coatings scenario.

Entity Count Notes
Stage 6 Raw material batching (BATCH), Premixing / dispersion (BATCH), Milling / grinding (BATCH), Letdown / thinning (BATCH), Tinting / colour matching (BATCH), Filling / packaging (FLOW)
Machine 14 1 weigh station, 3 high-speed dispersers, 3 bead mills (incl. 1 dedicated to zinc-rich), 3 letdown tanks, 1 tinting dispenser, 3 filling lines
Product Class 3 Polyurethane topcoat (full route), Zinc-rich primer (skip tinting, dedicated mill), Waterborne acrylic (skip milling)
Product 3 One representative product per class
Calendar 2 Standard single shift (40 h/wk) for letdown and tinting; Extended two-shift (80 h/wk) for milling and filling

Step-by-step setup

1. Create the six stages in production order. Start with raw material batching, then premixing / dispersion, milling / grinding, letdown / thinning, tinting / colour matching, and finally filling / packaging. Set the production type for each stage — batch stages use a fixed cycle duration and batch size; the filling stage is a flow stage with continuous-rate throughput. After creating the stages, configure the transfer times between them on each stage's detail page:

  • Raw material batching → Premixing / dispersion: 10 minutes
  • Premixing / dispersion → Milling / grinding: 10 minutes
  • Premixing / dispersion → Letdown / thinning: 25 minutes (bridge — waterborne acrylic skips milling)
  • Milling / grinding → Letdown / thinning: 10 minutes
  • Letdown / thinning → Tinting / colour matching: 5 minutes
  • Letdown / thinning → Filling / packaging: 75 minutes (bridge — zinc-rich primer skips tinting, includes 60-minute routine QC buffer)
  • Tinting / colour matching → Filling / packaging: 60 minutes (includes routine QC hold)

2. Add the machines to each stage. Assign the 1 weigh station to raw material batching, 3 high-speed dispersers to premixing, 3 bead mills to milling, 3 letdown tanks to letdown, 1 tinting dispenser to tinting, and 3 filling stations to filling. Each machine belongs to exactly one stage. The bead mills in the milling stage and all three filling stations run on the extended two-shift calendar; assign the extended calendar to each of those machines on its detail page.

3. Create the three product classes and define their routings. Name the classes Polyurethane Topcoat, Zinc-rich Primer, and Waterborne Acrylic. Configure each class's per-class routing to list only the stages it visits:

  • Polyurethane Topcoat: all 6 stages in order
  • Zinc-rich Primer: raw material batching, premixing, milling, letdown, filling — skipping tinting
  • Waterborne Acrylic: raw material batching, premixing, letdown, tinting, filling — skipping milling

For the zinc-rich primer, the bridging transfer from letdown to filling (75 minutes) was already set in step 1 because it is a direct transfer between two stages, not a per-class setting. The same applies to the waterborne acrylic's premixing-to-letdown bridge (25 minutes). Partial transfers are not needed — Fortis transfers full batches between every pair of stages it uses.

4. Add one representative product per class. Create one product for each product class — Polyurethane Topcoat - High-Gloss, Zinc-rich Primer - Metallic Grey, and Waterborne Acrylic - White. In a real plant these would number 30 to 300 or more SKUs; the guide models one representative per class to demonstrate the routing and scheduling behaviour.

5. Set each machine's capacity parameters and changeover times. For each batch-stage machine, configure its cycle duration and batch size. For the weigh station, high-speed dispersers, bead mills, letdown tanks, and the tinting dispenser:

  • Weigh station: 30-minute cycle, 1,500 kg batch size
  • High-speed dispersers: 30-minute cycle, 1,500 kg batch size
  • Bead mills: Polyurethane topcoat — 135-minute cycle, 1,500 kg batch size (both shared mills); zinc-rich primer — 120-minute cycle, 1,500 kg batch size (dedicated mill only)
  • Letdown tanks: 120-minute cycle, 1,500 kg batch size
  • Tinting dispenser: 45-minute cycle, 1,500 kg batch size

For the flow-stage filling machines, set the throughput rate per machine on each product class it handles — 2,400 units/h for the can filling line, 600 units/h for the pail filling station, 300 units/h for the drum / IBC filling station, all three classes.

Then configure the directional changeover times on each machine shared by multiple product classes. The bead mills, letdown tanks, and filling lines each need a set of per-pair durations at the product-class level that reflect the actual cleanout effort for each transition direction:

  • High-speed dispersers: 15–30-minute changeovers between polyurethane and zinc-rich or waterborne
  • Bead mills: representative changeover durations between polyurethane topcoat and zinc-rich primer, each direction at its own value
  • Letdown tanks: 60–180-minute asymmetric changeovers between polyurethane topcoat and zinc-rich primer, and 120–150-minute between polyurethane and waterborne acrylic
  • Tinting dispenser: 15-minute changeover between polyurethane and waterborne
  • Filling lines: 30–45-minute changeovers between polyurethane and waterborne, per filling station

6. Configure calendars, exceptions, and downtimes. Set the standard single-shift calendar (Monday to Friday, 06:00–14:00) as the default for the letdown and tinting stages. Create an extended two-shift calendar (Monday to Friday, 06:00–22:00) and apply it to the milling and filling stages, as well as to individual machines within those stages that need it. Add calendar exceptions for New Year's Day and International Workers' Day, and schedule a factory-wide year-end shutdown plus a quarterly bead-change maintenance window on the zinc-rich dedicated mill.

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 entries. A single changeover time applied to all product-class pairs ignores the asymmetry that defines protective-coatings scheduling — switching from waterborne acrylic to polyurethane topcoat on a letdown tank is not the same duration as the reverse. Fix: configure changeover times as directional, per-class-pair values on each machine's detail page, using your actual cleanout procedures as a guide.

2. Creating one product class for all coating types. Mixing polyurethane topcoats, zinc-rich primers, and waterborne acrylics under a single product class loses the ability to define different routings and machine eligibility. Fix: create a separate product class for each distinct chemistry, each with its own stage-skipping routing and dedicated-mill assignment.

3. Forgetting bridging transfer times for skip routes. When a product class skips a stage, the route jumps from the last visited stage before the skip to the first visited stage after it — but the scheduler needs a transfer time between those two stages to model the handoff delay accurately. A missing bridge means zero transfer time across the gap. Fix: after creating the skip routes, confirm that a transfer time exists for every direct predecessor-to-successor pair in each product class's routing, including bridges that span skipped stages.

4. Assigning the same single-shift calendar to all stages. The plant's bottleneck stages — milling and filling — run two shifts while upstream stages run one. Applying a single calendar everywhere loses that capacity asymmetry; the scheduler cannot exploit the extra evening hours on the bead mills and filling lines. Fix: create at least two calendars (standard and extended), apply the extended calendar to bottleneck stages, and assign the extended calendar to individual machines that need it.

5. Setting processing-time entries for every combination instead of selective entries for dedicated resources. Adding rate entries on all three bead mills for zinc-rich primer makes the scheduler treat all three as eligible for zinc-rich production, defeating the dedicated-mill intent. Fix: populate cycle-time entries for zinc-rich primer on only the designated machine (the 100 L bead mill) and leave the entries blank on the other two — the scheduler will route zinc-rich batches exclusively to the machine with the rate entries.

What a good schedule looks like

A well-configured Schantt schedule transforms the Fortis planning team's weekly exercise from manual changeover minimisation to automated optimisation.

Before (spreadsheet baseline): The team manually sequences approximately 30 weekly batch starts across 6 stages, visually grouping compatible chemistries and hoping the changeover impact stays manageable. Milling changeovers consume 8 to 12 hours of available milling time per week. High-speed dispersers idle 4 to 6 hours weekly waiting for a letdown tank to free up. Mill misassignment events occur 2 to 3 times per month, each triggering 3 to 4 hours of unplanned cleanout. Filling line format changes take 5 to 10 hours of cumulative setup time per week.

After (Schantt Auto mode): The scheduler evaluates the full batch queue, considering every machine assignment and sequence combination to minimise total production time. Milling changeover time drops substantially as the algorithm clusters compatible product classes — light polyurethane batches run consecutively before switching to darker chemistries, avoiding time-consuming back-and-forth transitions. Zinc-rich batches route exclusively to the designated bead mill, eliminating misassignment cleanouts. The Gantt reveals letdown tank contention as material-wait segments, giving the planner visibility to resequence or adjust batch timing. Filling line changeovers group by container format and product class, reducing cumulative setup time. The two-shift calendars on milling and filling are automatically exploited — batches that arrive at a bottleneck stage after the single-shift cutoff are queued for the next day's extended hours rather than sitting idle.

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