Jump to a calculator 618 tools

Quality Systems

End-to-End Lot & Roll Traceability Depth and Recall Exposure

Put this calculator on your own site

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.

See what it looks like

One bale of contaminated cotton reaches 18,000 shirts. Your records decide whether you pull 754 cartons or 5,250.

The Implicated Lot What went wrong, and how much of it survives to finished goods
kg

One cotton bale is roughly 220 kg

%

Fibre to packed garment, after every waste and reject stage

Chain Fan-In How many upstream lots feed each downstream one
lots

Segregated controlled blends run low, commodity laydowns 40 to 90

lots

Count warp and weft supply separately if they differ

lots

One means the dyehouse never combines greige lots

lots

Shade banding usually forces more than one

Records & Recall Window How far back the chain is intact, and what is exposed
links

Counted back from the finished unit, 4 is bale-level identity

kg

A mid-weight shirt is about 0.42 kg

units

Used to size the blind quarantine window

days

Days of production at risk before the problem was caught

units

Cartons, not units, are what the warehouse actually pulls

Units to Quarantine

— units

The traced pull if the chain holds, the whole window if it does not

Dispersion, Exposure & What the Records Are Worth

Finished Units Actually Implicated
— units
Dispersion Factor Across the Chain
— x
Implicated Mass at Finished Goods
— kg
Share of the Original Lot in Each Unit
— ppm
Lots Resolvable from the Records
— lots
Unresolved Fan-In
— x
Implicated Share of the Exposure Window
— %
Cartons to Pull
— cartons

The model assumes each affected lot is fully consumed by the next stage and that blending is complete, which is the conservative reading and the one auditors apply. Where a lot is only partly consumed the true implicated mass is smaller, but you need consumption records at lot level to claim that, and if you had those you would probably not be estimating. Fan-in values should be the maximum the process permits, not the average, because a recall is decided by the worst case in the window rather than the typical one. The chain is treated as a simple sequence: a genuine bill of materials with parallel warp and weft supply, re-dyed seconds re-entering the stream, or leftover fabric returned to stock forms a graph rather than a chain, and each of those paths adds fan-in this calculation will not see. Yield is applied as a single cumulative figure and assumes waste is representative - if the affected material is preferentially removed, by a metal detector or a contamination sorter, the real exposure is lower, and if it is preferentially retained the figure here is optimistic. The quarantine result sizes containment only; it is not a recall decision, which also turns on where the product has already shipped, what the specification actually requires, and the regulatory regime of the destination market. Finally, the window cap means a broken chain and a complete one can return the same quarantine figure when dispersion already exceeds the window - that is not the records working, it is the exposure being larger than the period you asked about.

Using this calculator

About the End-to-End Lot & Roll Traceability Depth and Recall Exposure

The formula

This is the expression the tool evaluates. Every term is named underneath, with the unit it must be supplied in.

How far one lot spreads
dispersionFactor = balesPerMix x yarnLotsPerFabricLot x fabricLotsPerDyeBatch x dyeLotsPerCutLay

Each link multiplies. If a mix draws on m upstream lots and consumes them fully, one bad lot makes the entire mix suspect, so the implicated mass is m times what it was. Batch mass never enters the product - a bigger batch does not dilute the exposure, it only divides the same implicated mass into more pieces.

From bale to garments
implicatedMassKg = lotMassKg x dispersionFactor x cumulativeYield / 100 implicatedUnits = implicatedMassKg / unitMassKg

Yield is applied once, cumulatively, because waste removed at any stage leaves the finished-goods stream. The result is the number of saleable units that contain any fraction of the original lot, however small.

What the records can and cannot resolve
suspectPoolLots = product of the first traceDepth links unresolvedFanIn = dispersionFactor / suspectPoolLots

Depth is counted backwards from the finished unit, so a partial chain is the leading slice of the same product. Unresolved fan-in is the factor you cannot see past - it is the multiplier on your ignorance, and it is exactly 1 only when the chain reaches bale identity.

The pull the records permit
quarantineUnits = min( implicatedUnits, windowUnits ) if the chain is complete, otherwise windowUnits where windowUnits = dailyOutputUnits x windowDays

A complete chain lets you name the affected units and pull only those, capped by what you actually made in the window. A chain broken anywhere collapses to the blind response: quarantine everything produced in the exposure window, because nothing distinguishes the affected units from the rest.

Symbols used above
SymbolStands forUnit
fan-inNumber of upstream lots combined into one downstream lotlots
dispersion factorProduct of the fan-in of every link in the chainx
depthLinks of unbroken lot identity, counted back from the finished unitlinks
ppmParts per million of a finished unit originating in the affected lotppm

How the result is derived

Step by step, from the values you type to the figure on screen.

  1. The 11 inputs are read from the form on every keystroke: Mass of the Affected Upstream Lot, Cumulative Yield to Finished Goods, Bales per Laydown Mix, Yarn Lots per Fabric Lot, Fabric Lots per Dye Batch, Dye Lots per Cut Lay, Links of Record Intact (0 to 4), Finished Unit Mass, Daily Output, Exposure Window and Units per Carton.
  2. 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.
  3. The validated values are substituted into the expression above, which resolves Units to Quarantine together with every supporting figure in one pass — no value is carried over from a previous entry.
  4. The supporting outputs — Finished Units Actually Implicated, Dispersion Factor Across the Chain, Implicated Mass at Finished Goods, Share of the Original Lot in Each Unit, Lots Resolvable from the Records, Unresolved Fan-In, Implicated Share of the Exposure Window and Cartons to Pull — come from the same pass, so they always describe the same case as the headline figure.
  5. 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.

InputUnitAccepted rangeDefaultWhat it means
Mass of the Affected Upstream Lotkg0.1 to 200000 kg220One cotton bale is roughly 220 kg
Cumulative Yield to Finished Goods%1 to 100 %72Fibre to packed garment, after every waste and reject stage
Bales per Laydown Mixlots1 to 200 lots12Segregated controlled blends run low, commodity laydowns 40 to 90
Yarn Lots per Fabric Lotlots1 to 100 lots2Count warp and weft supply separately if they differ
Fabric Lots per Dye Batchlots1 to 100 lots1One means the dyehouse never combines greige lots
Dye Lots per Cut Laylots1 to 100 lots2Shade banding usually forces more than one
Links of Record Intact (0 to 4)links0 to 4 links4Counted back from the finished unit, 4 is bale-level identity
Finished Unit Masskg0.001 to 100 kg0.42A mid-weight shirt is about 0.42 kg
Daily Outputunits1 to 1000000 units6000Used to size the blind quarantine window
Exposure Windowdays1 to 365 days21Days of production at risk before the problem was caught
Units per Cartonunits1 to 1000 units24Cartons, not units, are what the warehouse actually pulls

What the tool returns

The headline figure and every supporting value it is built from.

OutputUnitWhat it tells you
Units to Quarantine (headline result)unitsThe traced pull if the chain holds, the whole window if it does not
Finished Units Actually Implicatedunits
Dispersion Factor Across the Chainx
Implicated Mass at Finished Goodskg
Share of the Original Lot in Each Unitppm
Lots Resolvable from the Recordslots
Unresolved Fan-Inx
Implicated Share of the Exposure Window%
Cartons to Pullcartons

Worked example

Given

0
One 220 kg bale found contaminated, 72 percent cumulative yield
1
Laydown of 12 bales, 2 yarn lots per fabric lot
2
1 fabric lot per dye batch, 2 dye lots per cut lay
3
Full 4-link records, 0.42 kg shirts, 24 per carton
4
6,000 units a day over a 21 day exposure window

Substituting

dispersionFactor = 12 x 2 x 1 x 2 = 48implicatedMassKg = 220 x 48 x 0.72 = 7,603.2 kgimplicatedUnits = 7,603.2 / 0.42 = 18,102.86 unitswindowUnits = 6,000 x 21 = 126,000, so the traced pull is the smaller figurecartonsToPull = 18,102.86 / 24 = 754.29 cartons

Answer

0
Dispersion factor 48x, implicating 7,603.2 kg of finished goods
1
18,102.86 shirts contain some of that bale
2
Each shirt is 20,833.33 ppm - about 2 percent - original lot
3
Records resolve all 48 lots, so unresolved fan-in is 1
4
Quarantine 18,102.86 units, which is 754.29 cartons
5
That is 14.37 percent of the 126,000 unit window

Now break the chain. Set the records to 2 links - the dyehouse and the cutting room kept lot identity, the spinning mill did not - and every figure above stays exactly the same except the ones that matter. The same 18,102.86 shirts are still affected; you simply cannot say which. Resolvable lots fall from 48 to 2, unresolved fan-in rises to 24, and the pull jumps from 754.29 cartons to 5,250 - the entire 21 day window. The contamination did not change. Seven times the recall did, and the difference is a spinning mill lot number.

How to use it

  1. Work through the input groups in order — The Implicated Lot, Chain Fan-In and Records & Recall Window. The defaults are a realistic case, so you can change one value at a time and watch what moves.
  2. 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.
  3. Read Units to Quarantine in the dark results panel — that is the headline figure, expressed in units.
  4. Check the supporting rows underneath (Finished Units Actually Implicated, Dispersion Factor Across the Chain, Implicated Mass at Finished Goods, Share of the Original Lot in Each Unit, Lots Resolvable from the Records, Unresolved Fan-In, Implicated Share of the Exposure Window and Cartons to Pull) before acting on the headline — they are where an implausible input usually shows itself first.
  5. 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 Units to Quarantine before a trial is booked, so machine time and material in Quality Systems, Traceability, Utilities & Factory Decisions are committed against a calculated figure rather than an estimate.
  • Costing and quotation — Units to Quarantine 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 Mass of the Affected Upstream Lot) shows how much of the gap in Units to Quarantine each variable explains.
  • Teaching and study — the accepted ranges bracket normal Quality Systems, Traceability, Utilities & Factory Decisions 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.

ValueWhat it indicates
Unresolved fan-in of 1Bale-level identity survives to the finished unit. This is what ISO 22095 identity preservation is meant to deliver, and it is the only state in which a targeted recall is defensible.
Unresolved fan-in of 2 to 10Partial chain. You can narrow the pull but not name the units. Expect to quarantine several times the true exposure and to argue about it with the customer.
Dispersion factor above 100Commodity blending. A single bad bale reaches most of a month. Segregating the laydown is the only lever with real leverage here - records cannot undo mixing that already happened.
Implicated share of window above 100 percentThe dispersion has outrun the window you were investigating. Widen the window before deciding anything: the exposure predates it.
Lot share below 1,000 ppmEach unit holds under a tenth of a percent of the affected lot. Whether that still constitutes a defect is a specification question, not a traceability one, and it is worth answering before the recall rather than during it.

Assumptions and limits

  • The model assumes each affected lot is fully consumed by the next stage and that blending is complete, which is the conservative reading and the one auditors apply. Where a lot is only partly consumed the true implicated mass is smaller, but you need consumption records at lot level to claim that, and if you had those you would probably not be estimating. Fan-in values should be the maximum the process permits, not the average, because a recall is decided by the worst case in the window rather than the typical one. The chain is treated as a simple sequence: a genuine bill of materials with parallel warp and weft supply, re-dyed seconds re-entering the stream, or leftover fabric returned to stock forms a graph rather than a chain, and each of those paths adds fan-in this calculation will not see. Yield is applied as a single cumulative figure and assumes waste is representative - if the affected material is preferentially removed, by a metal detector or a contamination sorter, the real exposure is lower, and if it is preferentially retained the figure here is optimistic. The quarantine result sizes containment only; it is not a recall decision, which also turns on where the product has already shipped, what the specification actually requires, and the regulatory regime of the destination market. Finally, the window cap means a broken chain and a complete one can return the same quarantine figure when dispersion already exceeds the window - that is not the records working, it is the exposure being larger than the period you asked about.
  • Every input is bounded to the range normal practice occupies (Mass of the Affected Upstream Lot 0.1 to 200000 kg, Cumulative Yield to Finished Goods 1 to 100 % and Bales per Laydown Mix 1 to 200 lots, 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 22095 - Chain of custody, General terminology and models, which defines identity preservation, segregation, mass balance and controlled blending as distinct models with different traceability guarantees.
  • GS1 General Specifications and the GS1 Global Traceability Standard, for lot and batch identification through GTIN plus batch or lot number and the one-up one-down record requirement.
  • ISO 9001 clause 8.5.2 - Identification and traceability, which requires identification of outputs and control of unique identification where traceability is a requirement.
  • ISO 9001 clause 8.7 - Control of nonconforming outputs, for the containment obligation the quarantine figure is sizing.

Questions people ask

Why does the batch size not appear anywhere in this calculation?

Because it cancels out, and this surprises almost everyone. Suppose a bad bale of 220 kg goes into a 12 bale laydown. The mix is 2,640 kg and all of it is suspect, because the contamination is now distributed through it. Double the laydown to 24 bales and the mix is 5,280 kg - the implicated mass doubled too, because the fan-in doubled. Halve it and both halve. What determines the implicated mass is the number of lots combined, not the tonnage they represent. Batch size only decides how the same implicated mass is divided into pieces: bigger batches give you fewer, larger suspect lots, which is administratively easier but no less product. The lever that actually reduces exposure is fan-in, which means segregating the laydown, dedicating dye batches to single greige lots, or refusing to mix dye lots in one cut lay - each one divides the dispersion factor directly.

What exactly is a link of trace depth, and how do I know how many I really have?

The four links are, counting back from the finished garment: cut lay to dye lot, dye lot to fabric lot, fabric lot to yarn lot, and yarn lot to bale. You have a link only if you can take a downstream identifier and retrieve the specific upstream identifiers that fed it - not the supplier, not the month, the lot. The usual test is to pick a finished carton at random and try to walk it back on the records you have today, timing yourself. Most mills discover the chain breaks at the spinning mill, because yarn is received against an invoice rather than a lot, and at the cut lay, because the lay ticket records the roll but not which dye lot each roll came from. Count only the links that survive that walk. An optimistic depth here is worse than a pessimistic one: it produces a recall plan that collapses at the moment you try to execute it.

The implicated share of the window came out over 100 percent. What does that mean?

It means the dispersion has spread the lot across more production than the window you are examining contains, so the window is not the boundary of the problem - it is just where you happened to start looking. The quarantine figure is capped at the window because you cannot pull product you have not made, but the true exposure extends earlier or later, and the affected units sitting outside it have almost certainly shipped. Treat a figure above 100 percent as an instruction to widen the window and recalculate, not as a result. It also tends to mean the fan-in is too high for the traceability model you claim to be operating: at that level of blending, controlled blending with mass balance is what you actually have, and identity preservation is what your certificates may be implying.

Every unit only contains about 2 percent of the bad lot. Is a recall really proportionate?

That depends entirely on the contaminant, and the ppm figure is here so the question gets asked with a number attached. For a defect that dilutes - a shade deviation, a slightly off micronaire, a strength shortfall - 20,833 ppm of off-spec fibre may fall well inside tolerance, and the honest answer is that nothing needs pulling. For a contaminant that does not dilute, the calculation is irrelevant: one polypropylene filament in a shirt is a defect in that shirt regardless of how much cotton surrounds it, and the same is true of a foreign fibre that will refuse dye, a metal fragment, or a regulated substance where the specification is absence rather than a limit. The distinction is between concentration-driven and occurrence-driven defects, and it should be settled in the specification long before an incident. Running this tool during a recall and discovering nobody knows which kind you are dealing with is the expensive way to find out.

Scroll to Top