Run this study#
Your question: does the response stay close to a straight line across the concentrations we intend to measure?
Bring: a series with 5 known concentrations × 3 measurements each = 15 results. Include the intended low and high ends and spread the other levels between them. This suggested starting plan follows Westgard's method-validation guidance. Add levels around decision concentrations or where you suspect the response changes.
- Set the limits first. Choose New study, enter the Analyte and Unit, pick Linearity under Measuring range and choose Create study. On Set up, under Acceptance limits, choose Enter your own limit and enter the allowed Deviation from the fitted line in the analyte unit, as a percentage of the fitted value, or both. To check recovery too, add Bias from the expected concentration the same way, or recovery limits under More statistics. Use a CLIA / CAP limit also works when a CLIA or CAP limit fits your analyte.
- To verify your reportable range, open Reportable range (optional) on Set up and enter the claimed lower and upper limits, with a proximity allowance, for example 10%. Include a level within the allowance of each limit.
- Prepare and measure. Use commercial linearity material or a documented admixture series. Measure each preparation three times with acceptable QC.
- Import the results. Enter Expected concentration, Result and the same Level for each preparation, one row per replicate. For materials made in equal concentration steps, tick Calculate theoretical values on Set up instead and enter only the kit Level number and Result (see Calculate theoretical values). On Data, choose Import a file and choose your file (start from Blank template (CSV) or linearity.csv). Answer any question the dialog asks, then choose Import into this study.
- Calculate and inspect. Choose Calculate results; Results opens. Confirm five expected concentrations with three results each. Read each level's deviation and outcome, look for curvature in the Deviation from the fitted line plot, and read recovery separately. With a reportable range, read its result and the window around each limit.
- Print the report. On Report, choose Download PDF or Print.
Calculation minimum: three different expected concentrations, and two replicates per level for a decision. At expected zero, use a limit in the study unit, because recovery and relative deviation can't be calculated there.
Purpose#
A linearity study answers two questions:
- Response linearity: do the level means lie on a straight line fitted through all of them?
- Recovery: does each level mean match its expected concentration?
A method can be linear and still biased, so the two are decided separately.
Enter your claimed reportable limits to add a third question: is the range verified, meaning levels near each limit and every level between them meet their limits?
When to use it#
Use it for a dilution or admixture series with known expected concentrations across the measuring range. For diluted high specimens use Dilution verification. For one material with an assigned value use Bias against an assigned value.
Study setup#
The design needs at least three different expected concentrations, each zero or higher, spread between the intended low and high ends. Two level names at one concentration count as one concentration. Measure each level more than once: a level with one replicate has no SD or interval.
Percent values need a ratio scale (Measurement scale under Calculation settings, the default). A result below zero, such as a blank reading slightly under 0, needs Permit negative results under Calculation settings.
Reportable range#
On Set up, open Reportable range (optional) and enter the Claimed lower reportable limit and Claimed upper reportable limit, and a proximity allowance: Proximity allowance (%) of each limit, Proximity allowance in the study unit (optional), or both. With both, the larger applies. Saving needs both limits and at least one allowance. The study is checked in three steps:
- Each end is covered. Some level has an expected concentration within the window, the limit ± the allowance. The level closest to the limit is the covering level.
- Every level from the lower to the upper covering level meets its limits. Levels outside that span don't affect the range result.
- A deviation limit applies to those levels. Add Deviation from the fitted line under Acceptance limits.
The range is verified (Criteria met) when all three hold. It reads Criteria not met when an end has no level in its window or a level in the span fails. It is Undecided when no deviation limit applies or a level in the span has no decision. The range result is part of the study result.
Example. Take LDH levels at 12, 253, 485, 707 and 921 U/L (from Xiao and Chambliss 2023) and a claimed range of 10 to 1000 U/L with a 10% allowance. The lower window is 9 to 11 U/L, and 12 U/L is outside it. The upper window is 900 to 1100 U/L, and 921 U/L is inside it. The lower end has no level, so the range isn't verified. A level at 10.5 U/L would cover it.
Calculate theoretical values#
Many commercial linearity kits are made so that every level is the same step (delta) above the one before. Their inserts let you hold two levels true and calculate the other levels' expected values from them, so you don't need assigned concentrations for your analyzer.
- On Set up, under Linearity preparation, tick Calculate theoretical values.
- Choose the First level held true and Second level held true. Left at Lowest level and Highest level, the lowest and highest measured kit levels are used. Hold true two levels where the method is known to be linear; a kit insert may name the pair it uses.
- On Data, enter each row's kit level number (1, 2, 3 …) in Kit level and its Result.
Level 3andL3also read as level 3.
The two held-true levels keep their measured means as expected values. The step is (mean of the higher held-true level − mean of the lower) ÷ (difference in their level numbers), and every other level's expected value is the lower held-true mean plus its distance in levels times the step. A level you skipped keeps its place: measuring levels 1, 2, 3 and 5 still puts level 5 four steps above level 1.
Example. A five-level fibrinogen kit reads 196, 338, 479, 621 and 763 mg/dL. Holding levels 1 and 3 true gives a step of (479 − 196) ÷ 2 = 141.5 mg/dL and expected values 196, 337.5, 479, 620.5 and 762 mg/dL, so level 5 has a bias of 1 mg/dL. Holding levels 1 and 5 true gives 196, 337.75, 479.5, 621.25 and 763 mg/dL.
Deviation from the fitted line is the same whichever levels you hold true. Bias and recovery are judged against the calculated expected values; at the two held-true levels bias is zero by design, so those levels read Not applicable for bias and recovery limits and are marked held true in the results and the report. The calculation stops if a level has no number, two levels share a number, the higher held-true level doesn't read higher than the lower one, or the steps would put a level below zero.
Entering data#
One row per measured replicate:
| Column | Required? | What to enter |
|---|---|---|
| Expected concentration | Yes, unless Calculate theoretical values is selected | The prepared concentration in the study unit |
| Result | Yes | The measured value |
| Level | No; yes when Calculate theoretical values is selected (shown as Kit level) | A level name for the preparation. Leave blank to group rows by expected concentration. With calculated theoretical values, the kit level number |
| Specimen ID | No | A preparation or aliquot ID |
| Replicate | No | The replicate number |
On Data, choose Import a file or Add row. See Importing a file, and Numbers, units and identifiers for the decimal convention.
Correct or exclude a censored result such as <0.01. See Corrections and exclusions and Missing and censored values.
The calculation stops if fewer than three different expected concentrations have results, a level has two expected concentrations, rows at one expected concentration name a level on some rows and leave Level blank on others, an expected concentration is missing or negative, or a result is negative while Permit negative results is off. The message marks the row or level.
Statistics#
- Fit: unweighted least squares of level means (y) on expected concentrations (x), one point per level, with an intercept. Slope = Sxy/Sxx, intercept = ȳ − slope·x̄.
- Deviation = level mean − fitted response. Relative deviation % = 100 × deviation / |fitted|. It needs a nonzero expected concentration, a fitted value clearly away from zero and a ratio scale.
- Bias = level mean − expected. Relative bias % = 100 × bias / |expected|. Recovery % = 100 × mean / expected. Both need a nonzero expected concentration on a ratio scale.
- Residual SD = √(SSE / (n − 2)) over the n level means.
- R-squared = 1 − SSE / SST, for description only.
- Intervals: slope, intercept and fitted response use levels − 2 degrees of freedom. Each level mean uses replicates − 1.
Acceptance limits for this study#
- Deviation from the fitted line decides linearity. A percentage is taken of each level's fitted value, so every level has its own allowance.
- Bias from the expected concentration decides recovery, as do Relative bias and Recovery under More statistics. A percentage is taken of each level's expected concentration.
- A level with only one replicate, or a value that can't be calculated, is Undecided, and so is the study unless another limit is not met.
- At a zero-concentration level, a percentage-only or Pass only when within both limit reads Undecided. A study-unit limit, or Pass when within either (the larger allowance) with a study-unit part, can be decided. A recovery limit can't be decided at zero: add it once for each non-zero level, using Applies to.
- With no limit set there is no pass or fail.
One unmet limit gives Criteria not met. See Acceptance limits.
Worked example#
The example project's study Glucose · response linearity uses linearity.csv: five levels at expected 0, 25, 50, 100 and 200 mg/dL, three replicates each.
Setup: analyte Glucose, unit mg/dL, 95% confidence. One limit: Deviation from fit, -4 to 4 mg/dL, all levels.
What the saved result shows#
| Estimate | Displayed value |
|---|---|
| Slope | 1.002 (95% CI 0.999–1.005) |
| Intercept | +0.134 mg/dL (95% CI −0.169 to 0.438) |
| Residual SD about the fit | 0.146 mg/dL |
| R-squared | > 0.9999 |
| Evaluated interval | 0–200 mg/dL |
| Level | Expected | Mean | Deviation from fit | Recovery |
|---|---|---|---|---|
| 1 | 0 | 0.20 | +0.07 | Can't be calculated (expected 0) |
| 2 | 25 | 25.10 | −0.08 | 100.4% |
| 3 | 50 | 50.10 | −0.12 | 100.2% |
| 4 | 100 | 100.50 | +0.19 | 100.5% |
| 5 | 200 | 200.43 | −0.05 | 100.2% |
Concentrations and deviations are in mg/dL. All five levels meet the deviation limit, and the study status is Criteria met. With no recovery limit, recovery is shown without a decision.
A second study added a recovery limit of 95 to 105 % for all levels. Levels 2 to 5 meet it. Recovery can't be calculated at level 1 (expected 0), so the study is Undecided.
Reading the results#
Why and Results and acceptance list each limit with its observed value and outcome. Under Results and acceptance, Measurements has one row per level: level, expected (headed "Assigned"), N, mean and recovery, plus Deviation from fit when no limit already shows it. With a reportable range, its own Reportable range panel follows: one row for each end with the limit, the window around it, the closest level and whether that end is covered. Then three plots:
- Measured vs expected response: replicates, level means (diamonds) and the fitted line. Look for curvature or scatter growing with concentration.
- Percent recovery: each level mean against a line at 100%.
- Deviation from the fitted line: a U-shape or steady trend suggests curvature. Deviation limits show as short bars.
Detailed statistics holds the fitted line (slope and intercept with intervals, residual SD, R-squared) and, for every level, the fitted value with its interval, relative deviation, bias and recovery.
- Judge linearity by the deviation from fit. R-squared stays near 1 even for a clearly curved response.
- A note flags any gap between neighbouring levels wider than half the tested range: you have no results inside that gap.
- Levels with different names but the same expected concentration are fitted as separate points, and a note asks you to confirm they are separate preparations.
When the study fails:
- Recheck data entry. A mistyped expected concentration moves a whole level off the line. A wrong decimal convention misreads every value.
- Retest. Reprepare a level that sits off the line. Recovery off in the same direction at every level points to the expected concentrations or calibration.