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
Log Plug-and-play starting point Quality Assurance

Log: Complaint Trending, Rate Normalisation, and Threshold Review

A ready-to-use complaint trending log for drug and biologic products: dimensions trended, rate normalisation per units distributed with the calculation shown, pre-defined thresholds and how they were set, the periodic review record, threshold-crossing escalation, and the feed into annual product review and management review, with a worked specimen showing a real rate signal emerging.

Document type: Log

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 trending record for product quality complaints. It defines what is trended, how rates are normalised to distribution volume, how thresholds are set before the data arrives, what happens when one is crossed, and how the output reaches the annual product review and management review. Replace every <<FILL: ...>> placeholder, set your own document numbers and dates, and route it through your normal document control before use. A worked specimen with real arithmetic follows.

This document is educational and is written to be adapted. Confirm every cited regulation against the current published source, and set your own thresholds against your own product history rather than adopting the numbers used in the specimen. Maintaining this log does not by itself create compliance; it only structures analysis your quality system still has to perform and act on.

Individual complaints often look benign. Trending is how a stream of separate anecdotes becomes a quality signal, and it is the mechanism by which a defect that no single file could justify investigating gets found. Use it with the complaint handling SOP and the complaint investigation report form.

Document control header

FieldEntry
Document titleComplaint Trending, Rate Normalisation, and Threshold Review Log
Document number<<FILL: DOC-ID, e.g. QA-LOG-031-03>>
Version<<FILL: version, e.g. 1.0>>
Effective date<<FILL: effective date>>
Document owner<<FILL: role, e.g. Complaints Manager>>
Governing SOP<<FILL: SOP-ID for complaint handling>>
Review cadence<<FILL: e.g. monthly, with a quarterly threshold review and an annual baseline reset>>
Products covered<<FILL: product families and presentations>>
Data source<<FILL: complaint system name and validated report reference>>
Distribution data source<<FILL: ERP or distribution system and report reference>>

1. Dimensions trended

Total complaint count is close to useless on its own. It rises with sales, falls with supply interruption, and tells you nothing about where a defect lives. Trend across the dimensions below, and record the analysis for each on every review, including the dimensions that produced nothing.

DimensionWhat it detectsUnit of analysisNormalisation
Defect typeA specific failure mode emerging or worsening across the productComplaints of one defect categoryRate per units distributed of that product
Lot or batchA manufacturing excursion confined to one lot or campaignComplaints on one lotRate per units distributed of that lot
Product and presentationA problem that follows a presentation rather than the molecule, for example a vial versus a prefilled syringe, or one fill volumeComplaints on one product and presentation combinationRate per units distributed of that presentation
TimeDrift, seasonality, and the effect of a changeComplaints per periodRate per units distributed in that period
SeverityA shift in the seriousness of what is being reported, even when total count is flatComplaints by severity tierRate, and share of total
Market or regionA distribution, storage, transport, or local-handling problemComplaints by marketRate per units distributed into that market
Confirmed versus unconfirmedA rising body of unconfirmed complaints on one defect type, which is itself a signalComplaints by conclusionCount and share
Reporter typeA defect visible to one kind of user, for example only to pharmacists preparing a doseComplaints by reporter categoryCount and share
Site, line, or equipment trainA cause shared across lots that a per-lot view cannot seeComplaints mapped back to the manufacturing routeRate per units distributed from that route
Component or supplier lotA defect that follows an incoming material rather than a finished lotComplaints mapped to component lotRate per units containing that component lot

Cross the dimensions, do not just list them. A defect type that is flat at product level and concentrated in one lot is a manufacturing excursion. The same defect type flat at product level and spread evenly across every lot is a design, formulation, or specification problem. Those two conclusions need different actions, and only the crossed view distinguishes them. The specimen in section 6 turns on exactly this point.

2. Rate normalisation

2.1 Why raw counts fail

Raw counts move with volume. A product whose distribution doubles will roughly double its complaint count with no change whatever in quality, and a company reading raw counts will investigate a phantom. Worse in the other direction: a product whose distribution triples while its complaint count only doubles has a falling rate that a count-based review will read as a worsening trend, and a real rate increase during a supply shortage can be entirely masked. Normalisation is not a refinement; without it the trend is not interpretable.

2.2 The calculation

Complaint rate = (number of complaints of the defined type in the period / units distributed of the defined denominator in the period) x multiplier

In plain arithmetic: divide the complaint count by the units distributed, then multiply by 10,000 or 100,000 to get a number that is readable rather than a long string of zeros.

ElementDefinition to fix in your procedure
Numerator: what counts as one complaint<<FILL: e.g. one complaint number, regardless of how many units the complainant reported. State the rule and hold to it, because it defines the whole series.>>
Numerator: which complaints are included<<FILL: e.g. all complaints of the defect type, including unconfirmed ones. State explicitly whether unconfirmed complaints are in or out, and keep it constant.>>
Denominator: units distributed<<FILL: e.g. saleable units shipped from the distribution centre, per the ERP distribution report. Not units manufactured, not units released, not units sold.>>
Denominator: unit of measure<<FILL: e.g. vials, syringes, cartons, patient doses. Pick one per presentation and state it, because a rate in cartons and a rate in vials are different numbers.>>
Multiplier<<FILL: e.g. 100,000. Use one multiplier across the product family so rates are comparable.>>
Period alignment<<FILL: e.g. complaints by date of awareness, distribution by ship date, both on calendar months>>

2.3 The rules that stop the arithmetic from lying

  1. Match the numerator to the denominator. Complaints on one lot are divided by units distributed of that lot, not by total product distribution. Getting this wrong makes every lot-level rate look tiny and hides exactly the signal you are looking for.
  2. Set a minimum denominator. Below <<FILL: e.g. 5,000 units>> a single complaint produces a rate so large it swamps every comparison. Where the denominator is below the minimum, do not calculate a rate; apply the count-based rule in section 3 instead and record that you did.
  3. Account for the lag. A lot distributed last month has had one month of exposure; a lot distributed nine months ago has had nine. Comparing their cumulative rates directly is comparing different exposure windows. Either compare lots at a matched age (<<FILL: e.g. cumulative rate at 90 days after first distribution>>), or record the exposure period alongside the rate so the comparison is visible. Late-appearing defects such as stability-related failures are invisible in a young lot.
  4. Fix the denominator source and do not change it silently. If the distribution report changes definition, the entire historical series changes with it. Record any change to the denominator definition in the revision history and restate the baseline.
  5. Do not annualise a partial period. A quarter with one complaint does not support a projection.
  6. Record zero. A defect type with no complaints this period is recorded as zero, not omitted. An omitted row is indistinguishable from an analysis that was never run.

2.4 Worked calculation, shown longhand

Product <<FILL>>, defect type <<FILL>>, lot <<FILL>>:

StepValue
Complaints of this defect type on this lot<<FILL: A>>
Units of this lot distributed<<FILL: B>>
A divided by B<<FILL>>
Multiplied by 100,000<<FILL>> per 100,000 units distributed
Baseline rate in force for this defect type<<FILL>> per 100,000
Ratio to baseline<<FILL>> times baseline
Threshold in force<<FILL>>
Crossed?Yes / No

3. Threshold definitions and how they were set

3.1 The principle

Thresholds are set before the data arrives and are written down. “We will review the trends and use judgement” is not a threshold, and a review that decides after the fact whether a number was concerning will always find a reason not to escalate. Pre-defining the trigger removes that discretion at the moment it is least reliable.

A threshold is a detection device, not a verdict. Crossing one obliges you to investigate, not to conclude that a defect exists. Set them at a level where you accept some investigations will find nothing, because a threshold tuned so that every crossing is a real defect is tuned far too high to catch anything early.

3.2 The thresholds

IDThresholdDefinitionBasis for the level chosen
T1Product-level rateRate for a defect type across the product, rolling <<FILL: e.g. 12 months>>, at or above <<FILL: e.g. 3>> times the baseline rate for that defect type<<FILL: state the reasoning, e.g. derived from the observed period-to-period variation in the baseline window, set above the historical maximum so ordinary variation does not fire>>
T2Lot-level rateRate for a defect type on a single lot at or above <<FILL: e.g. 10>> times the baseline rate for that defect type, subject to the minimum denominator in section 2.3<<FILL: a lot-level rate is calculated on a much smaller denominator and is inherently noisier, so the multiple is set higher than T1 to control false alarms while still firing well before a product-level signal would>>
T3Lot-level count<<FILL: e.g. 3>> or more complaints of one defect type on a single lot within <<FILL: e.g. 90 days>>, regardless of rate<<FILL: a count rule catches lots below the minimum denominator and lots too young for a rate to be meaningful>>
T4Severity safety net<<FILL: e.g. 2>> or more complaints of a defect type carrying Critical severity on a single lot or on the product within <<FILL: e.g. 90 days>>, regardless of rate<<FILL: for defect types where the consequence is severe, waiting for a rate signal is not acceptable>>
T5New defect typeAny defect type not previously recorded for this product, on first occurrence<<FILL: a novel failure mode has no baseline to be compared against, so first occurrence is the trigger>>
T6Unconfirmed run<<FILL: e.g. 4>> or more complaints of one defect type closed as unconfirmed within <<FILL: e.g. 12 months>>, regardless of rate<<FILL: a pattern of honestly unconfirmed complaints on one defect type is a signal about detection capability, not an absence of a defect>>
T7Sustained directionRate increasing across <<FILL: e.g. 3>> consecutive review periods, even where no absolute threshold is crossed<<FILL: catches slow drift that never trips an absolute limit>>
T8<<FILL: your own>><<FILL>><<FILL>>

3.3 How the baselines were set

FieldEntry
Baseline period<<FILL: e.g. 1 January to 31 December of the prior calendar year>>
Why that period<<FILL: e.g. a full year of stable process, no major change, sufficient distribution volume>>
Periods excluded from the baseline and why<<FILL: e.g. lots under a confirmed CAPA are excluded so a known defect does not inflate the baseline it will be measured against>>
Units distributed in the baseline period<<FILL>>
Complaints in the baseline period, by defect type<<FILL>>
Baseline rate per defect type<<FILL>> per 100,000
Statistical method, where one is used<<FILL: e.g. control limits from an attribute chart, with the chart type and the reason it fits the data; see the note below>>
Baseline reset cadence<<FILL: e.g. annually, and after any confirmed process change affecting the defect type>>
Approved by, date<<FILL>>

On statistical limits. Where volumes support it, an attribute control chart gives defensible limits and detects a shift earlier than a fixed multiple. Where volumes are low, complaint counts are sparse, or the process has changed within the window, a stated multiple of a stated baseline is more honest than a control limit calculated on data that does not meet the chart’s assumptions. Pick one, state which, and state why. A control chart applied to eight data points is decoration. See statistics in quality, Cpk and control charts.

Do not move a threshold because it fired. If the review concludes a threshold is set too low, that is a legitimate finding, but it is changed through document control with a recorded rationale and it takes effect prospectively. Raising a threshold inside the review that it just triggered, so that the crossing disappears, is the single most damaging thing that can happen to a trending system, and it is visible in the revision history.

4. Periodic review record

Complete one record per review period. Every field is part of the record.

FieldEntry
Review reference<<FILL: e.g. TREND-YYYY-MM-NN>>
Review period<<FILL: from>> to <<FILL: to>>
Review date<<FILL>>
Products in scope<<FILL>>
Performed by (name, role)<<FILL>>
Data extracted from, report reference, extraction date<<FILL>>
Distribution data source, report reference<<FILL>>
Data completeness check<<FILL: complaints still open at period end, complaints received after period end relating to the period, and how each was handled>>
Thresholds in force at review (version)<<FILL>>

4.1 Summary by defect type

Defect typeComplaints this periodUnits distributedRate per 100,000BaselineRatio to baselineThreshold crossedAction
<<FILL>><<FILL>><<FILL>><<FILL>><<FILL>><<FILL>>Yes / No<<FILL>>

4.2 Summary by lot

LotUnits distributedExposure periodComplaintsRate per 100,000Ratio to baselineThreshold crossedAction
<<FILL>><<FILL>><<FILL>><<FILL>><<FILL>><<FILL>>Yes / No<<FILL>>

4.3 Summary by presentation, market, severity, and conclusion

ViewResultThreshold crossedAction
By presentation<<FILL>>Yes / No<<FILL>>
By market<<FILL>>Yes / No<<FILL>>
By severity<<FILL>>Yes / No<<FILL>>
Confirmed versus unconfirmed<<FILL>>Yes / No<<FILL>>
By site, line, or equipment train<<FILL>>Yes / No<<FILL>>
By component or supplier lot<<FILL>>Yes / No<<FILL>>

4.4 Review conclusions

FieldEntry
Thresholds crossed this period<<FILL: list, or "none">>
Signals observed below threshold and being watched<<FILL: with the reason for not escalating and the period they will be watched over>>
Actions carried forward from the prior review<<FILL: with status>>
Open backlog: complaints open at period end, and the oldest<<FILL>>
Classification consistency check performed<<FILL: see section 5.4>>
Changes proposed to thresholds or baselines<<FILL: prospective only, through document control>>
Reviewed by (name, role, date)<<FILL>>
QA approval (name, role, date)<<FILL>>

5. Threshold-crossing escalation

5.1 What a crossing obliges

A crossing is not a conclusion. It obliges you to do the following, and to record each:

  1. Verify the data before acting. Confirm the numerator (are these genuinely the same defect type, or has a classification drift merged two different things), confirm the denominator (is the distribution figure for the right lot, the right unit, the right period), and confirm no duplicate complaint numbers are inflating the count. A crossing driven by a data error is a data-integrity finding, not a quality signal, and it is found in minutes.
  2. Open a trend investigation within <<FILL: e.g. 5 business days>>, or link the crossing to an investigation already open on the same facts rather than duplicating it.
  3. Link every contributing complaint to that investigation, including the ones closed as unconfirmed. The population is the evidence.
  4. Reassess the reportability of the contributing complaints in light of the aggregate. A pattern can make reportable what a single complaint did not. Use the reportability decision matrix.
  5. Assess product impact and field action across the affected population, not just the lot that crossed.
  6. Decide CAPA, and where a CAPA is opened, link the whole contributing population to it so effectiveness can be measured against that population. See what is a CAPA and CAPA effectiveness verification.
  7. Define the effectiveness measure in the same terms as the threshold: the same defect type, the same normalised rate, against the same baseline, over a stated number of periods. An effectiveness check written in different units from the trigger cannot demonstrate the trigger was resolved.

5.2 Where the review decides not to escalate

Permitted, and it has to be reasoned in the record. State the specific facts: a data error identified and corrected, a denominator below the minimum with the count rule applied instead, a known and already-investigated cause with the existing investigation referenced. “Reviewed, no action” is not a reason. Record who decided and the date, because an unattributed decision not to escalate is the finding an inspector writes.

5.3 Escalation record

FieldEntry
Crossing reference<<FILL>>
Threshold crossed (ID and value)<<FILL>>
Dimension and unit that crossed<<FILL>>
Data verification performed, result<<FILL>>
Contributing complaint numbers<<FILL: all of them>>
Investigation opened or linked, reference<<FILL>>
Reportability reassessed, outcome<<FILL>>
Product impact and field action assessment<<FILL>>
CAPA decision and reference<<FILL>>
Effectiveness measure and period<<FILL>>
Escalated to (role) on (date)<<FILL>>
Decision not to escalate, with reasoning and decision maker<<FILL: or N/A>>

5.4 Classification consistency check

Trending is only as good as the classification underneath it. If two coordinators code the same defect differently, the trend is diluted across two categories and may never cross a threshold. Perform this check every <<FILL: e.g. quarter>>:

CheckMethodResult
Sample of complaints re-coded independently<<FILL: e.g. 20 complaints re-coded by a second coordinator blind to the original code>><<FILL: agreement rate>>
Categories that were confused with each other<<FILL>><<FILL>>
Use of the “other” category<<FILL: share of complaints coded "other" over the period>><<FILL: a rising "other" share means the category list no longer fits the defects being reported>>
Severity assigned to the same defect type across handlers<<FILL>><<FILL>>
Action arising<<FILL: category list revision, training, anchored examples added to the SOP>><<FILL>>

6. Feed into annual product review and management review

OutputDestinationContentTimingOwner
Annual complaint summary by product, defect type, and rate, with trends and threshold crossingsAnnual product review / product quality reviewComplaint counts and normalised rates for the year, comparison to prior years, all threshold crossings and their outcomes, all complaint-driven CAPAs and their effectiveness status, recalls and field actions arising from complaints, and any unconfirmed-run signals<<FILL: e.g. within 30 days of the APR data cut-off>>Complaint coordinator
Complaint metrics and signalsManagement reviewRate trends against baseline, threshold crossings and whether each was resolved, backlog and timeliness performance against procedure, reportability timeliness, classification consistency results, and any resource constraint preventing the above<<FILL: e.g. quarterly>>Head of Quality
Signals affecting product quality attributesContinued process verification and process monitoringDefect types that map to a process parameter or a critical quality attribute<<FILL>>Manufacturing quality
Signals affecting a supplier or contract partnerSupplier quality and the quality agreement reviewDefect types mapping to an incoming component or a contract-manufactured step<<FILL>>Supplier quality

The flow that has to be demonstrable end to end is: complaint recorded, aggregated, normalised, threshold crossed, investigation opened, CAPA raised, effectiveness verified against the same rate, and the whole sequence visible in the annual product review and management review inputs. An inspector will pick a threshold crossing from your log and ask you to walk that chain. Where the chain breaks is almost always between “threshold crossed” and “investigation opened”, because nobody was accountable for the step. Name the owner and the timeline in section 5.1 and the break does not happen.

See annual product review and PQR, management review under Q10, and quality metrics and KPIs.

7. Data integrity expectations

ExpectationWhat it means here
AttributableThe person who ran the extract, performed the analysis, and approved the review is named on the record.
Legible and enduringThe review record is retained with its underlying extract, not just the conclusion.
ContemporaneousThe review is performed and recorded on the defined cadence, not reconstructed before an inspection.
OriginalThe report used is a validated report from the complaint system, referenced by name and version, not an untracked manual query.
AccurateThe numerator and denominator definitions are fixed, and any change to them is recorded and the historical series restated.
CompleteZero rows are recorded. Excluded data is recorded as excluded, with the reason.
ConsistentThe same defect categories, the same multiplier, and the same denominator definition are used across periods so the series is comparable.
AvailablePrior review records are retrievable so the trend across periods can be reconstructed.

Where the analysis is performed in a spreadsheet rather than in the validated system, the spreadsheet is itself a GxP tool and needs the appropriate level of control and verification. See data integrity foundations.


Filled specimen

The following is a completed monthly review in which a genuine rate signal emerges on one lot. Company, product, lots, and numbers are illustrative. The arithmetic is shown in full.

Review header

FieldEntry
Review referenceTREND-2026-06-01
Review period1 June 2026 to 30 June 2026, with rolling 12 month and cumulative-by-lot views
Review date8 July 2026
Products in scopeFictional Bio lyophilised biologic, 100 mg/vial single-use vial
Performed byM. Duarte, Complaint Coordinator
Data sourceComplaint system CQMS, validated report RPT-CMP-014 v3.0, extracted 7 July 2026
Distribution data sourceERP-02 distribution report DIST-2026-0630
Data completeness check4 complaints open at period end, all included by date of awareness. 1 complaint received 6 July 2026 (CMP-2026-0731) relates to a lot in this review; it falls outside the period and is flagged in section 4.4 rather than counted in the period rate.
Thresholds in forceThreshold set QA-LOG-031-03 v2.0, effective 1 January 2026

Baselines in force

FieldEntry
Baseline period1 January 2025 to 31 December 2025
Units distributed in baseline period111,000 vials
Appearance-defect complaints in baseline period2
Baseline rate, appearance defects2 / 111,000 x 100,000 = 1.80 per 100,000
Baseline reset cadenceAnnually, each January, and after any confirmed process change affecting the defect type
Approved byK. Ofori, QA Manager, 6 January 2026

Summary by defect type, rolling 12 months to 30 June 2026

Units distributed in the rolling window: 108,600 vials.

Defect typeComplaintsRate per 100,000BaselineRatioT1 trigger (3x baseline)Crossed
Appearance on reconstitution43.681.802.05x5.40No
Packaging or carton damage76.456.101.06x18.30No
Label legibility10.921.350.68x4.05No
Suspected lack of effect00.000.900.00x2.70No
Cold chain concern raised by customer32.763.150.88x9.45No
Other21.842.250.82x6.75No

Appearance rate calculation, longhand: 4 complaints divided by 108,600 vials distributed = 0.0000368. Multiplied by 100,000 = 3.68 per 100,000. Against a baseline of 1.80, that is 2.05 times baseline, below the T1 trigger of 3 times baseline.

On the product-level view alone, nothing escalates. That is the point of the next table.

Summary by lot, appearance defects, cumulative to 30 June 2026

LotFirst distributedUnits distributedExposure at reviewAppearance complaintsRate per 100,000Ratio to baselineT2 trigger (10x = 18.0)T3 trigger (3 in 90 days)Crossed
LB-4409Nov 20259,3408 months00.000.00xNoNoNo
LB-4411Dec 20259,6107 months00.000.00xNoNoNo
LB-4413Jan 20268,9806 months00.000.00xNoNoNo
LB-4415Feb 20269,4305 months110.605.89xNoNoNo
LB-4417Apr 20269,1803 months221.7912.10xYesNoYes
LB-4419May 20269,2602 months00.000.00xNoNoNo

Lot LB-4417 calculation, longhand:

StepValue
Appearance complaints on lot LB-44172 (CMP-2026-0688 received 14 May 2026; CMP-2026-0702 received 3 June 2026)
Units of lot LB-4417 distributed9,180
2 divided by 9,1800.0002179
Multiplied by 100,00021.79 per 100,000
Baseline appearance rate1.80 per 100,000
Ratio to baseline21.79 / 1.80 = 12.10 times baseline
T2 threshold: 10 times baseline18.00 per 100,000
Minimum denominator rule: 5,000 units9,180 units, satisfied, so the rate rule applies
T2 crossed?Yes
T3 (3 or more in 90 days)2 complaints, not crossed

Both complaints on LB-4417 were closed as unconfirmed, because in each case the complainant had discarded the vial and no sample was returned. They are included in the numerator, per the numerator definition in section 2.2, and their unconfirmed status did not remove them from the trend. Had unconfirmed complaints been excluded from the count, the lot rate would have been 0.00 and this crossing would not have occurred.

Other views

ViewResultCrossedAction
By presentationSingle presentation, no comparison availableNoNone
By marketUS 4 appearance complaints on 108,600 vials, 3.68 per 100,000. Product distributed in the US only this period.NoNone
By severityAppearance complaints on a sterile parenteral are triaged Critical. 2 Critical on lot LB-4417 within 90 days. T4 safety net (2 or more Critical on one lot in 90 days) crossed independently of T2.YesReinforces the T2 escalation
Confirmed versus unconfirmed4 of 4 appearance complaints in the rolling window closed unconfirmed. T6 trigger is 4 or more unconfirmed of one defect type in 12 months. Crossed.YesReinforces the T2 escalation and raises a separate question about detection capability, carried to the action below
By site, line, equipment trainAll lots filled on line F-01 and lyophilised on LY-02. No discrimination available from this view alone.NoFlagged to the investigation as context
By component or supplier lotDrug substance lot DS-2211 is common to LB-4415, LB-4417, and LB-4419. Two of those three show no appearance complaints.NoComponent is a weak hypothesis; flagged to the investigation

Review conclusions

FieldEntry
Thresholds crossedT2 (lot-level rate, LB-4417 at 12.10x baseline against a 10x trigger), T4 (2 Critical-severity complaints on one lot within 90 days), T6 (4 unconfirmed appearance complaints in 12 months)
Signals below threshold being watchedLot LB-4415 at 5.89x baseline on a single complaint. Not escalated: a single complaint on a 9,430 unit denominator produces an unstable rate, and no second complaint has followed in 5 months. Watched for a further 2 review periods. Decision by M. Duarte, 8 July 2026, concurred by K. Ofori.
Actions carried forwardNone open from the May review.
Open backlog4 complaints open at period end. Oldest 22 days, within the 30 day target.
Classification consistency checkPerformed 30 June 2026 quarterly check: 20 complaints re-coded blind, 18 of 20 agreement. Two disagreements both involved “appearance on reconstitution” versus “other”. “Other” category share 8 percent, within the 10 percent action limit. Anchored examples for appearance codes added to the SOP annex, effective 1 August 2026.
Changes proposed to thresholdsOne, prospective, see the action below. No threshold changed in response to this crossing.

Escalation record

FieldEntry
Crossing referenceESC-2026-0031
Threshold crossedT2 lot-level rate, 21.79 per 100,000 against an 18.00 trigger; also T4 and T6
Dimension and unitLot LB-4417, appearance on reconstitution
Data verification performedNumerator verified: both complaints independently confirmed as the same defect category by a second coordinator, no duplicates. Denominator verified against DIST-2026-0630: 9,180 vials of LB-4417 distributed, unit of measure vials, ship-date basis. No data error identified.
Contributing complaintsCMP-2026-0688 (14 May 2026, unconfirmed, no sample), CMP-2026-0702 (3 June 2026, unconfirmed, no sample)
Investigation opened or linkedLinked, not duplicated. Investigation INV-2026-0311 was opened on 6 July 2026 on complaint CMP-2026-0731, a third appearance complaint on lot LB-4417 received with a returnable sample. This crossing is linked into INV-2026-0311 and both prior complaints were reopened and linked on 8 July 2026.
Reportability reassessedYes. Individually, neither prior complaint had been assessed as reportable, both being unconfirmed with no sample. In aggregate, with the third complaint and a returnable sample, the Biological Product Deviation Report branch under 21 CFR 600.14 was reassessed as applicable by Regulatory Affairs. Day zero recorded as 6 July 2026, the date of awareness of the information reasonably suggesting a reportable event.
Product impact and field actionReferred to the recall committee with the investigation, 6 July 2026. Bracketing lots LB-4415 and LB-4419 assessed.
CAPA decision and referenceCAPA-2026-0203, opened 13 July 2026, with all three complaints linked
Effectiveness measureAppearance-defect rate for this product monitored monthly for 12 months against the 1.80 per 100,000 baseline, using the same numerator and denominator definitions as this log. Target: no lot exceeding 5x baseline and the product-level rolling rate returning to within 1.5x baseline by June 2027.
Escalated toK. Ofori, QA Manager, and S. Beniwal, Regulatory Affairs Manager, 8 July 2026
#ObservationActionOwnerDue
1The first complaint on LB-4417 arrived 14 May and the second on 3 June, but the threshold crossing was only visible at the monthly review on 8 July. The monthly cadence introduced a five-week detection lag on a Critical-severity defect type.Add an event-driven check: any second complaint of a Critical-severity defect type on a single lot triggers an out-of-cycle threshold evaluation within 2 business days, rather than waiting for the monthly review. Prospective change to the threshold set through document control.M. Duarte31 Aug 2026
2Both prior complaints were closed unconfirmed with no reserve sample examined and no lot cluster check performed. Either step would have surfaced this defect in May.Revise the complaint investigation procedure so that a no-sample complaint cannot be closed as unconfirmed without a documented reserve sample examination and lot cluster check. Folded into CAPA-2026-0203.T. Nwosu30 Sep 2026
3T6 (unconfirmed run) crossed at the same review as T2, so it added no early warning in this case. Reviewed whether the trigger count of 4 in 12 months is too high for a Critical-severity defect type.Propose a severity-weighted T6: 2 unconfirmed of a Critical-severity defect type in 12 months. Prospective, through document control, with the reasoning recorded.M. Duarte30 Sep 2026

Approval

RoleNameDate
Performed byM. Duarte, Complaint Coordinator8 July 2026
Reviewed byS. Beniwal, Regulatory Affairs Manager (reportability sections)9 July 2026
QA approvalK. Ofori, QA Manager9 July 2026

What this specimen is meant to teach. The product-level view showed 2.05 times baseline and would not have escalated anything. The lot-level view on the same data showed 12.10 times baseline and crossed. Two of the three complaints were honestly unconfirmed and would have vanished from the numerator under a rule that counted confirmed complaints only. And the crossing was visible five weeks after the second complaint arrived, purely because the review ran monthly. Each of those three points is a design decision made before the data existed, and each of them determined whether the signal was found. The threshold did its job; the cadence did not, and the review said so in its own record rather than waiting for an auditor to say it.

Common inspection findings this log prevents

  • Complaint trending is described in the SOP but no trending records exist for the period under inspection.
  • Trending is by raw count, so a real rate increase is masked by growth in distribution volume.
  • Lot-level complaints are divided by total product distribution rather than by that lot’s distribution, making every lot signal disappear.
  • Thresholds are not defined in advance, so escalation is a matter of judgement exercised after seeing the number.
  • A threshold was crossed and nothing happened, because no owner and no timeline were attached to the step between crossing and investigation.
  • A threshold was raised or a definition changed in the same review that the crossing occurred, so the crossing disappeared from the record.
  • Unconfirmed complaints are excluded from the trend, so a defect that cannot be confirmed at unit level is invisible at population level.
  • Zero rows are omitted rather than recorded, so it cannot be shown that a defect type was analysed at all.
  • The numerator or denominator definition changed between periods with no restatement, so the series is not comparable and the trend is not interpretable.
  • Classification is inconsistent between handlers, so one defect is spread across two categories and never crosses a threshold.
  • The “other” defect category has grown to a large share of complaints, meaning the category list no longer matches what is being reported.
  • Complaint trends are not visibly carried into the annual product review or management review, so the quality system cannot show it acted on its own data.
  • A CAPA raised from a trend has an effectiveness check written in different units from the threshold that triggered it, so it cannot demonstrate resolution.
  • The trending analysis is performed in an uncontrolled spreadsheet with no verification of the calculation and no record of the extract used.

How to adapt this log

  1. Set your document number, owner, cadence, and data sources in the header, and name the validated report you extract from.
  2. Fix the numerator and denominator definitions in section 2.2 first, before anything else. Every number in this log depends on them, and changing them later invalidates the historical series.
  3. Calculate your own baselines from your own history using section 3.3. Do not carry over the 1.80 per 100,000 in the specimen; it is arithmetic on invented data.
  4. Set the threshold multiples in section 3.2 against your own observed variation. If your baseline window shows appearance-defect rates varying between 1.2 and 2.4 per 100,000 across periods, a trigger at 1.5 times baseline will fire constantly and be ignored within two quarters. Set them where you will actually act.
  5. Set the minimum denominator in section 2.3 from your typical lot size. For small-volume products, including many cell and gene therapy products, the count-based rules T3 and T4 may be the only workable triggers, and a rate rule may never be meaningful. Say so in the document rather than carrying a rate rule that never applies.
  6. Match the review cadence to the severity of what you make. Monthly is a common default; for a product where a defect carries serious consequences, add the event-driven trigger from action 1 in the specimen rather than relying on the calendar.
  7. Align the defect categories here with the categories on the complaint intake form and the cluster queries in the investigation report form, so the three documents cannot disagree about what a defect type is.
  8. Name the person accountable for the step between “threshold crossed” and “investigation opened”, with a timeline. That step is where trending systems fail.
  9. If the analysis runs in a spreadsheet, bring it under the appropriate control: fixed formulas, verified calculation, version control, and a retained copy of each period’s extract.
  10. Confirm every regulation and guidance referenced against the current published version before issue.
Use madhadi.com as an app Full screen, works offline, one tap from your home screen.