Production Scheduling for Metal Finishing / Electroplating

Learn how to schedule an electroplating job shop in Schantt — model multi-stage tank lines, sequence-dependent chemical changeovers, parallel plating baths, and multi-layer routes for zinc, copper-nickel-chrome, and electroless nickel with immersion gold.

This guide is for production planners and plant managers at electroplating and metal finishing job shops who want to schedule multi-stage tank lines, chemical changeovers, parallel plating baths, and multi-layer routes in Schantt. It focuses on manual barrel and rack lines — the kind operated by the majority of SMB contract finishers — and covers the modelling decisions that keep setup practical for that environment. You will learn how to model your facility, configure per-class routings through shared and dedicated tanks, and run schedules that respect shift patterns and maintenance windows.

This guide follows a fictional composite company built from industry research on metal finishing and electroplating; all names, parameters, and figures are illustrative.

Industry context

Metal finishing and electroplating plants apply functional or decorative metal coatings to parts through a sequence of immersion tanks. A typical SMB facility operates 10–25 tanks ranging from 800 L to 6,000 L, running barrel loads of 25–100 kg (zinc, nickel) or rack loads of 5–50 kg (decorative, precious). Plating immersion times span 5–90 minutes per layer; pre-treatment totals 8–20 minutes, and post-treatment dips take from 30 seconds to 5 minutes. Drying adds 3–15 minutes. Most plants run 20–100 active jobs at any time and take in 5–15 new orders per week.

Changeovers between incompatible chemistries — switching a shared tank from zinc to nickel, or nickel to chrome — require draining, rinsing, and recharging the bath, lasting 4–12 hours. Multi-layer finishes such as copper-nickel-chrome impose tight handoff windows: nickel-to-chrome transfers must complete within 2–5 minutes to prevent passive-layer formation, and zinc-to-chromate transfers within 30 seconds to 2 minutes for hexavalent (up to 5 minutes for trivalent). Hydrogen embrittlement relief bake for high-strength steel parts requires 4–24 hours at 190–220 °C, started within 4 hours of plating. Bath maintenance — carbon treatment every 2–8 weeks (4–8 hours), filter changes every 2–6 weeks (1–3 hours), full bath dumps every 3–12 months (4–12 hours) — competes directly with production capacity.

Meridian Plating Works runs 65 people at a 1,800 m² facility, making 3 product classes across 8 production stages, scheduled by a 2-person planning team.

Process overview

flowchart LR
    PC["Pre-clean<br/>(batch)"] --> R1["Rinse 1<br/>(flow)"]
    R1 --> AT["Acid treatment<br/>(batch)"]
    AT --> R2["Rinse 2<br/>(flow)"]
    R2 --> PP["Primary plate<br/>(batch)"]
    PP --> SP["Secondary plate<br/>(batch)"]
    SP --> CP["Chrome plate<br/>(batch)"]
    CP --> D["Dry<br/>(batch)"]

Eight-stage tank line: pre-clean and acid treatment prepare the surface, then parts plate in one or more metal baths before drying.

Stage-skipping. The zinc class routes from secondary plate directly to dry, skipping chrome plate. The electroless nickel plus immersion gold class also skips chrome plate — its secondary plate (immersion gold) feeds directly to dry. Only the copper-nickel-chrome class passes through all eight stages.

Scheduling challenges and how Schantt handles them

In a make-to-order electroplating job shop, demand is driven by customer orders with varied volumes, surface-area specifications, and required finish classes. The scheduling algorithm minimises total production time (makespan) and schedules forward from a chosen start date. The practical horizon for this scenario is 2–4 weeks, matching typical lead times for contract electroplating work. (For plants that schedule against forecasts rather than firm orders, the same modeling patterns apply with forecast-driven demand as the input.) Schantt offers two optimisation modes relevant here: Semi-Auto mode holds the planner's job sequence fixed and optimises only machine assignment and timing, while Auto mode explores both job sequence and machine assignment together. Both modes produce a Gantt chart showing every operation, transfer, and changeover.

What Schantt handles well

  • Sequential multi-stage production — model the tank line as ordered stages; each product class routes through exactly the tanks its specification requires; transfer times capture handoff delays between stages.
  • Multi-machine stages (parallel tanks) — assign each physical tank as a machine; the algorithm picks the best tank for each job in Auto and Semi-Auto modes.
  • Multi-product routing with stage skipping — parts that skip stages (zinc fastener versus copper-nickel-chrome trim versus electroless nickel plus gold) each follow their own route; stages absent from a class's route produce no operation.
  • Sequence-dependent changeovers — enter directional changeover times per tank and product-class pair for chemistry swaps; the optimizer clusters same-chemistry runs to minimise setup.
  • Shift-aware availability and downtimes — model shift patterns, holidays, and recurring bath maintenance windows so the schedule routes work around planned outages.

How Schantt handles each challenge

1. Sequence-dependent chemical changeovers.

  • Switching a shared pre-clean or acid tank from one chemistry to another entails significant downtime — 5 minutes between any pair on the pre-clean tank, 20 minutes when switching into electroless nickel on the acid tank, and 4–12 hours for plating-tank chemistry swaps at facilities that share them. At Meridian all plating tanks are dedicated, so those changeover times do not apply, but the pre-clean and acid tanks serve all three classes. A changeover from zinc to electroless nickel on the shared acid tank requires a 20-minute micro-etch swap; when this changeover occurs once or twice per month, it consumes roughly a full shift's worth of throughput on the pre-treatment line — about 300 kg of zinc capacity lost per event. The lead planner manually sequences jobs to cluster same-chemistry runs, but without a tool the lost time is often discovered too late.
  • Schantt models each changeover as a directional, per-machine duration. You enter the setup time from each product class to every other class on the shared tanks. In Auto mode the algorithm reorders jobs to minimise total changeover time, and in Semi-Auto mode it respects the planner's order while computing the exact changeover time. The Gantt displays each changeover as a labelled segment before the processing bar, so the changeover time is always visible and never surprises the team.

2. Bounded-window handoffs for multi-layer finishes.

  • The nickel-to-chrome handoff on copper-nickel-chrome parts must complete within roughly 3 minutes, or the nickel surface passivates and the chrome layer does not bond, producing scrap rates of 8–12 percent when mistimed. Roughly 3–5 percent of trim-bezel lots are scrapped or reworked annually because of missed handoff windows. A similar constraint applies to electroless nickel-to-immersion gold transfers. The operator stages the rack over the chrome tank before the previous nickel cycle finishes and transfers it manually within seconds once the chrome cycle is ready. The timing depends on the scheduler leaving enough overlap between consecutive operations — a manual process that relies on the lead planner's familiarity with cycle durations.
  • Schantt handles this through a set-and-verify approach. Enter realistic cycle durations and transfer times for each stage, then enable partial transfer on the nickel-to-chrome and electroless nickel-to-gold routing legs. This lets the downstream stage begin on the first rack while the upstream stage is still running, creating the physical overlap the floor needs. Review the Gantt to confirm each handoff completes within the quality window; Schantt does not enforce a hard maximum window, but the timed cycling plus partial transfer approximates the floor behaviour closely enough for the planner to verify.

3. Partial barrel loading and capacity loss.

  • Job-shop barrel lines rarely fill every barrel to rated capacity. Orders arrive in varying quantities, and the planner partitions mixed-size lots into barrel loads. The average barrel at Meridian carries 38 kg against a 50 kg rating (76 percent fill), which means roughly 24 percent of the line's effective capacity is lost to partial loads. The planner spends about 30 minutes per day partitioning orders into batches. Barrels hold up to 50 kg for zinc or nickel and 25 kg for electroless nickel, but no two orders have the same quantity. The planner must decide how to split 85 kg of M10 bolts into two 50 kg barrels (wasting 15 kg of unused capacity on the second barrel) or consolidate non-compatible parts — neither option is efficient.
  • Schantt computes each operation's duration from the order quantity divided by the batch size for that product class and machine. You set the binding batch-size constraint per class — 50 kg for zinc, 40 kg for copper-nickel-chrome, 25 kg for electroless nickel — and when a job's quantity does not fill the last batch, the algorithm schedules the partial load automatically. The resulting operation duration reflects the true time on the tank. For mixed loads of non-compatible part geometries or fixturing, the planner partitions orders manually before entry; the batch-size value serves as the first approximation of the effective load constraint.

4. Maintenance windows that disrupt the schedule.

  • Bath maintenance — nickel carbon treatment every quarter (8 hours), zinc filter changes every month (2 hours), and full bath dumps twice a year (8–12 hours) — takes a tank out of production for hours at a time. When a maintenance event lands unexpectedly, the lead planner spends 1–2 days re-sequencing jobs around the outage to avoid idle downstream stages. At Meridian the nickel tank's quarterly carbon treatment runs from 06:00 to 14:30 on a scheduled day. The zinc tank's monthly filter change takes 2 hours. These events are known in advance but are often scheduled reactively, forcing manual reshuffling of jobs that need those tanks.
  • Schantt supports calendar-based downtime windows. You create each maintenance event as a future-dated downtime on the affected machine. The algorithm schedules work around the unavailable window — no job starts on that machine during maintenance, and the timing of upstream and downstream operations adjusts automatically. The Gantt renders each downtime as a shaded band with the reason and category visible on hover. For plants that track maintenance by amp-hour or cycle count rather than calendar date, estimate the next window and adjust the date each quarter; condition-based triggering is not supported, but the calendar-based approach covers the scheduling impact.

What to model in Schantt

The five top-level entities you create for this scenario map directly to the tank line's structure.

Entity Count Notes
Stage 8 Pre-clean, Rinse 1, Acid treatment, Rinse 2, Primary plate, Secondary plate, Chrome plate, Dry
Machine 13 One per tank, plus one centrifugal dryer and one hot-air oven
Product Class 3 Alkaline zinc, decorative copper-nickel-chrome, electroless nickel plus immersion gold
Product 3 One representative product per class
Calendar 1 Single shift, 36 hours per week

Step-by-step setup

1. Create the stages in order. Add each stage in the sequence shown in the process overview: Pre-clean (batch), Rinse 1 (flow), Acid treatment (batch), Rinse 2 (flow), Primary plate (batch), Secondary plate (batch), Chrome plate (batch), Dry (batch). On each stage's detail page, set the transfer times between consecutive stages — 2 minutes between pre-clean and rinse 1, rinse 1 and acid treatment, acid treatment and rinse 2, and rinse 2 and primary plate; 3 minutes between primary plate and secondary plate, and between secondary plate and chrome plate. For classes that skip chrome plate, add a bridging transfer time of 5 minutes from secondary plate directly to dry.

2. Add the machines to each stage. The pre-treatment stages each have one tank: Pre-clean tank (pre-clean), Rinse tank for pre-treatment (rinse 1), Acid activation tank (acid treatment), Rinse tank post-acid (rinse 2). The primary plate stage has three tanks — Zinc plate tank, Copper plate tank, and Electroless nickel tank — each dedicated to one product class. The secondary plate stage also has three tanks: Trivalent chromate tank (for zinc), Bright nickel tank (for copper-nickel-chrome), and Immersion gold tank (for electroless nickel). The chrome plate stage has one tank: Decorative chrome tank, used only by the copper-nickel-chrome class. The dry stage has two machines: a Centrifugal dryer (for barrel loads) and a Hot-air oven (for racks).

3. Create the product classes and define routings. Add three product classes: Alkaline non-cyanide zinc (unit: piece), Decorative copper-nickel-chrome (unit: piece), and Electroless nickel plus immersion gold (unit: piece). For each class, define the routing — the ordered set of stages it passes through.

  • Zinc routing: Pre-clean, Rinse 1, Acid treatment, Rinse 2, Primary plate, Secondary plate, Dry. This class skips chrome plate.
  • Copper-nickel-chrome routing: Pre-clean, Rinse 1, Acid treatment, Rinse 2, Primary plate, Secondary plate, Chrome plate, Dry. All eight stages.
  • Electroless nickel plus gold routing: Pre-clean, Rinse 1, Acid treatment, Rinse 2, Primary plate, Secondary plate, Dry. Also skips chrome plate.

On the nickel-to-chrome handoff (copper-nickel-chrome class) and the electroless nickel-to-gold handoff (electroless nickel class), enable partial transfer with a quantity of 1 rack or barrel so the downstream stage can begin on the first usable portion while the upstream stage is still cycling. Do not enable partial transfer on zinc-to-chromate — the full barrel must move as one unit.

4. Add the products. Create one representative product per class: M10 hex bolt (alkaline zinc), Automotive exterior trim bezel (copper-nickel-chrome), Electronic connector pin (electroless nickel plus immersion gold). Each product inherits its class's routing.

5. Set capacity parameters and changeovers on each machine. For each machine at a batch stage, set the cycle duration and batch size per product class. The key values are:

  • Pre-clean tank: 12-minute cycle, 50 kg (zinc), 40 kg (copper-nickel-chrome), 25 kg (electroless nickel)
  • Acid activation tank: 3-minute cycle, same batch sizes per class
  • Zinc plate tank: 20-minute cycle, 50 kg — zinc class only
  • Copper plate tank: 15-minute cycle, 40 kg — copper-nickel-chrome class only
  • Electroless nickel tank: 20-minute cycle, 25 kg — electroless nickel class only
  • Bright nickel tank: 20-minute cycle, 40 kg — copper-nickel-chrome class only
  • Trivalent chromate tank: 2-minute cycle, 50 kg — zinc class only
  • Immersion gold tank: 8-minute cycle, 25 kg — electroless nickel class only
  • Decorative chrome tank: 3-minute cycle, 40 kg — copper-nickel-chrome class only
  • Centrifugal dryer: 10-minute cycle, 50 kg (zinc), 25 kg (electroless nickel)
  • Hot-air oven: 15-minute cycle, 40 kg (copper-nickel-chrome)

For flow stages (Rinse 1, Rinse 2), set the throughput per product class — 15,000 units/hour for zinc, 1,500 for copper-nickel-chrome, 60,000 for electroless nickel — reflecting the different drag-out and dwell profiles.

Set changeovers on the shared machines. The Pre-clean tank needs a 5-minute changeover between every pair of product classes (all six directional pairs). The Acid activation tank needs 20-minute changeovers when switching to or from the electroless nickel class (from alkaline zinc to electroless nickel, from copper-nickel-chrome to electroless nickel, and both reverse directions). The Centrifugal dryer needs a 5-minute changeover between zinc and electroless nickel classes. No changeovers are needed on the plating tanks at Meridian because each is dedicated to one product class.

6. Configure the calendar, exceptions, and downtimes. Create one default calendar: Monday through Thursday 06:00–14:30, Friday 06:00–12:00 (36 hours per week). Add three calendar exceptions: New Year's Day (non-working), International Workers' Day (non-working), and a year-end plant shutdown from December 24 to January 1 (non-working). Add three machine downtimes: quarterly nickel carbon treatment on April 15 from 06:00 to 14:30 (maintenance), monthly zinc filter change on March 10 from 06:00 to 08:00 (maintenance), and the annual plant shutdown coinciding with the year-end calendar exception.

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

Common mistakes

1. Using a single blanket changeover instead of per-pair times. Entering one changeover duration across all chemistry pairs on a shared tank ignores the real variation — 5 minutes on the pre-clean tank versus 20 minutes when electroless nickel enters or leaves the acid tank. Fix: Enter directional changeover times for each from-to pair on each shared machine, as listed in the setup section.

2. Modelling all three product classes under a single product class. If you create one product class for all parts, Schantt cannot distinguish which tanks each part needs, and the schedule will assign every job to every stage — including chrome plate for zinc fasteners that should skip it. Fix: Create a separate product class per divergent routing and assign each product to its class.

3. Enabling partial transfer on the zinc-to-chromate handoff. The chromate dip requires the full barrel to move as one unit — starting the chromate cycle on a partial load while the remaining parts are still in zinc risks uneven treatment and rejects. Fix: Keep partial transfer disabled on the zinc routing's secondary plate leg. Enable it only on the nickel-to-chrome and electroless nickel-to-gold handoffs where the floor physically stages one rack at a time.

4. Setting batch sizes larger than the physical tank capacity. A batch size of 100 kg on a tank rated for 50 kg produces a schedule that assigns 100 kg of parts to a single cycle, even though the barrel cannot hold that much. Fix: Match the batch size to the barrel or rack rating for the heaviest product class that uses that machine.

5. Forgetting to bridge transfer times for stage-skipping routes. If the zinc class skips chrome plate but no transfer time bridges secondary plate to dry, the schedule will either fail or insert a gap the floor does not experience. Fix: Add a bridging transfer time of 5 minutes from secondary plate to dry for classes that skip chrome plate.

What a good schedule looks like

A well-configured schedule in Schantt makes changeover times, maintenance windows, and handoff timing visible and predictable, replacing tribal knowledge with a shared plan.

Before (manual whiteboard and spreadsheets):
- Changeover time is discovered after the fact — the pre-clean line switches chemistry unexpectedly, and a shift of throughput is lost
- Nickel-to-chrome handoff timing relies on the lead planner's memory, causing 3–5 percent of trim-bezel lots to be scrapped or reworked annually
- Barrel loading averages 38 kg against a 50 kg rating, wasting roughly 24 percent of effective capacity
- Maintenance events force 1–2 days of manual job reshuffling every quarter
- The planner spends roughly 30 minutes each day partitioning orders into barrel loads by hand

After (Schantt Semi-Auto mode):
- Changeover durations are pre-configured and visible on the Gantt as labelled segments; the same-chemistry cluster minimises unexpected swaps
- Nickel-to-chrome and electroless nickel-to-gold handoffs are timed via partial transfer and cycle durations; the planner inspects the Gantt to confirm each window
- Batch sizes are set per class and the operation duration is computed automatically from the order quantity — no more manual barrel partitioning
- Nickel carbon treatment and zinc filter changes are scheduled as recurring downtimes; downstream jobs automatically shift around the outage
- The 2-person planning team works from a single, shared Gantt that shows every operation, transfer, changeover, and downtime for the full 2–4 week horizon

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