Paste this where you want the calculator to appear. It works on any site — WordPress, Squarespace, Webflow, Ghost or plain HTML — and needs no JavaScript of yours. It carries a link back here, which is the only thing we ask for it.
Halve the shade band and you double the remnants. Both numbers are here.
Shade Bands Required
—
Colour spread divided by the tolerance you will accept
Allocation, Lays & Stranded Fabric
Fabric Stranded as Remnants
—%
Stranded Fabric
—m
Full Lays per Band
—
Rolls per Band
—
Fabric per Band
—m
Fabric Consumed per Lay
—m
Rolls Consumed per Lay
—
Garments Cut from Full Lays
—
Consignment Total
—m
This model assumes rolls are evenly distributed across the colour spread, which is what an unsorted consignment from several dye machines looks like. A bimodal lot - two machines, each internally tight - produces two dense bands and empty space between them, so the even-distribution figure for rolls per band will be wrong even though the band count is right; band from the actual histogram when one is available. Within-roll variation is not modelled and is not always small: side-to-centre-to-side shading on a stenter or a jet can approach the roll-to-roll spread, and no allocation scheme fixes it. Remnant fabric is treated as stranded rather than lost. The lay figure assumes every lay is cut at the stated ply depth; step lays and mixed markers change the arithmetic and generally reduce the remnant.
Using this calculator
About the Shade Band Grouping & Roll Allocation to Cut Lays
The formula
This is the expression the tool evaluates. Every term is named underneath, with the unit it must be supplied in.
How many groups the spread forcesshadeBands = ceiling( deltaESpread / bandWidth )
The band width is a decision, not a measurement. It is the largest colour difference you are willing to have appear between two panels of the same garment, and it divides the consignment whether the planner intends it or not.
Lays are whole or they are not laysfabricPerLay = markerLength x plies laysPerBand = floor( fabricPerBand / fabricPerLay )
The floor is where the loss lives. A band holding 2,400 m of fabric and a lay consuming 390 m yields six lays and 60 m that cannot be laid at full ply depth without crossing into the next band.
Remnants multiply with bandsorphanFabric = ( fabricPerBand - laysPerBand x fabricPerLay ) x shadeBands
Each band strands its own tail. Tightening the tolerance creates more bands, and every extra band adds another remnant of up to one full lay - which is why shade tolerance is a costing decision as much as a quality one.
Output from full lays onlygarments = laysPerBand x shadeBands x plies x garmentsPerMarker
Remnant fabric still produces garments, but at shorter lay lengths and worse marker efficiency, so it is counted separately rather than folded into this figure.
Symbols used above
Symbol
Stands for
Unit
dE
CIE colour difference between two rolls
dE
shade band
A group of rolls close enough in colour to cut as one garment
—
ply
One layer of fabric in the spread lay
—
marker
The cutting plan laid along the length of the spread
m
How the result is derived
Step by step, from the values you type to the figure on screen.
The 7 inputs are read from the form on every keystroke: Rolls in the Consignment, Average Roll Length, Total Colour Spread, Shade Band Width, Marker Length, Plies per Lay and Garments per Marker.
Each value is checked against the accepted range in the input table below. A value outside its range stops the calculation rather than producing a misleading figure — the results blank out and a message appears.
The validated values are substituted into the expression above, which resolves Shade Bands Required together with every supporting figure in one pass — no value is carried over from a previous entry.
The supporting outputs — Fabric Stranded as Remnants, Stranded Fabric, Full Lays per Band, Rolls per Band, Fabric per Band, Fabric Consumed per Lay, Rolls Consumed per Lay, Garments Cut from Full Lays and Consignment Total — come from the same pass, so they always describe the same case as the headline figure.
Results are rounded for display only. The full-precision value is used throughout the chain, so reading a rounded intermediate figure back into the tool by hand can shift the last digit.
What each input means
Where to read each value on the floor, the unit it must be in, and the range the tool accepts.
Input
Unit
Accepted range
Default
What it means
Rolls in the Consignment
—
1 to 5000
120
Average Roll Length
m
5 to 500 m
60
Total Colour Spread
dE
0.05 to 8 dE
1.2
Worst roll against the best, not against standard
Shade Band Width
dE
0.05 to 4 dE
0.4
The tolerance you will allow inside one garment
Marker Length
m
0.5 to 40 m
6.5
Plies per Lay
—
1 to 300
60
Garments per Marker
—
1 to 60
8
What the tool returns
The headline figure and every supporting value it is built from.
Output
Unit
What it tells you
Shade Bands Required (headline result)
—
Colour spread divided by the tolerance you will accept
Fabric Stranded as Remnants
%
Stranded Fabric
m
Full Lays per Band
—
Rolls per Band
—
Fabric per Band
m
Fabric Consumed per Lay
m
Rolls Consumed per Lay
—
Garments Cut from Full Lays
—
Consignment Total
m
Worked example
Given
0
120 rolls averaging 60 m, 7,200 m in total
1
Colour spread of 1.2 dE across the consignment
2
Shade band width set at 0.4 dE
3
6.5 m marker, 60 plies, 8 garments per marker
Substituting
bands = ceiling( 1.2 / 0.4 ) = 3fabricPerBand = 120 / 3 x 60 = 2,400 mfabricPerLay = 6.5 x 60 = 390 mlaysPerBand = floor( 2,400 / 390 ) = 6remnant = 2,400 - 6 x 390 = 60 m per band, 180 m over three
Answer
0
3 shade bands, 40 rolls and 2,400 m in each
1
390 m consumed per lay, so 6 full lays per band
2
180 m stranded as remnants, 2.5% of the consignment
3
8,640 garments cut from full lays
Note what happens if the band is tightened to 0.2 dE: six bands, 1,200 m each, three full lays and 30 m stranded per band - 180 m again, but now spread over six tails and six separate lay set-ups. The stranded quantity is roughly stable while the handling cost doubles, and that asymmetry is the argument for setting the band from the measured spread rather than from habit.
How to use it
Work through the input groups in order — The Consignment and The Cut Plan. The defaults are a realistic case, so you can change one value at a time and watch what moves.
There is no calculate button. Every figure recalculates as you type or drag, which is what makes this usable for a what-if sweep rather than a single answer.
Read Shade Bands Required in the dark results panel — that is the headline figure, expressed in the unit shown.
Check the supporting rows underneath (Fabric Stranded as Remnants, Stranded Fabric, Full Lays per Band, Rolls per Band, Fabric per Band, Fabric Consumed per Lay, Rolls Consumed per Lay, Garments Cut from Full Lays and Consignment Total) before acting on the headline — they are where an implausible input usually shows itself first.
Reset to defaults returns every field to the reference case, which is the quickest way to check whether a surprising result came from the tool or from an input you had changed earlier.
Where this is used
Process planning — establishing Shade Bands Required before a trial is booked, so machine time and material in Apparel Manufacturing & Garmenting are committed against a calculated figure rather than an estimate.
Costing and quotation — Shade Bands Required is an input to the cost sheet, and quoting from a worked number rather than a remembered one is what keeps a margin intact.
Troubleshooting — when the floor result drifts from plan, entering the measured values (starting with Rolls in the Consignment) shows how much of the gap in Shade Bands Required each variable explains.
Teaching and study — the accepted ranges bracket normal Apparel Manufacturing & Garmenting practice, so moving one variable at a time shows the shape of the relationship rather than a single answer.
Reading the result
Typical bands and what each one is telling you.
Value
What it indicates
Spread under 0.5 dE
One band. The lot cuts as a single shade with no allocation work.
0.5 - 1.5 dE spread
Normal for reactive dyeing across a multi-machine lot. Two to four bands.
Band width 0.3 - 0.5 dE
The usual commercial tolerance for panels inside one garment.
Stranded fabric above 5%
The band is too tight for the lay depth, or the lays are too long for the band.
Assumptions and limits
This model assumes rolls are evenly distributed across the colour spread, which is what an unsorted consignment from several dye machines looks like. A bimodal lot - two machines, each internally tight - produces two dense bands and empty space between them, so the even-distribution figure for rolls per band will be wrong even though the band count is right; band from the actual histogram when one is available. Within-roll variation is not modelled and is not always small: side-to-centre-to-side shading on a stenter or a jet can approach the roll-to-roll spread, and no allocation scheme fixes it. Remnant fabric is treated as stranded rather than lost. The lay figure assumes every lay is cut at the stated ply depth; step lays and mixed markers change the arithmetic and generally reduce the remnant.
Every input is bounded to the range normal practice occupies (Rolls in the Consignment 1 to 5000, Average Roll Length 5 to 500 m and Total Colour Spread 0.05 to 8 dE, and so on for the rest). Those bounds are guard rails against typing errors, not a claim that the formula fails one unit outside them.
The calculation is deterministic: the same inputs always give the same result. It carries no allowance for machine condition, operator skill, ambient conditions or lot-to-lot material variation unless an input above explicitly represents one.
Nothing is sent anywhere. The maths runs in your browser, so the numbers you type never leave the page.
Standards and further reading
ISO 105-A05 - instrumental assessment of change in colour.
ASTM D2244 - calculation of colour tolerances and colour differences.
AATCC Evaluation Procedure 7 - instrumental assessment of the degree of chemical or physical change.
Questions people ask
Why band on roll-to-roll spread rather than difference from standard?
Because the eye compares panels to each other, not to a standard hanging in a light box. A consignment that sits a uniform 0.9 dE away from the approved standard is a single shade as far as the garment is concerned, and cuts as one band with no stranded fabric at all. A consignment averaging 0.2 dE from standard but scattered across a 1.2 dE range is the difficult one, because two rolls at opposite ends of that scatter can end up as the front and the sleeve of the same shirt. Measure the spread, band on the spread, and report the offset from standard separately as an approval question.
Can the remnants not simply be cut as shorter lays?
They can, and in practice they are - but not at the same cost. A 60 m remnant at 60 plies is a one-metre lay, which no marker fits; it is cut at lower ply depth, over a shorter marker, with worse nesting, and it consumes a spreading and cutting set-up of its own. Marker efficiency on short lays typically falls two to four points, and the set-up time is the same as for a full lay. That is why the remnant figure is reported as stranded rather than lost: the fabric is recoverable, the productivity is not.
Does allocating by band actually prevent two-tone garments?
It prevents the panel-to-panel case, which is the one customers return. Banding guarantees every ply in a lay came from rolls within one tolerance, so any garment cut from that lay has panels within that tolerance of each other. What it does not control is the bundle stage: if bundles from different bands are mixed at sewing, a band-correct cut becomes a shade-wrong garment. Ply numbering through to the sewing line is what closes that gap, and it is the reason cut-order planning and bundle ticketing belong to the same discipline as this calculation.
How is the colour spread measured across 120 rolls?
Spectrophotometrically, at both ends and the middle of each roll, on a folded four-ply presentation so the instrument does not read through the fabric. The values are recorded against a single agreed standard, and the spread is the difference between the extreme rolls rather than the mean deviation. Reading only one point per roll understates the spread, because within-roll variation from side-to-centre-to-side dyeing effects can be a large fraction of the roll-to-roll figure; the practical rule is to treat the worst reading on a roll as that roll position.