Independent and not affiliated with the FDA, MHRA, ISPE, PDA, or any agency. Get the appgoutham@madhadi.com
madhadi.comData Integrity & GxP Quality
Browse all topics → Articles Templates & Procedures Learning paths GlossaryScenariosToolsRegulatory ReferencesLearning PathsTopics About Start here
Template Plug-and-play starting point Quality Assurance

Worksheet: Stability OOT Limit Setting

A plug-and-play worksheet for setting out-of-trend limits on stability data: choosing the method, computing by-time-point, tolerance-interval, prediction-interval, and slope-control limits, with worked calculations, a decision guide, and the regulations it satisfies.

Document type: Template

Read and copy the template below into your own quality system. It is a generic starting point for your own internal use, provided as is, with no warranty; see the Terms and License. Adopting it does not by itself create compliance.

This is a ready-to-use worksheet for setting OOT limits on stability data prospectively. Replace every <<FILL: ...>> placeholder, record the method and inputs you chose, and attach the completed worksheet to the stability protocol or trending plan so the limit is documented before any result is judged against it. Worked calculations follow so you can see the arithmetic. The methods here are standard practice; confirm the statistical approach with a qualified statistician for your data, and verify each cited regulation against the current source.

Worksheet header

FieldEntry
Worksheet number<<FILL: WS-ID>>
Product / attribute<<FILL: product, attribute, units>>
Storage condition<<FILL: e.g. 25C/60%RH>>
Data set used<<FILL: batch IDs, n batches, date range>>
Method selectedBy-time-point / Tolerance interval / Prediction interval / Slope-control
Prepared by / date<<FILL>>
Reviewed by (statistician / QA) / date<<FILL>>

1. Choose the method

MethodFlagsUse whenDo not use when
By-time-point (mean +/- k SD)A point far from the historical value at that time pointQuick screening; limited dataYou need to respect curve shape or catch a bad slope
Tolerance interval (e.g. 95/99)A point outside a stated population coverage at that time pointYou want stated coverage and confidence, not a bare 3 SDVery small n makes the interval uselessly wide
Prediction interval (regression)A single future observation outside the model band at its time pointThe default for stability; respects the degradation curveModel form is wrong or residuals misbehave
Slope-controlA whole batch degrading faster/slower than the populationCatching a trajectory to failure before expiryToo few time points per batch to estimate a slope

Run at least a prediction interval plus a slope-control limit together on a mature program. Record the choice and rationale: <<FILL>>

2. Inputs

InputValue
Number of batches (n)<<FILL>>
Time points evaluated<<FILL>>
Model formLinear / Log / Other justified transform: <<FILL>>
Residual standard deviation (s)<<FILL>>
Fitted intercept<<FILL>>
Fitted slope<<FILL>>
Slope SD across batches (for slope-control)<<FILL>>
k or confidence/coverage chosen<<FILL: e.g. 3 SD, or 95/99, or t-based PI>>

State whether the limits are established or provisional. With fewer than <<FILL: minimum, e.g. 6>> batches, mark them provisional and wide, and re-baseline as data accumulates.

3. Compute the limit

3a. By-time-point

Limit = mean +/- k x SD at the time point. Record: mean <<FILL>>, SD <<FILL>>, k <<FILL>>, limits <<FILL>>.

3b. Prediction interval (regression)

Predicted value at time t = intercept + slope x t. The prediction interval half-width is approximately t(df, confidence) x s x sqrt(1 + 1/N + (t - t_mean)^2 / Sxx), where N is the total number of points in the regression and Sxx is the sum of squared deviations of the time values. Use a validated tool or statistician for exact values; the key point is that a prediction interval (single future observation) is wider than a confidence interval (the mean). Record predicted value <<FILL>>, half-width <<FILL>>, interval <<FILL>>.

3c. Slope-control

Slope limit = mean slope +/- k x (SD of slope across batches). Record mean slope <<FILL>>, slope SD <<FILL>>, k <<FILL>>, slope limits <<FILL>>.

4. Record and control

  • Attach this worksheet to the stability protocol / trending plan.
  • Enter the limit into the validated trending tool; if a spreadsheet, it is a GMP record and needs version control and validation.
  • Re-baseline on the defined cycle; document each change with rationale and audit trail.

Acceptance criteria

  • The method and limit are recorded before the result they judge is generated.
  • The interval used for a single new result is a prediction interval, not a confidence interval.
  • Provisional status is stated whenever n is below the defined minimum.
  • The computing tool is version-controlled and validated.

References

ICH Q1E, Evaluation of Stability Data (2003), and ICH Q1A(R2) (2003) for study design. 21 CFR 211.180(e) (trend evaluation), 211.165(d) (scientifically sound methods). The PhRMA CMC Statistics and Stability Expert Teams OOT papers (early 2000s) for the three stability methods.

Confirm each reference against the current source before issue.


Worked example

Tablet assay (% label claim) at 25C/60%RH, 8 representative batches, linear model.

Inputs: intercept 100.4, slope -0.18 %/month, residual SD (s) 0.45%, slope SD across batches 0.03 %/month.

Prediction interval at 12 months. Predicted = 100.4 - (0.18 x 12) = 98.2%. Using an approximate prediction standard error and a t-multiplier of about 2.2, the half-width is about 1.0%, so the interval is about 97.2 to 99.2%.

Batch12-month assayPredictedPI (97.2-99.2)OOT?
A98.498.2inNo
C97.098.2belowYes (investigate hard, faster-than-modeled)
D99.598.2aboveYes (usually analytical/standard, still investigated)

Spec is 95.0-105.0%, so C and D pass spec yet are OOT. A high result (D) is still investigated, because it is often an analytical or standard artifact that masks a low result next time.

Slope-control. Mean slope -0.18, SD 0.03, k = 3 gives a slope limit of -0.27 to -0.09 %/month.

BatchFitted slopeWithin -0.27 to -0.0924-month projection vs 95.0OOT by slope?
E-0.17Yes~96.3%No
G-0.32No (too fast)~92.7% (projected OOS)Yes

Batch G passes every individual point today but its slope predicts a spec breach before expiry. Slope-control catches it while there is still time to act. This is why a program that relies only on by-time-point limits is incomplete.

How to adapt this worksheet

  1. Replace the inputs with your own regression output from a validated tool.
  2. Keep the prediction-vs-confidence distinction explicit; using a confidence interval here is a common error that floods you with false flags.
  3. For biologic and advanced-therapy attributes with few lots and noisy assays, mark limits provisional, separate analytical from process variability using assay-control trending, and weight slope and cross-condition coherence over single points.
  4. Confirm the statistical approach with a qualified statistician for your specific data.
Use madhadi.com as an app Full screen, works offline, one tap from your home screen.