Production Scheduling for Leather Processing / Tanning

Learn how Schantt schedules parallel drum batteries, long chemical cycles, and per-class finishing-line routing for bovine-hide leather tanning in a single hybrid-flowshop model.

Tannery production planners managing parallel drum batteries, long chemical-soak cycles, and divergent finishing-line routing can model every stage of the leather processing sequence — from hide soaking through plating — in Schantt's hybrid-flowshop scheduler, without spreadsheets or manual Gantt charts.

This guide follows a fictional composite company built from industry research on leather processing and tanning; all names, parameters, and figures are illustrative.

Industry context

Bovine-hide tanning is a multi-stage process that transforms raw salted hides into finished leather through chemical and mechanical operations spanning 10 to 20 days. A typical tannery processes 1,200 to 1,800 hides per week across five beamhouse batch stages (soaking, liming, deliming and bating, pickling, and chrome tanning), then through wet-finish and finishing stages that diverge by final leather grade. The beamhouse stages use 15,000 kg drum loads with cycle durations from 4 hours (deliming and bating) to 21 hours (liming, run overnight). After chrome tanning, wet-blue hides rest for a minimum 8-hour ageing dwell before entering the flow side of the line.

Stonegate Tannery runs approximately 95 people at a 9,500 m² facility, making three product classes — Full-grain, Corrected-grain, and Suede — across 15 production stages, scheduled by a 2-person planning team. The beamhouse drum battery (6 drums, 15,000 kg capacity each) serves the first five batch stages, meaning every drum-to-stage combination is available for soaking, liming, deliming and bating, pickling, and chrome tanning. The wet-finish drum battery (8 drums, 5,000 kg each) handles retanning and dyeing, with cycle durations that vary by product class — Full-grain retanning runs 240 minutes, while Corrected-grain requires 360 minutes of heavier synthetic tanning. Finishing consists of flow stages: sammying (100 hides per hour each), splitting (60 hides per hour), shaving (50 hides per hour per machine), vacuum drying (40 hides per hour), staking (80 hides per hour), buffing (40 to 60 hides per hour by class), coating (10 to 15 hides per hour), and plating (80 to 100 hides per hour) — each with parallel machines at different throughputs. Two distinct shift calendars govern the line: the beamhouse runs 24 hours a day, 5 days a week — necessary because liming cycles span 21 hours and run overnight — while the finishing floor runs a single day shift from 08:00 to 17:00.

Process overview

flowchart LR
  BH["Beamhouse<br/>Soaking–Chrome Tanning<br/>(Batch)"] --> MP["Sammying–Shaving<br/>(Flow)"]
  MP --> RD["Retanning & Dyeing<br/>(Batch)"]
  RD --> DR["Drying<br/>(Vacuum / Toggle)"]
  DR --> SB["Staking & Buffing<br/>(Flow)"]
  SB --> CP["Coating & Plating<br/>(Flow)"]

The 15-stage leather tanning process from soaking through plating at Stonegate Tannery, grouped here into 6 phases. Corrected-grain runs all 15 stages within these phases; Full-grain and Suede diverge as described below.

Corrected-grain runs all 15 stages, including vacuum Drying. Full-grain's toggle-frame drying is a transfer-time bridge that skips the vacuum Drying stage entirely (Dyeing → Staking, 24 h, no machine). Suede's routing ends at Buffing — Coating and Plating are the final two stages and are omitted as a tail, with no bridge needed.

Scheduling challenges and how Schantt handles them

Leather tanning presents a scheduling problem dominated by large parallel drum batteries, long batch cycles that span multiple shifts, sequence-dependent chemical cleaning between drum loads, and a transition from batch to flow processing where each beamhouse batch splits into multiple grade-specific sub-batches. The schedule at Stonegate is driven by the raw-hide release plan — the sequence of incoming hides that determines which batches enter the beamhouse each day. If a different input drives your schedule (for example, a firm order backlog), the model adapts equally well. The scheduler minimizes total production time, running forward from a start date over a practical horizon of approximately two weeks. In Auto mode, the algorithm explores both job sequence and machine assignment to find a low-total-time plan. In Semi-Auto mode, the planner locks the job order — for example, to match the hide-receiving sequence — and the algorithm optimises machine assignments within that fixed sequence.

What Schantt handles well

  • Multi-machine stages — parallel drum assignment across beamhouse and wet-finish batteries, with the algorithm exploring which drum gets which batch in Auto and Semi-Auto modes.
  • Sequence-dependent changeovers — directional changeover times (light to dark 60 min, dark to light 180 min) that make the scheduler favour low-cleaning sequences for drum batches.
  • Mixed batch-and-flow pipelines — beamhouse drums (batch cycle per load) feeding sammying and finishing lines (continuous throughput), with wait-material pauses when a flow stage outruns its supply.
  • Inter-stage material hold — wet-blue ageing dwell as a transfer-time bridge (wall-clock elapsed minutes) from chrome tanning to sammying, with no machine assignment during the hold.
  • Per-class routing with a transfer-time bridge for stage skips — Suede's routing ends at Buffing, with Coating and Plating omitted as the final-stage tail (no bridge needed); Full-grain's toggle-frame drying is a transfer-time bridge (Dyeing → Staking) that skips the vacuum Drying stage while Corrected-grain runs all 15 stages including vacuum Drying.
  • Shift-aware availability with multi-calendar support — separate calendars for beamhouse (24/5) and finishing (single shift), with holiday exceptions and planned maintenance downtimes.

How Schantt handles each challenge

1. Parallel drum assignment across beamhouse and wet-finish stages.

  • Scheduling six beamhouse drums and eight wet-finish drums manually takes a planner 2 to 3 hours per shift. Each drum can run multiple product classes with different cycle durations — soaking at 840 minutes, liming at 1,260 minutes, pickling at 300 minutes — and the combinatorics of assigning 5 beamhouse batch stages × 6 drums, plus 2 wet-finish stages × 8 drums, quickly exceeds what a spreadsheet can manage.
  • Schantt models each drum as a machine assigned to its stage. In Auto and Semi-Auto modes, the algorithm evaluates assignments across every available drum at every stage subject to each machine's calendar, cycle duration, and batch size. The resulting schedule assigns each batch to a specific drum at each stage, letting the planner review the drum load on the Gantt grouped by machine.

2. Divergent routing when a beamhouse batch splits into multiple grades.

  • After shaving, each beamhouse batch splits into 2 to 3 grade sub-batches (Full-grain, Corrected-grain, Suede) that diverge through the remaining stages — Suede skips Coating and Plating entirely. The split generates 6 to 12 job entries per day from 3 to 4 beamhouse batches, each requiring its own routing.
  • Schantt handles this through per-class routing. The planner defines a routing for each product class — Suede routes through stages 1 through 13 only — and enters each grade sub-batch as a separate job sharing the same earliest-start time. The scheduler respects each routing's stage set and skip bridges, so Suede jobs never generate operations or machine assignments for the stages they skip.

3. Chemical changeover times on drum batteries.

  • Switching between colour and chemistry families on wet-finish drums imposes directional cleaning times: dark to light requires a 180-minute caustic boil, light to dark takes a 60-minute rinse, and same-family transitions complete in 15 minutes. Poor sequencing across 8 drums can waste 3 to 6 hours of drum time per day.
  • Schantt models these as directional changeover times on each machine. The algorithm folds every changeover into each operation's start time, so plans that sequence similar products together score better on total production time. The planner sets the values once on each drum's detail page, and Auto mode reorders jobs to reduce the changeover burden.

4. Bottleneck between batch drums and continuous flow stages.

  • When a flow stage — sammying or shaving — outruns its upstream drum supply, the line sits idle, losing 2 to 4 hours of productive time across 7 finishing machines per shift. Each starvation incident delays the next drum load by 1 to 3 hours.
  • Schantt models the batch-to-flow handoff through partial transfers. The planner enables partial transfer at the chrome-tanning-to-sammying transition (50 hides per partial), allowing sammying to begin the instant the first portion clears the wet-blue ageing dwell rather than waiting for the full drum batch. The scheduler automatically inserts wait-material pauses when a flow stage exhausts its supply, making these idle periods visible on the Gantt.

5. Drying frame capacity for Full-grain toggle drying.

  • Full-grain hides require 24 hours of toggle-frame drying, occupying one of six frame groups per batch. Overbooking the six groups adds 12 to 24 hours of unplanned lead time as batches queue for frame space.
  • Schantt schedules the toggle-drying dwell as a transfer-time bridge from dyeing to staking — a fixed 24-hour elapsed delay with no machine assignment. The planner manually confirms that concurrent toggle-frame holds do not exceed six groups when entering jobs. Vacuum drying (used by Corrected-grain and Suede) is a true flow stage with two parallel machines at 40 hides per hour each, modelled with throughput parameters.

What to model in Schantt

Set up your tannery as a single hybrid-flowshop schedule covering all stages from soaking to plating.

Entity Count Notes
Stage 15 7 batch (soaking through chrome tanning, retanning, dyeing) + 8 flow (sammying through plating)
Machine 32 6 beamhouse drums, 8 wet-finish drums, 2 sammying, 1 splitting, 4 shaving, 2 vacuum drying, 2 staking, 3 buffing, 2 coating lines, 2 plating presses
Product Class 3 Full-grain, Corrected-grain, Suede
Product 3 One representative hide product per class
Calendar 2 24/5 beamhouse, single-shift finishing

Step-by-step setup

1. Create the stages in order. Schantt stages are listed sequentially, and the schedule walks each job through them in position order. Start with the beamhouse stages — Soaking, Liming, Deliming/Bating, Pickling, Chrome Tanning — each typed as batch. Then add Sammying, Splitting, Shaving, Retanning, Dyeing, Drying, Staking, Buffing, Coating, and Plating. Set Drying to flow type, as only vacuum drying uses a throughput rate; toggle drying is handled through a transfer-time bridge. On each Stage detail page, set the transfer times between consecutive stages:

Transfer times:
- Soaking → Liming: 30 min
- Liming → Deliming/Bating: 60 min
- Deliming/Bating → Pickling: 30 min
- Pickling → Chrome Tanning: 30 min
- Chrome Tanning → Sammying: 480 min (wet-blue ageing dwell)
- Sammying → Splitting: 15 min
- Splitting → Shaving: 15 min
- Shaving → Retanning: 120 min (grade sort)
- Retanning → Dyeing: 30 min
- Dyeing → Drying: 30 min (Corrected-grain and Suede — vacuum drying)
- Drying → Staking: 15 min (Corrected-grain and Suede)
- Dyeing → Staking: 1,440 min (Full-grain — toggle-frame drying bridge, no machine; skips the vacuum Drying stage)
- Staking → Buffing: 15 min
- Buffing → Coating: 15 min
- Coating → Plating: 15 min

Suede's routing simply ends after Buffing — Coating and Plating are the final two stages and are omitted as a tail, so no bridge is required.

2. Add machines to each stage. Assign the six beamhouse drums (BH-1 through BH-6) to the Soaking stage; Schantt makes them available at all beamhouse stages through routing entries. Assign the eight wet-finish drums (WF-1 through WF-8) to Retanning. Add the finishing-line machines to their respective stages: Sammy-1 and Sammy-2 to Sammying, Split-1 to Splitting, Shave-1 through Shave-4 to Shaving, VacDry-1 and VacDry-2 to Drying, Stake-1 and Stake-2 to Staking, Buff-1 through Buff-3 to Buffing, CoatLine-1 and CoatLine-2 to Coating, and Plate-1 and Plate-2 to Plating.

3. Create product classes and define routing. Create three product classes: Full-grain, Corrected-grain, and Suede. For each class, define its routing — all 15 stages for Corrected-grain; for Full-grain, all stages except the vacuum Drying stage (its toggle drying is the transfer bridge above); stages 1 through 13 (ending at Buffing) for Suede. On the Product Class detail page, enable partial transfer for the Chrome Tanning → Sammying transition (partial quantity: 50 hides) and for the Shaving → Retanning transition (partial quantity: 1,000 units). Partial transfers let the downstream flow stages begin processing the first portion as soon as it clears the intermediate dwell or sort step, rather than waiting for the entire drum batch to complete, which keeps the finishing line fed while the upstream drum batch continues.

4. Add one product per class. Create one representative product for each class: Full-grain Hide 001, Corrected-grain Hide 001, and Suede Hide 001. Three products are sufficient to demonstrate all routing variants and changeover behaviours.

5. Set machine capacity parameters and changeovers. On each Machine detail page, enter the cycle duration and batch size for batch-stage machines, or the throughput for flow-stage machines:

Beamhouse drums (all 6, per class):
- Soaking: 840 min cycle, 10,500 kg batch
- Liming: 1,260 min cycle, 10,500 kg batch
- Deliming/Bating: 240 min cycle, 10,500 kg batch
- Pickling: 300 min cycle, 10,500 kg batch
- Chrome Tanning: 540 min cycle, 10,500 kg batch

Wet-finish drums (all 8):
- Retanning: Full-grain 240 min, Corrected-grain 360 min, Suede 180 min; 3,500 kg batch
- Dyeing: Full-grain 150 min, Corrected-grain 240 min, Suede 180 min; 3,500 kg batch

Flow-stage throughputs (per machine, per class):
- Sammy-1 and Sammy-2: 100 hides/h (all classes)
- Split-1: 60 hides/h (all classes)
- Shave-1 through Shave-4: 50 hides/h (all classes)
- VacDry-1 and VacDry-2: 40 hides/h (Corrected-grain, Suede only)
- Stake-1 and Stake-2: 80 hides/h (all classes)
- Buff-1 through Buff-3: Full-grain 60 hides/h, Corrected-grain 50 hides/h, Suede 40 hides/h
- CoatLine-1 and CoatLine-2: Full-grain 15 hides/h, Corrected-grain 10 hides/h
- Plate-1 and Plate-2: Full-grain 100 hides/h, Corrected-grain 80 hides/h

Then set the directional changeover times. On each wet-finish drum, configure the changeover matrix for retanning and dyeing with these key direction-dependent durations:

Changeover times (all 8 wet-finish drums, both stages):
- Corrected-grain → Full-grain: 180 min (caustic boil)
- Full-grain → Corrected-grain: 60 min (rinse)
- Corrected-grain → Suede: 120 min
- Suede → Corrected-grain: 90 min
- Full-grain → Suede: 60 min
- Suede → Full-grain: 120 min
- Same-class transitions: 15 min

On the beamhouse drums, set zero-duration changeovers between all class pairs (chemistry is identical across classes at beamhouse stages). On coating lines, set changeovers for Corrected-grain → Full-grain (60 min) and Full-grain → Corrected-grain (30 min).

6. Configure calendars, exceptions, and downtimes. Create two calendars: the Beamhouse Calendar (default, 24 hours Monday through Friday) and the Finishing Calendar (08:00 to 17:00 Monday through Friday). Assign the Finishing Calendar to all finishing machines — Sammy-1, Sammy-2, Split-1, Shave-1 through Shave-4, VacDry-1, VacDry-2, Stake-1, Stake-2, Buff-1 through Buff-3, CoatLine-1, CoatLine-2, Plate-1, and Plate-2. Add three calendar exceptions for the non-working holidays (New Year's Day, International Workers' Day, year-end shutdown). Add planned maintenance downtimes: annual deep chemical clean for each beamhouse drum (24-hour windows), quarterly blade replacements for each shaving machine (4-hour windows), and annual nozzle replacements for each coating line (8-hour windows).

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

Common mistakes

1. Setting a single blanket changeover instead of directional per-pair times. A single 120-minute changeover on a wet-finish drum masks the real asymmetry — dark-to-light needs 180 minutes while light-to-dark needs only 60. The resulting schedule will misrepresent the true cleaning burden. Fix: Enter the full directional matrix on each drum's detail page so the scheduler applies the correct duration for each transition.

2. Creating one product class that covers all grades. A single class forces every product through every stage, so Suede wrongly occupies coating and plating lines. Fix: Define three separate product classes — Full-grain, Corrected-grain, Suede — each with its own routing. Suede's routing ends at Buffing; because Coating and Plating are the final stages, they are simply omitted as a tail, with no bridge needed.

3. Modelling toggle drying as a flow-stage machine with throughput. Toggle-frame drying is a 24-hour hold with no continuous throughput. Treating it as a flow stage with a throughput rate produces a schedule that shows operations finishing in minutes instead of hours. Fix: Represent toggle drying as a transfer-time bridge from Dyeing to Staking (1,440 min), with no machine assignment. The planner manually checks concurrent frame occupancy.

4. Using a single calendar for the entire tannery. The beamhouse runs 24/5 while finishing runs a single day shift. With one calendar, the scheduler either wastes drum capacity on evening shifts or schedules flow-stage work during unstaffed hours. Fix: Create two calendars and assign the finishing calendar to every machine from Sammy-1 onward.

5. Forgetting to set partial transfers at the batch-to-flow handoff. Without partial transfers, the flow stages wait for the entire drum batch to clear the wet-blue ageing dwell before the first hide reaches sammying. Fix: Enable partial transfer (50 hides) at Chrome Tanning → Sammying and (1,000 units) at Shaving → Retanning on each product class's detail page so flow stages can start on the first available portion.

What a good schedule looks like

When the tannery model is correctly configured and running in Auto mode, the schedule shows a clean flow from beamhouse through finishing with minimal idle gaps.

Before (manual drum assignment with spreadsheets):
- 2 to 3 hours per shift spent hand-assigning batches to drums, often leaving several drums empty during a shift
- 3 to 6 hours of drum time lost per day to poorly sequenced chemical cleaning on wet-finish drums
- 2 to 4 hours of productive time lost on finishing machines per shift as flow stages starve for material
- Batches queueing for toggle frames add 12 to 24 hours of unplanned lead time on Full-grain orders

After (Schantt Auto mode):
- Drum loading is visible at a glance on the machine-grouped Gantt; the algorithm assigns each batch to the best available drum at each stage, balancing the 6 beamhouse drums across 15-stage routings and distributing the 8 wet-finish drums across the retanning and dyeing workload
- Changeover-related drum downtime saved — the same jobs sequenced to cluster similar chemistry, so directional cleaning windows (180 min dark-to-light, 60 min light-to-dark) appear as scheduled changeover periods between operations rather than unplanned gaps
- Finishing-line idle time reduced — partial transfers let sammying begin as soon as the first 50 hides clear the wet-blue ageing dwell, and wait-material pauses are explicit on the Gantt rather than surprises discovered mid-shift
- Full-grain drying lead time stabilises — toggle-bridge transfers schedule each batch for a 24-hour dwell, and the planner confirms frame availability before adding jobs rather than discovering overbooking after the fact
- The entire 2-week horizon updates in seconds when a new hide shipment arrives or a drum goes down for maintenance, removing the 2 to 3 hours per shift previously spent on manual rebalancing

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