Skip to main content
IoTFlows Logo
IoTFlows Logo
Shopping Cart

How to find the real bottleneck on a packaging line

The machine that is stopped is often only waiting. Read the counts at each step to find which machine stopped the line first, and which one limits its rate.

Applications Engineering Team, IoTFlows

10 min read

Updated

You tell which machine limits a filler-labeler-packer line by counting at every step and reading two things: for each stoppage, the step whose count stopped first, and over a shift, any step whose running rate falls below the filler’s. The machine standing still is often only waiting. The limiter is whichever machine costs the filler the most minutes, by stopping longer than the accumulation covers or by running slow.

This guide is for plant managers and engineers on filling and packing lines. It applies the general bottleneck method to a packaging line, and works one hypothetical bottled-tea line through a case packer jam and a slow labeler.

Key takeaways

  • On a packaging line, the machine standing still is often starved or blocked by a neighbor, not the cause of the stop.
  • The step whose count stopped first caused the stoppage, and the steps that stopped after it were waiting on it.
  • A stop costs line output only for the minutes it outlasts the accumulation around the critical machine, usually the filler.
  • A step that runs slower than the filler limits the line without ever stopping first, so read its rate against Step 1 too.
  • Fix long stops at the machine, add accumulation for stops just past the buffer, and restore the speed of a slow step.

Why the stopped machine often isn’t the cause#

The machine that is stopped when you walk up is often stopped because a neighbor made it stop. On a line, a machine can’t run without units coming in and room for units going out.

Definition

Starved and blocked describe a packaging machine paused by its neighbors rather than by its own fault: starved when upstream equipment can’t send it material, and blocked when downstream equipment can’t receive what it makes.

PackML, the state model for packaging machines, files both under one state, Suspended: the machine is paused, waiting for external process conditions to clear. A machine paused for an internal condition is Held instead.[1] The distinction is the whole problem in one sentence: three machines can read stopped while only one of them has a fault.

Two line designs make the cause hard to see.

  • Close-coupled lines. With no room between machines, one fault stops its neighbors within seconds. In one bottling line, any machine that faulted almost immediately stopped all the machines upstream of it.[3]
  • Lines with accumulation. Tables and conveyors between machines hold units, so a stop reaches a neighbor minutes later, or never. By the time the filler stops, the machine that caused it may have been down for three minutes, and the buffers between machines have hidden the order.

Which machine is meant to limit the line?#

A packaging line is built with one machine chosen to set its pace, so the first step is knowing which one that is.

Definition

Critical machine is the machine a packaging line is designed around: the slowest machine on the line, which sets line output, with every other machine given spare speed and buffer space so its stops reach the critical machine as rarely as possible.

On a liquid line the critical machine is usually the filler, the primary process. Sidel’s white paper on line regulation describes the speed profile as a V curve: the critical machine sits at the bottom, with faster machines before and after it.[2]

Upstream over-speed keeps the filler fed. Downstream over-speed empties the accumulation after a stop, so it is free for the next one.

Accumulation matters as much as speed. In the same paper’s model, five machines each at 97% performance multiply to 85.8% for the line when they are close-coupled. With enough accumulation between them, the line holds 97%.[2]

For example, a bottled-tea line has this design:

MachineRated speedRole
Unscrambler240 bottles a minuteKeeps the filler fed
Filler200 bottles a minuteCritical machine
Labeler230 bottles a minuteClears accumulation after a stop
Case packer250 bottles a minuteClears accumulation after a stop
A hypothetical line. The case packer packs 24 bottles a case, so 250 bottles a minute is about 10.4 cases.
As designed, the filler sits at the bottom of the V. A labeler set to 190 moves it. Sample data.

The design tells you which machine should limit the line. The counts tell you which one does.

How do you read counts at each step?#

You read a line’s counts two ways: by time, to find the step that stopped first, and by rate, to find a step that runs slower than Step 1. Put a counter after each machine, number the steps in the order a unit passes them, and make the critical machine’s counter Step 1 when it is the first machine you count.

ReadingWhat it findsRead it when
Step whose count stopped firstThe cause of one stoppageEvery time the filler stops
Rate difference against Step 1A step running slowerWhile every step is running
Count difference against Step 1Units rejected or lostAt the end of a run

A counter reads stopped once no unit passes for longer than its downtime filter, then dates the stop to the last unit. Set the filter just past the longest normal gap, as the downtime filter guidance describes, or the first-stop times blur.

Sort the stop times and read the direction. When a later step stopped first and the earlier steps followed, a downstream machine blocked the line. When Step 1 stopped first and the later steps ran dry, the filler stopped for its own reasons or was starved from upstream.

One stoppage, minute by minute#

Here is the bottled-tea line through one 5-minute case packer jam, read both ways.

Worked example

A case packer jam on the bottled-tea line

  • The line runs at 200 bottles a minute, the filler’s rated speed.
  • The accumulation table between filler and labeler has room for 400 bottles, 2 minutes at 200 a minute. The conveyor between labeler and case packer has room for 300, 1.5 minutes.
  • In normal running both buffers sit near empty, because the machines after the filler are faster.
  • The case packer jams at 10:02:00 and restarts at 10:07:00.
MinuteFiller, Step 1Labeler, Step 2Case packer, Step 3
10:00200200200
10:01200200200
10:022002000
10:032001000
10:0420000
10:0510000
10:06000
10:07200230250
10:08200230250
10:09200230250

The labeler fills the 300 spaces on its outfeed in 1.5 minutes, so it stops at 10:03:30. The filler fills the 400 spaces on the table in 2 more minutes, so it stops at 10:05:30. Sorted by first stop, the case packer is the cause.

The filler is the critical machine, so line output falls only while it stands. Count the loss two ways:

  • By the filler’s stop: it stood from 10:05:30 to 10:07:00, 1.5 minutes, so 1.5 × 200 = 300 bottles.
  • By the buffers: the jam lasted 5 minutes, and the buffers covered (300 + 400) ÷ 200 = 3.5 of them. That leaves 5 − 3.5 = 1.5 minutes, or 300 bottles.
The 5-minute jam costs the line 300 bottles, 1.5 minutes of filler time
The case packer stopped first; the labeler and filler were blocked behind it. Sample data.

The ten-minute totals check the arithmetic. The filler counted 1,700 bottles, the labeler 1,390 and the case packer 1,150. The 310-bottle gap between the filler and labeler counts is on the accumulation table, and the 240-bottle gap between the labeler and case packer is on its conveyor.

Both buffers drain at the labeler’s and packer’s spare speed: the table empties at 230 − 200 = 30 bottles a minute, so it takes about 13 minutes to clear.

Three lessons follow. Each machine logged its own stop: 5 minutes, 3.5 and 1.5, or 10 machine-minutes for one jam, so code the cause once, on the case packer.

The line lost 1.5 minutes, not 5. And a case packer jam under 3.5 minutes costs nothing, as long as the buffers have emptied since the last one.

What if the limiting machine never stops?#

A machine that runs slower than the filler limits the line without ever stopping first. Its count keeps moving, so a first-stop sort never names it.

Worked example

A labeler set to 190 bottles a minute

  • A worn label applicator wrinkles labels above 190 a minute, so the operator sets the labeler to 190.
  • Shift: 480 minutes with a 30-minute break, so the filler could fill 450 × 200 = 90,000 bottles.
  • No machine has a stop of its own all shift.

The accumulation table fills at 200 − 190 = 10 bottles a minute, so its 400 spaces are full after 40 minutes. From then on the filler is blocked in short gaps and runs at the labeler’s 190.

Count the shortfall two ways:

  • By rate: the labeler runs 10 bottles a minute below the filler for 450 minutes, so 450 × 10 = 4,500 bottles.
  • By counts: the labeler labels 450 × 190 = 85,500 bottles against the filler’s possible 90,000, so 90,000 − 85,500 = 4,500 bottles.
The slow labeler costs 4,500 bottles a shift, 15 times the case packer jam

The counts show the pattern if you read rates as well as stops. For the first 40 minutes the labeler’s rate difference against Step 1 is −10 bottles a minute. Once the table is full, the filler is held back to 190 in gaps too short to read as stops, so the difference disappears and every step reads 190.

That is the signature of a slow step: the whole line runs below the critical machine’s rated speed with no stop to explain it. The step whose rate fell behind Step 1 first is the cause, and the full accumulation table sits right in front of it. In the figure above, the labeler set to 190 has become the bottom of the V.

The filler’s own count catches the 400 bottles left on the table: it reads 85,900, the labeler 85,500. That gap matches the full accumulation table, a check that the counts agree.

Find the limiting machine over a week#

One stoppage names one cause. A week of stoppages names the machine to fix.

  1. Write down the design

    List each machine’s rated speed for the container you run, mark the critical machine, and note each buffer in minutes at the line rate.

  2. Count after every machine

    Put a counter after each machine’s last reject point and validate it against a hand count. The count at every step guide covers placement.

  3. Name the first stop of each filler stop

    For every stop of the critical machine, record the step whose count stopped first.

  4. Add up the filler’s minutes by cause

    Sum the minutes the filler stood, not the minutes the cause stood, under the step that stopped first.

  5. Check each step’s running rate

    Mark any step whose rate sat below the critical machine’s rated speed for long stretches, and convert the gap to filler minutes.

The step at the top of that list is the machine limiting the line this week. It may be the filler itself, a machine after it, or the supply in front of it.

See which step stopped first#

IoTFlows counts each step of a line with a BeamTracker, a laser counter that counts every unit breaking its beam, with no PLC connection. Each BeamTracker reads stopped once no unit has passed for longer than its downtime filter and back-dates the stop to the last unit, so the step whose count stopped first is the one to walk to.

Group the steps as a cascading group, and every step after Step 1 shows its first pass yield, the units lost and its rate difference against Step 1. See packaging line monitoring.

Altium Packaging counts every bottle on its ten bottling lines in Memphis with BeamTracker. Each line is counted at every step and read as a cascade, at 20 to 140 bottles a minute.

What to fix once you’ve found it#

The fix depends on how the limiting machine costs the filler its minutes. Match what the counts show to the first fix.

What the counts showWhat limits the lineFix first
Step 1 stops first, on its ownThe filler’s own stopsThe filler’s top stop reasons
Supply runs out, then Step 1 stopsSupply starves the fillerUnscrambler or bottle supply
A later step stops first, for longThat machine blocks the fillerThat machine’s breakdowns
A later step stops first, brieflyBuffer too short for its stopsThat machine’s jams, then buffer
A step runs slow but never stopsThat step’s speedRestore its rated speed
All steps run, counts drift apartRejects, not stopsYield at that step

When the filler is the limit, protect every minute it has. The exploit steps in the general bottleneck method apply as they are: run it through breaks, stage changeovers and keep its buffers ready. When counts drift apart while every step runs, the loss is yield, and first pass yield is the measure to work on.

Slowing a line can raise its output. In one bottling-line simulation, engineers set the filler, the line constraint, at 250 bottles a minute, set the machines after it at progressively increasing rates and added two minutes of accumulation after the filler. The simulation showed the client could achieve twice the OEE.[3]

Re-read the design after every fix. Restore the labeler to 230 and the filler is the bottom of the V again. The fix also gives the case packer its cover back: with the table full, a packer jam blocks the filler after about 1.5 minutes instead of 3.5.

Questions#

Is the bottleneck always the slowest machine on a packaging line?#

By design, yes. Line builders make one machine, usually the filler, the slowest and give the others spare speed, so the filler sets the line rate. In practice the limiter is whichever machine costs the filler the most minutes. A labeler turned down below the filler’s speed, or a case packer whose jams outlast the accumulation, takes that role while the filler stays the slowest machine on paper.

Does adding accumulation fix a bottleneck?#

Only for stops a little longer than the buffer already covers. Accumulation lets the critical machine keep running while a neighbor stops, so short stops cost nothing. It can’t fix a machine that runs slower than the filler, because the buffer fills and stays full, and no practical table covers a 30-minute breakdown.

Why do the machines after the filler run faster than it?#

So they can empty the accumulation after a stop. A case packer that only matches the filler’s speed never clears the bottles that piled up while it was jammed, so its next jam blocks the filler sooner. Spare speed after the critical machine makes room for the next stop, and spare speed before it keeps the filler fed.

Should each machine log its own reason when the line stops?#

Log the cause once, on the machine whose count stopped first, and code the machines that were waiting as blocked or starved. Otherwise one 5-minute case packer jam appears as 10 machine-minutes of downtime across three machines, and the downtime Pareto ranks the filler and labeler for stops they didn’t cause.

Written by

Applications Engineering Team, IoTFlows

Sources#

  1. OPC 30050: OPC UA for PackML, Common Object Model, version 1.01, OPC Foundation. Accessed Oct 30, 2026
    reference.opcfoundation.org/specs/OPC-30050/full
  2. Line Regulation and Accumulation, white paper 11914r1v4.0, Sidel, prepared by Zenith Global Ltd. Accessed Oct 30, 2026
    sidel.com/media/ux2khute/11914_white_paper_r42.pdf
  3. Clear constraints on bottling lines using simulation, Creighton Fearrington, Plant Engineering. Accessed Oct 30, 2026
    plantengineering.com/clear-constraints-on-bottling-lines-using-simulation