Student guide: Overview
The Overview is the app’s verdict on a laboratory. It looks at every analyte, check stage, CRM and blank in the data at once, judges each against a rule, ranks what it found, and sums the laboratory up in one word. Everything on the page is worked out from rules you can read and change, so this page goes through the rules as well as the controls.
The Overview ignores the Filters: the band is greyed out while you are on it. Its data is both sheets of the file: the duplicates, and the standards and blanks. The demo loads both; an upload needs a workbook with both sheets to fill every card, and a CSV holds one or the other.
1. Lab Health: the header
Lab Health is the heading of everything from the top of the page to the Key Takeaway.
- The pill Data up to despatch 34001 · 12/11/2025 is the latest return date in either sheet, with the despatch most of that day’s results came in. It tells you how current the verdict is.
- Results per month is a small chart of how many results came back each month: a quick view of when the project was busy and when nothing was sent.
- Rules opens the window described in section 7.
2. The lab switch
One button per laboratory, each with a coloured dot and the laboratory’s confidence word. The demo has two: ALS and SGS.
The Overview opens on the laboratory with the newest data. Click another to switch; everything below changes with it. If you change the Laboratory in the Filters while you are on another tab, the Overview follows that laboratory when you come back.
Why one lab at a time: every check compares results against that laboratory’s history: its own despatches, its own CRM results. A bias at one lab says nothing about the other.
3. Lab Confidence and the headline
Lab Confidence is the verdict: High, Moderate, Low or Insufficient data.
| Verdict | Rule |
|---|---|
| Low | Any of the four domains (Accuracy, Precision, Contamination, Coverage) fails. |
| Moderate | None fails and at least one has a warning. |
| High | Every domain that can be judged passes. |
| Insufficient data | Neither CRMs nor duplicates can be judged: no CRM with a certified SD, and too few usable duplicate pairs. |
A domain marked N/A (nothing to judge) does not count against the laboratory. SGS in the demo has no CRMs or blanks at all, so its Accuracy and Contamination are N/A, yet it is still Low, because Coverage fails.
Under the verdict, the headline is the laboratory’s single most serious finding. The order of precedence is CRM bias, then duplicate precision, then blanks, then coverage. For ALS it is the Mo_MEICP41s_ppm bias; for SGS, with no CRMs, it is a duplicate precision finding.
In Rules → Lab Health you can soften this: a failing domain can give Moderate instead of Low, and a warning can give High instead of Moderate.
4. The four domain cards
Each card shows a status pill (Fail, Warn, Pass or N/A), a count, the worst finding, a note, and a button to the chart behind it.
Accuracy (CRMs)
FAIL · 9 biased · 19 to watch · of 37 analytes Mo_MEICP41s_ppm: sustained negative CRM bias of −1.4 SD since despatch 17301 (16/09/2024) - 359 results over 114 despatches, ongoing
What it does. For every analyte, the app takes each company CRM result, works out how many certified standard deviations it is from its certified value (its z-score), puts all the analyte’s CRM results in date order, and runs them through a CUSUM: a running sum that grows while results keep falling on one side of the certified value and resets when they don’t. When the sum crosses the decision limit, the analyte has a bias excursion. The bias reported, −1.4 SD for Mo, is the mean z-score over the excursion.
| Status | Rule (defaults) |
|---|---|
| Fail (“biased”) | The excursion is still going on in the latest despatches, and its mean bias is ±1 SD or more. |
| Warn (“to watch”) | An ongoing bias smaller than 1 SD, or a bias that ended within the last 20 despatches. |
| Pass | Neither. |
| N/A | No CRM with a certified SD above 0. |
The CUSUM uses a shift of k = 0.5 SD and a decision interval of H = 5 SD. The CUSUM method page shows the arithmetic.
Why a CUSUM and not a count of failures: a lab that reports a CRM 0.8 SD low every time never breaks the ±3 SD limit on a Shewhart chart, yet every one of its real samples is probably low too. The CUSUM adds those small, same-side differences up until they can’t be chance. That is what sustained means in the message.
Company CRMs and lab standards. Company CRMs are the ones your project inserted; lab standards are the laboratory’s own. The company CRMs decide the status. The note Lab standards: 16 biased · 23 to watch · of 110 analytes is shown for information, and lab standards only decide the status for a laboratory that has no company CRMs. Why: the laboratory knows which samples are its own standards, so they are a weaker test.
The note 2 analytes can’t be judged (no certified SD, or every result at the upper detection limit) explains the gap between 37 analytes judged and the analytes in the data. A CRM certified above the method’s upper limit can only ever read at that limit, so its results are not measurements.
View CUSUM opens the worst analyte’s CUSUM on the Charts tab.
Precision (duplicates)
WARN · 0 over the action limit · 7 to watch · of 171 analytes and stages Ni_MEICP43_ppm (Pulverising Stage): duplicate precision over the limit - median RD 19.8% in the last 20 despatches against a 10.0% limit, over since despatch 1152 (12/11/2023)
What it does. For every analyte and check stage, the app takes the usable duplicate pairs (both results present, and the pair’s mean at least 10× the detection limit), works out each pair’s absolute relative difference (|MPRD%|, the difference as a percentage of the pair’s mean), and finds the median over the last 20 despatches. It compares that median with the stage’s limit.
| Status | Rule (defaults) |
|---|---|
| Fail (“over the action limit”) | The median RD of the last 20 despatches is more than twice the stage limit. |
| Warn (“to watch”) | The median is over the stage limit; or it is at least half the limit and 20% or more worse than the 20 despatches before. |
| Pass | Neither. |
| N/A | Fewer than 10 usable pairs in the window. |
The stage limits are the usual industry ones: ±30% for field duplicates, ±20% for coarse (crushed) duplicates and ±10% for pulp duplicates. A stage the app doesn’t know is matched by its name (“pulveris” gives 10%, “crush” 20%, “field” 30%), and otherwise gets the general default of 20%. The Rules window shows which rule each stage in your data got.
Why the median, and why 20 despatches: one bad pair in a despatch is normal; a median ignores it. Twenty despatches is enough pairs to judge and short enough to notice a change. The note 26 worsening, 25 improving compares each analyte’s last 20 despatches with the 20 before.
Why a threshold of 10× LLD: near the detection limit, a difference of one unit in the last digit is a huge relative difference. Such pairs say nothing about precision and are left out. The Data tab counts how many pairs that removes.
View Rolling Median opens the worst analyte and stage’s RD Rolling Median chart, which draws exactly this calculation.
Contamination (blanks)
FAIL · 7 in the latest despatch · 5 to watch · of 33 analytes Ca_MEICP41s_pct: blank contamination in the latest despatch - 15 exceedances in the last 20 despatches, the last in despatch 32901 (10/11/2025), becoming more frequent
What it does. A blank should report nothing. For every analyte, each blank result is an exceedance when it is more than 5× the detection limit above the blank’s certified value (0, if it has none).
| Status | Rule (defaults) |
|---|---|
| Fail | An exceedance in the latest despatch. |
| Warn | An exceedance in the last 20 despatches, or exceedances becoming more frequent. |
| Pass | Neither. |
| N/A | No blank with a detection limit. |
Why 5× LLD: a blank reads a little above zero by chance; the limit allows for that noise. A result five detection limits above it is metal that came from somewhere: carry-over from the sample before it, or a contaminated crusher or pulveriser.
View Blanks chart opens the worst analyte’s blanks bar chart.
Despatch coverage
FAIL · No duplicate results from Feb 2024 to Jun 2024
What it does. It checks that the QC was actually sent. For every despatch of the laboratory it counts the duplicate pairs, CRMs and blanks.
| Status | Rule (defaults) |
|---|---|
| Fail | For whole months the laboratory has duplicates but no CRMs or blanks at all, or the reverse. |
| Warn | Some despatches have fewer than the minimum: 1 duplicate pair, 1 CRM, 1 blank. |
| Pass | Every despatch has the QC the Rules ask for. |
| N/A | The upload has only one of the two sheets. |
Why this is a finding: QC that was never submitted can’t tell you anything, and a gap of months is usually a project or database problem, not a laboratory one. View data opens the Data tab on the period concerned.
5. Key Takeaway, Current Risks and Worst analytes
Key Takeaway is the four cards in one paragraph: the main concern first, then what else needs watching, then what is fine and what can’t be judged.
Current Risks is every failing and warning check for the laboratory, ranked fail before warn, then by how many results are affected. The demo’s ALS has 411. Each row gives the finding, the context (the bias it is part of, or the trend), and where: the despatch and the number of results.
- Investigate (a failure) and Review (a warning) open the chart behind the check with the Filters set.
- View data opens the Data tab, for coverage findings and Data health warnings.
- Five rows are shown; Show the next 35 reveals more, up to 40.
These rows come from a second, simpler set of checks that look at the latest results rather than trends:
| Check | Fail | Warn |
|---|---|---|
| CRM (per CRM and analyte) | The latest result is beyond ±3 certified SD. | An earlier result went beyond 3 SD; 2 of 3 consecutive results beyond 2 SD on one side; 9 in a row on one side. |
| Duplicates (per analyte and stage) | More than 20% of usable pairs are outside the stage limit. | More than 10%. |
| Blanks (per blank and analyte) | The latest result exceeds the limit. | An earlier one did; the latest is clean. |
So Mo_MEICP41s_ppm: the latest EXP-3 result is 9.0 SD below certified (a single result) sits beside sustained negative CRM bias of −1.4 SD (the trend). Both are true; the first is what you would see on a Shewhart chart, the second what the CUSUM found.
Worst analytes is a table with one row per analyte that has a warning or failure: 34 with a warning or failure · 51 clear · 39 can’t be judged for ALS. Its columns:
| Column | Meaning |
|---|---|
| Accuracy (CRM bias) | The mean bias since the CUSUM first crossed its limit, and whether it is ongoing or ended. |
| Precision (median RD / limit) | The check stage that is worst against its limit over the last 20 despatches: 5.8% / 20% at the Crushing Stage for Al. |
| Blanks (exceedances) | How many of the last 20 despatches had one. |
| Trend | Bias since 13/10/2025 · Precision worsening · Blanks more frequent, or Steady. |
Click any value to open its chart. Ten rows are shown; Show all 34 reveals the rest.
Example. Al_MEICP41s_pct heads the ALS table: a CRM bias of +1.3 SD still ongoing, crushing-stage precision of 5.8% against a 20% limit (fine, but worsening), and blanks contaminated in 12 of the last 20 despatches. Three different problems, three different causes to look for: a calibration drift, a crushing problem, and carry-over.
6. Featured charts
Two cards show the laboratory’s worst CRM and worst duplicates finding as charts, with a View full chart button. For ALS:
- Featured CRM · worst bias at ALS: the CUSUM of EXP-3 for Mo_MEICP41s_ppm, with its statistics: mean 2.57 against a certified 3.8 ± 0.2, %RSD 31%, 74 / 79 results flagged. The note says what a CUSUM shows: a steady climb or fall points to a systematic bias.
- Featured duplicates · worst precision trend at ALS: the RD Rolling Median of Ni_MEICP43_ppm at the Pulverising Stage: 10 usable pairs, 70% outside the limit, median |RD| 19.8% against a 10% stage limit.
Which chart each card uses is a Rule (Featured charts): CUSUM and RD Rolling Median to start, or Shewhart, EWMA, Z-Score, Scatter and the others.
Why these two: the CUSUM is the Overview’s own bias test, and the rolling median is its own precision test, so the card shows you the evidence for the verdict, not a different view of it.
7. The Rules window
Rules opens Rules and how checks are judged. Each section has its fields on the left, a plain-English statement of the rule on the right, and Reset to defaults. Apply saves only what you changed, in this browser; Reset all returns everything to the defaults. The Lab Health header then shows a Custom rules pill naming what differs.
| Section | Fields and defaults |
|---|---|
| Analytes to assess | Up to 5 analytes. Leave all at (none) to assess every analyte. Use it to focus the Overview on the elements that matter to the project. |
| Lab Health | CUSUM shift k 0.5 SD; decision interval H 5 SD; ongoing bias fails from ±1 SD; trend window 20 despatches; trend change from 20%; Lab Confidence when a domain fails (Low) or has a warning (Moderate). |
| Results written as text | How a result such as <0.2 is read: half the value (0.1, the usual database rule) or the value as written. Negative numbers are read as below detection too; >100 is 100; other text (LNR, IS, NSS) and 0 are missing. |
| Precision | The RD limit for each check stage in the data, with its pair count and where the limit came from; the limit for any other stage (20%); pass when pairs within the limit are at least 90%; warn from 80%; usable pair mean at least 10× LLD; minimum 10 usable pairs. |
| Accuracy (CRMs) | Fail beyond ±3 certified SD; warning zone from ±2; 9 consecutive same-side results is a warning. |
| Contamination (blanks) | Fail when above certified by more than 5× LLD. |
| Despatch coverage | Each despatch needs at least 1 duplicate pair, 1 CRM and 1 blank (0 to 5; 0 means not required). |
| Featured charts | The chart on each Overview card. |
| Data health | Not adjustable: these are errors in the data, not tolerances. |
Why the rules are visible: a QC verdict is a judgement against limits, and the limits are a choice. Your project’s QA/QC plan may allow pulp duplicates ±15%, or treat a bias of 0.5 SD as serious for gold. Set the rules to the plan, and the Overview judges against the plan.
Example: tightening the bias rule. Set Ongoing bias fails from to 0.5 SD and click Apply. Analytes whose bias was between 0.5 and 1 SD, counted as “to watch” before, now count as biased, and the Accuracy card’s numbers change. The Custom rules pill reads 1 changed, and the Rules window names it: Ongoing bias fails from (± SD): 0.5. Reset all puts it back.
Exercises
- What makes ALS Low? List the four domain statuses and say which of them, on their own, would make Lab Confidence Low. Then open Rules → Lab Health and change Lab Confidence when a domain fails to Moderate. What is the verdict now, and is that a sensible rule for a real project?
- Trend or event? In Current Risks for ALS, find the Mo_MEICP41s_ppm rows. One says the latest EXP-3 result is 9.0 SD below certified; another says a sustained bias of −1.4 SD since 16/09/2024. Explain the difference between the two checks, and why a laboratory could fail one without failing the other.
- The threshold. Open Rules → Precision and change Usable pair: mean at least (× LLD) from 10 to 2. Watch the Precision card: how do the counts of analytes and stages, and the “to watch” count, change, and why does lowering the threshold make precision look worse?
- Missing QC. Switch to SGS. Its Accuracy and Contamination are N/A, yet its Lab Confidence is Low. Which card is responsible, and what would the project, rather than the laboratory, have to do about it?
- Your own limits. Suppose your project’s QA/QC plan allows pulp duplicates ±15% and crushed duplicates ±25%. Set those limits in Rules → Precision for the Pulverising and Crushing stages, apply them, and note which analytes leave the Worst analytes table. Then Reset all.