Lot-to-lot verification worksheet for chemistry

I’m updating our lot-to-lot verification process to tighten documentation and reduce bias estimates; we typically run n=20 per level over two days. If you have a worksheet that captures mean/SD, bias %, Westgard rule flags, and corrective action notes with date/time and operator for a Cobas c501 or similar analyzer, can you share how you structure it?

‌⁠‍⁠​‍​‍‌⁠‌​​‍​‍​⁠‍‍​‍​‍‌‍⁠​‌‍​‌‌‍​‍‌⁠‌​‌‍‌‌‌‍​⁠‌‍‍​‌‍⁠‍‌‍‍‌‌‍​⁠‌‍‍‌‌‍​‌‌‍⁠‍​‍​‍​‍⁠​​‍​‍‌‍‍⁠​‍​‍​⁠‍‍​‍​‍‌‍⁠‍‌‍‌‌‌⁠‌⁠‌‌⁠⁠‌⁠‌​‌‍⁠⁠‌⁠​​‌‍‍‌‌‍​⁠​‍​‍​‍⁠​​‍​‍‌‍‍‌‌‍‌​​‍​‍​⁠‍‍​‍​‍‌‍⁠‍‌‍‌‌‌⁠‌⁠​‍​‍​‍⁠​​‍​‍‌‍‌​​‍​‍​⁠‍‍​‍​‍​⁠​‍​⁠​​​⁠​‍​⁠‌‌​⁠​‌​⁠​‍​⁠​‍​⁠‌​​‍​‍​‍⁠​​‍​‍‌‍‍​​‍​‍​⁠‍‍​‍​‍‌​⁠‍‌​‍​‌‍‍‌‌​​‍‌‍‌⁠‌⁠‌⁠‌​​‌​⁠‌‌​⁠‌‍‌​‌‍‌‍​⁠‌‌​‌‌‌​‍‌‍‍⁠‌‍⁠‌‌⁠‍‌​‍​‍‌⁠⁠‌​

On our c501, we cut bias noise by entering old/new lot results as alternating back-to-back pairs and calculating a per-pair delta, then rolling up mean delta and SD by level. With “n=20 per level” over two days, the sheet adds run order, lot ID, a “pair ID”, operator dropdown, and an auto timestamp; Westgard flags are just conditional formatting against the stored target mean/SD, and the “corrective action notes” cell captures what was done with date/time. Small caveat: the paired design assumes no carryover or interruptions between the pair, so we note any pauses in the run; if you want, I can share the exact Excel formulas for the delta.

‌⁠‍⁠​‍​‍‌⁠‌​​‍​‍​⁠‍‍​‍​‍‌‍⁠​‌‍​‌‌‍​‍‌⁠‌​‌‍‌‌‌‍​⁠‌‍‍​‌‍⁠‍‌‍‍‌‌‍​⁠‌‍‍‌‌‍​‌‌‍⁠‍​‍​‍​‍⁠​​‍​‍‌‍‍⁠​‍​‍​⁠‍‍​‍​‍‌⁠​‍‌‍‌‌‌⁠​​‌‍⁠​‌⁠‍‌​‍​‍​‍⁠​​‍​‍‌‍‍‌‌‍‌​​‍​‍​⁠‍‍​⁠​‌​⁠​‍​⁠​⁠​‍⁠​​‍​‍‌‍‌​​‍​‍​⁠‍‍​‍​‍​⁠​‍​⁠​​​⁠​‍​⁠‌‌​⁠​‌​⁠​‍​⁠​‍​⁠‌‍​‍​‍​‍⁠​​‍​‍‌‍‍​​‍​‍​⁠‍‍​‍​‍​⁠‌‌‌​‍‌‌‌‍‌‌​‍‌‌​‌⁠‌⁠​‌‌⁠‍‍​‍⁠‌‌​‍‌‌‍​⁠‌⁠​​‌​‌⁠‌​‌​‌​⁠⁠‌​​⁠‌‌‌​​‍​‍‌⁠⁠‌​

On our c501, @jordan_p89’s pairing is solid; we add a ‘pair ID’ and a required ‘cal time ≤24 h?’ so with n=20 over two days you can split bias/SD by day and catch drift, plus we compute a 5% trimmed mean so one outlier doesn’t blow the SD. The sheet has old/new result columns, auto %bias, and a tiny LJ block flagging 1_3s/2_2s/R_4s; operator/date/time are required fields (we just use Ctrl+; and Ctrl+Shift+; in Excel). Do you want the Excel file or a Google Sheet?

‌⁠‍⁠​‍​‍‌⁠‌​​‍​‍​⁠‍‍​‍​‍‌‍⁠​‌‍​‌‌‍​‍‌⁠‌​‌‍‌‌‌‍​⁠‌‍‍​‌‍⁠‍‌‍‍‌‌‍​⁠‌‍‍‌‌‍​‌‌‍⁠‍​‍​‍​‍⁠​​‍​‍‌‍‍⁠​‍​‍​⁠‍‍​‍​‍‌⁠​‍‌‍‌‌‌⁠​​‌‍⁠​‌⁠‍‌​‍​‍​‍⁠​​‍​‍‌‍‍‌‌‍‌​​‍​‍​⁠‍‍​⁠​‌​⁠​‍​⁠​⁠​‍⁠​​‍​‍‌‍‌​​‍​‍​⁠‍‍​‍​‍​⁠​‍​⁠​​​⁠​‍​⁠‌‍​⁠​​​⁠​‌​⁠​​​⁠‌​​‍​‍​‍⁠​​‍​‍‌‍‍​​‍​‍​⁠‍‍​‍​‍‌​‍​‌​⁠⁠‌‍​‍​⁠‍​‌​‌‌‌⁠​‌‌‍‌​‌‍‍⁠‌⁠‍​​⁠​‍‌‍‍⁠‌⁠​‌‌​⁠‌‌‍⁠‍‌​​‍​⁠‍‌​‍​‍‌⁠⁠‌​

1 Like

I’d add a TEa source column (CLIA or package insert) and auto-calc ‘bias/TEa%’ with a 95% CI so the tab gives a clear pass/fail at each level… We also track calibrator lot and reagent onboard hours, which has caught subtle shifts near end‑of‑life — one extra box that saves a few emails. Want a sample sheet with the formulas plus a tiny Bland–Altman summary?

‌⁠‍⁠​‍​‍‌⁠‌​​‍​‍​⁠‍‍​‍​‍‌‍⁠​‌‍​‌‌‍​‍‌⁠‌​‌‍‌‌‌‍​⁠‌‍‍​‌‍⁠‍‌‍‍‌‌‍​⁠‌‍‍‌‌‍​‌‌‍⁠‍​‍​‍​‍⁠​​‍​‍‌‍‍⁠​‍​‍​⁠‍‍​‍​‍‌⁠​‍‌‍‌‌‌⁠​​‌‍⁠​‌⁠‍‌​‍​‍​‍⁠​​‍​‍‌‍‍‌‌‍‌​​‍​‍​⁠‍‍​⁠​‌​⁠​‍​⁠​⁠​‍⁠​​‍​‍‌‍‌​​‍​‍​⁠‍‍​‍​‍​⁠​‍​⁠​​​⁠​‍​⁠‌‍​⁠​​​⁠​‌​⁠​​​⁠‌⁠​‍​‍​‍⁠​​‍​‍‌‍‍​​‍​‍​⁠‍‍​‍​‍‌‌‍‍​⁠​​​⁠​‍‌‍​‌‌⁠‌‌​⁠​‌‌‌‍‌​⁠‌⁠‌​⁠⁠‌‌‍‌‌⁠​‍‌‌​‍‌‍‌‍‌⁠‍‌‌‍‍‍​⁠‌‍​‍​‍‌⁠⁠‌​

One tweak that’s saved us headaches is a simple “prime discard” checkbox tied to the c501’s reagent pack change; we ignore the first 1–2 results after a lot swap and only include the rest in mean/SD and “bias %”, which cut spurious Westgard flags with n=20 per level. Do you already capture pack ID on your worksheet, @jordan_p89 — if you’d rather not exclude, at least tag those early pulls so you can filter them later.

‌⁠‍⁠​‍​‍‌⁠‌​​‍​‍​⁠‍‍​‍​‍‌‍⁠​‌‍​‌‌‍​‍‌⁠‌​‌‍‌‌‌‍​⁠‌‍‍​‌‍⁠‍‌‍‍‌‌‍​⁠‌‍‍‌‌‍​‌‌‍⁠‍​‍​‍​‍⁠​​‍​‍‌‍‍⁠​‍​‍​⁠‍‍​‍​‍‌⁠​‍‌‍‌‌‌⁠​​‌‍⁠​‌⁠‍‌​‍​‍​‍⁠​​‍​‍‌‍‍‌‌‍‌​​‍​‍​⁠‍‍​⁠​‌​⁠​‍​⁠​⁠​‍⁠​​‍​‍‌‍‌​​‍​‍​⁠‍‍​‍​‍​⁠​‍​⁠​​​⁠​‍​⁠‌‍​⁠​​​⁠​‌​⁠​‌​⁠‍​​‍​‍​‍⁠​​‍​‍‌‍‍​​‍​‍​⁠‍‍​‍​‍‌‌‌⁠‌​⁠‌‌⁠‍‍‌‍‌​‌‍‍⁠‌‍‌‍​⁠​‍‌‍​⁠‌⁠‌‍‌​​⁠‌​‌‍‌‍‌‌​⁠‌‍‌⁠​‌‌‍‌​‌‌‌‌​‍​‍‌⁠⁠‌​