Skip to main content

Deterministic In-Browser Spreadsheet Qualification

Order Dossier (€149 + VAT)

For medical device and IVD manufacturers · QA/RA · CSV · production and test engineering

Validate your quality and production spreadsheets to ISO 13485 Clauses 4.1.6 and 7.5.6 — built for Notified Body and MDSAP audits.

Your lot-release spreadsheet is software. ISO 13485 says so three times.

ISO 13485:2016 requires software used in your quality system, your production and your measurements to be validated before first use and, as appropriate, after changes, proportionate to risk. A lot-release, Cpk or test-method spreadsheet is exactly that software. NormXL recalculates every formula with an independent engine, proves your acceptance criteria at their boundaries and seals the workbook with SHA-256. The result is a risk-based Validation Dossier your BSI, TÜV SÜD, DEKRA or MDSAP auditor can verify by hand, produced inside your browser with 0 KB of design or lot data uploaded. About three minutes. €149 + VAT.

  • Built for EU MDR and IVDR Notified Body audits, UK Approved Body audits, and the MDSAP audits that TGA and Health Canada rely on.
  • Risk-proportionate by design: scripted boundary tests where release decisions are made, lighter assurance where they are not.
  • Aligned with the risk-based thinking of ISO/TR 80002-2 and GAMP® 5 (Second Edition).
Order Your Device QMS Spreadsheet Dossier — €149 + VAT Download Sample 24-Page Dossier (PDF)

No installation · No admin rights · Your CAD dimensions and lot data never leave your workstation

The sample is produced in the ISO/IEC 17020 profile; the ISO 13485 profile has the same structure, with the clause mapping shown below.

The capable lot that was heldA lot-release sheet: x̄ 10.0001 (C5), s 0.0100 (C6). Cell G4 shows 1.33 and stores 1.3299999999999794; =IF(G4>=1.33,"RELEASE","HOLD") returns HOLD in G5 · False hold. On paper: exactly 1.33. In the file: HOLD. Boundary vector at 1.33 · flagged in §5.G5=IF(G4>=1.33,"RELEASE","HOLD")ABCDEFG34567Cpk1.33x̄10.0001HOLDs0.0100ReleaseBoundary vector at 1.33 ·flagged in §5Reproduced in Microsoft Excel 16.01.3299999999999794False holdOn paper: exactly 1.33. In the file: HOLD.The capable lot that was heldA lot-release sheet: x̄ 10.0001 (C5), s 0.0100 (C6). Cell G4 shows 1.33 and stores 1.3299999999999794; =IF(G4>=1.33,"RELEASE","HOLD") returns HOLD in G5 · False hold. On paper: exactly 1.33. In the file: HOLD. Boundary vector at 1.33 · flagged in §5.G5=IF(G4>=1.33,"RELEASE","HOLD")BCDEFG34567Cpk1.33x̄10.0001HOLDs0.0100ReleaseBoundary vector at 1.33 ·flagged in §5Reproduced in Microsoft Excel 16.01.3299999999999794False holdOn paper: exactly1.33. In the file: HOLD.
  • Process capability Cpk = min[(USL − x̄) / 3σ, (x̄ − LSL) / 3σ]
  • Accelerated ageing (ASTM F1980) AAF = Q₁₀((TAA − TRT) / 10)
  • Detection capability (CLSI EP17) LoD = LoB + cp · sL

Your release formulas, recalculated independently and tested at the limit that releases product.

Structured for Notified Body, Approved Body and MDSAP audits, and ready for export

  • BSI Assurance UK: UK Approved Body 0086 for UKCA under the UK MDR 2002 · MHRA: the UK medical device regulator · UK Responsible Person: required for manufacturers based outside the UK; makes your technical documentation and declaration of conformity available to the MHRA.
  • Notified Bodies audit against EN ISO 13485:2016+A11:2021, the harmonised standard under the EU MDR and IVDR, e.g. BSI Group The Netherlands (2797), TÜV SÜD Product Service (0123), DEKRA Certification B.V. (0344).
  • The TGA uses MDSAP audit reports and certificates as evidence in conformity assessment.
  • Health Canada has required an MDSAP certificate for Class II–IV device licences since 1 January 2019.
  • The FDA's QMSR has incorporated ISO 13485:2016 by reference since 2 February 2026; the FDA participates in MDSAP.

Named only to identify the regulatory and certification frameworks NormXL dossiers are structured for. NormXL is independent and is not affiliated with, endorsed by or approved by any of these organisations.

Three clauses, one requirement: validate the software before you rely on it

ISO 13485:2016 says the same thing three times, for three places a spreadsheet can sit. In Europe it is harmonised as EN ISO 13485:2016+A11:2021 under the EU MDR and IVDR, so this is the text your Notified Body audits against.

4.1.6 · Software used in the quality management system (part of 4.1, General requirements)

Document procedures for validating the application of computer software used in the QMS. Validate it before initial use and, as appropriate, after changes to the software or its application. Keep records.

Spreadsheets in scope: complaint trending, CAPA effectiveness checks, supplier scoring, internal-audit sampling, training matrices.

7.5.6 · Validation of processes for production and service provision

Mostly about process validation. Its final paragraph applies the same software requirement to software used in production and service provision, with the risk judged against the product's ability to conform to specifications.

Spreadsheets in scope: lot release, Cpk and process-capability calculators, process-validation statistics, sterilisation and accelerated-ageing calculations.

7.6 · Control of monitoring and measuring equipment

The same requirement again, for software used to monitor and measure requirements.

Spreadsheets in scope: dimensional inspection evaluation, tensile and burst test evaluation, incoming-inspection sampling plans.

Validation records are controlled under 4.2.5; the template itself is a controlled document under 4.2.4.

"Proportionate to the risk" is the most useful phrase in the standard

All three clauses say the validation approach shall be proportionate to the risk associated with the use of the software. A Cpk calculator that releases implant lots and a spreadsheet that schedules training do not need the same evidence. The Dossier's risk assessment (§2) classifies every calculation by its effect on product conformity, then scales the testing accordingly. That is exactly the reasoning an auditor expects you to be able to explain.

Note the wording: you validate the application of computer software. Nobody expects you to validate Microsoft Excel. You are expected to validate what your organisation built with it, for the use you put it to: the template, its formulas, its limits and its decisions. Which clause applies depends on that use:

  • a release decision falls under 7.5.6;
  • reducing measurement data falls under 7.6;
  • complaint trending falls under 4.1.6.
Order Your Device QMS Spreadsheet Dossier — €149 + VAT

100% in-browser · VAT invoice in your organisation’s name · For business customers

Auditors follow the product, and the product leads to a spreadsheet

Notified Body and MDSAP auditors pick a lot, trace it to its release decision, and ask how the spreadsheet that made that decision was validated. "It's Excel" is not an answer. "Here is the validation record for version Rev3, identified by its SHA-256 fingerprint, approved on 14 March, with the boundary tests at Cpk 1.33" is.

  • Lot release and process capability. The Cpk that justified release, the formula that computed it, and whether that formula was validated.
  • Incoming inspection. Sampling plans built from ISO 2859-1 tables with look-up formulas. At general inspection level II, a lot of 500 pieces is code letter H, and 501 is J. That boundary is a classic place for a look-up to fail.
  • Process validation. IQ/OQ/PQ statistics, capability studies and tolerance intervals computed in workbooks that were never validated themselves.
  • Sterile barrier and shelf life. Accelerated-ageing durations and test schedules calculated from a Q₁₀ formula.
  • Design verification. Test evaluations for tensile, burst, flow and dimensional requirements.
  • Post-market and CAPA. Complaint-trending workbooks that decide whether a signal is a signal.

How the finding is usually worded

"The organisation could not demonstrate validation, prior to initial use, of the spreadsheet used to calculate process capability for lot release (ISO 13485:2016, 7.5.6)."

"Software used in the quality management system (complaint-trending workbook) has not been validated, and no documented procedure defines the validation approach (ISO 13485:2016, 4.1.6)."

Illustrative wording, typical of findings raised against unvalidated spreadsheets.

Notified Bodies audit your QMS under EU MDR Annex IX, or under the IVDR. UK Approved Bodies do the same for UKCA under the UK Medical Devices Regulations 2002. MDSAP Auditing Organisations carry out one audit on behalf of the participating regulators. The MDSAP audit model looks at software validation chiefly within its Production and Service Controls process. Its nonconformity grading (derived from GHTF/SG3/N19:2012) starts higher for clauses that directly affect product realisation, and escalates further if there is no documented procedure or if nonconforming product was released. The spreadsheet that releases product is the one to validate first.

Proportionate to risk, not proportionate to paper

Proportionate to risk means two things. The spreadsheets that decide whether product reaches a patient get the most rigorous testing. And the evidence is fit for an auditor to read, rather than heavy enough to impress one. Spreadsheet validation usually misses in one of two directions: a 100-page protocol for a training-matrix sheet, or a one-line statement for the sheet that releases implant lots.

The Risk & Traceability Matrix in §2 of the Dossier classifies every calculation by what it does, and scales the assurance to match:

What the formula doesExampleAssurance in the Dossier
Makes an accept/reject or release decision=IF(G4>=1.33,"RELEASE","HOLD")Scripted boundary vectors at, just inside and just outside the limit · operands at full precision · display-versus-decision audit · independent recalculation
Calculates a value that feeds a decisionCpk, mean, σ, peak forceIndependent recalculation of every cell · negative vectors on its inputs
Supporting calculation, no decision downstreamCounts and totals for reportingInventory and independent recalculation
Formatting and presentationHeaders, colour rules with no logicInventoried and documented, not tested
Record-keeping with no calculation affecting productTraining log, document indexUsually not a validation target. The fit check says so, and no Dossier is sold

The reasoning follows the risk-based approach of ISO/TR 80002-2:2017 (Medical device software — Part 2: Validation of software for medical device quality systems): critical thinking first, testing where it matters, and records generated by the tool rather than assembled from screenshots. It is the same harm-based reasoning as your ISO 14971 risk management file: what harm follows if this sheet releases a lot it should have held?

GAMP® 5 (Second Edition, 2022) gives the scale, and its Appendix S3 deals with end-user applications such as spreadsheets:

  • Excel as installed is Category 3.
  • A template with your formulas, limits and look-ups is commonly treated as Category 4.
  • Custom VBA moves it towards Category 5.

The second edition treats the categories as a continuum rather than boxes. In §1 of the Dossier you declare what the spreadsheet decides and its effect on product conformity. NormXL sets the depth of testing accordingly and records the rationale in §2.

Risk-proportionate assuranceA two-by-two matrix showing that validation effort scales with risk. Spreadsheets that decide product release and carry high risk get scripted boundary tests and full-precision checks, while low-risk supporting sheets are inventoried and documented, following ISO 13485, ISO/TR 80002-2, GAMP 5 and ISO 14971.ISO 13485:2016 · 4.1.6 / 7.5.6 / 7.6 · "proportionate to the risk"ISO 14971GAMP® 5 2nd Ed.ISO/TR 80002-2Effect on productconformity / patientsafety:Use:decides release or acceptancesupports the QMSHighNot highscripted boundary vectors ·full precision ·independent recalculation Cpk lot releaseindependent recalculation ·negative vectors complaint trendingboundary vectors at the limit label-count checkinventory · documented training matrix Cpk lot releasescripted boundary vectors · full precision ·independent recalculation complaint trendingindependent recalculation · negative vectors label-count checkboundary vectors at the limit training matrixinventory · documentedExcel = Cat. 3 → your template ≈ Cat. 4 → custom VBA → Cat. 5 · a continuum, not boxesAlso consistent with FDA CSA (2025) for US exportersRisk-proportionate assuranceA two-by-two matrix showing that validation effort scales with risk. Spreadsheets that decide product release and carry high risk get scripted boundary tests and full-precision checks, while low-risk supporting sheets are inventoried and documented, following ISO 13485, ISO/TR 80002-2, GAMP 5 and ISO 14971.ISO 13485:2016 · 4.1.6 / 7.5.6 / 7.6 ·"proportionate to the risk"ISO/TR 80002-2GAMP® 5 2nd Ed.ISO 14971Effect on product conformity / patient safety:Use:decides release oracceptancesupports the QMSHighscripted boundaryvectors ·full precision ·independentrecalculation Cpk lot releaseindependentrecalculation ·negative vectors complaint trendingNot highboundary vectorsat the limit label-count checkinventory ·documented training matrix Cpk lot releasescripted boundary vectors · full precision ·independent recalculation complaint trendingindependent recalculation ·negative vectors label-count checkboundary vectors at the limit training matrixinventory · documentedExcel = Cat. 3 → your template ≈ Cat. 4 →custom VBA → Cat. 5 · a continuum, notboxesAlso consistent with FDA CSA (2025) for USexporters

Built for the spreadsheets that release product

The examples use illustrative values. Every Excel result quoted was reproduced in Microsoft Excel 16.0.

A. The Cpk ≥ 1.33 gate

Process capability is a common acceptance gate in MedTech lot release, and its formula is unforgiving to spreadsheets. It subtracts two nearly equal numbers, a specification limit and a mean, and divides the small difference by a small standard deviation. Subtracting nearly equal numbers is exactly where binary floating-point residues stop being invisible.

Machined implant component, Ø 10.00 ± 0.04 mm USL = 10.04 · LSL = 9.96 · x̄ = 10.0001 · s = 0.0100 (STDEV.S, n = 30)

Cpu = (10.04 − 10.0001) / (3 × 0.0100) = 1.33 (exact decimal arithmetic)

Cpl = (10.0001 − 9.96) / (3 × 0.0100) = 1.3367

Cpk = min(Cpu, Cpl) = 1.33

In Excel:

=(10.04-10.0001)/(3*0.01) → displays 1.33, stores 1.3299999999999794

=IF((10.04-10.0001)/(3*0.01)>=1.33,"RELEASE","HOLD") → HOLD

=IF(ROUND((10.04-10.0001)/(3*0.01),2)>=1.33,"RELEASE","HOLD") → RELEASE

A capable lot, held by a residue of two hundred-trillionths. The cost is not only the hold. It is the investigation that follows, and the temptation to "fix" the formula with >=1.3299: a buried constant that will one day release a lot it should not.

The same lot can produce three answers:

  • STDEV.S over all 30 parts. The release cell says HOLD, while the printed lot record reads "Cpk 1.33".
  • STDEV.P instead. σ = 0.0098319 mm, so Cpk = 1.3527, and the cell says RELEASE, with a margin that exists only because of the function chosen. With 30 parts, STDEV.P inflates the index by 1.7 %.
  • Within-subgroup σ against overall σ. Cpk proper uses within-subgroup variation (for example R̄/d₂). An overall standard deviation over all data gives, by most definitions, a performance index, Ppk. Many sheets labelled "Cpk" actually calculate Ppk, including both examples above.

The opposite failure is quieter. A Cpk of 1.3251, formatted to two decimals, displays as 1.33. A reviewer reading the printed record releases the lot, while the decision cell, comparing the stored value, says HOLD. Which is correct is not a matter of opinion. It is whatever your procedure documents. NormXL makes you declare it, for example "Cpk calculated to full precision, rounded to two decimals, released if ≥ 1.33", and proves that the spreadsheet implements it, at 1.33 exactly and one step either side.

None of these is a software bug. Each is a choice that has to be visible, documented and tested at the boundary.

What NormXL checks

  • Lists every statistical function by name and range (e.g. STDEV.S over B2:B31), so the estimator is on paper for your reviewer
  • Tests the release decision exactly at 1.33 and ±0.005, with both operands printed to full precision
  • Verifies that specification limits are locked, labelled and sourced, not typed into the formula where a drawing revision will never reach them
  • Injects text entries ("retest"), blanks and outliers into the measurement range

Boundary vectors injected

Cpk exactly 1.33 · n = 1 (σ undefined) · n = 2 · all-identical measurements (σ = 0, division by zero) · a measurement exactly on USL or LSL · text in the measurement column

One lot, three answersA capability release gate at 1.33. With the sample standard deviation over all parts, the stored C_pk is 1.3299999999999794 and a lot that is exactly 1.33 on paper is held. With the population standard deviation it is 1.3527 and released. Both use the overall standard deviation, so strictly they estimate P_pk.both use the overall σ → strictly a Ppk estimate Definition check1.251.301.351.40Cpkrelease gate Cpk ≥ 1.33STDEV.S over all 30 parts1.3299999999999794HOLD False hold: exactly 1.33 on paperSTDEV.P over all 30 parts1.3527RELEASE Observation: margin created by the function choice=IF(ROUND(G4,2)>=1.33,"RELEASE","HOLD") per your documented rule → RELEASE at exactly 1.33 Intended decisionØ 10.00 ± 0.04 mm · x̄ = 10.0001 · s = 0.0100 · n = 30Reproduced in Microsoft Excel 16.0 · Sample COne lot, three answersA capability release gate at 1.33. With the sample standard deviation over all parts, the stored C_pk is 1.3299999999999794 and a lot that is exactly 1.33 on paper is held. With the population standard deviation it is 1.3527 and released. Both use the overall standard deviation, so strictly they estimate P_pk.release gate Cpk ≥ 1.331.3299999999999794STDEV.S over all 30partsHOLD False hold: exactly1.33 on paperSTDEV.P over all 30parts1.3527RELEASE Observation:margin created bythe function choiceboth use the overall σ → strictly a Ppkestimate Definition check1.251.301.351.40Cpk=IF(ROUND(G4,2)>=1.33,"RELEASE","HOLD")per your documented rule → RELEASE atexactly 1.33 Intended decisionØ 10.00 ± 0.04 mm · x̄ = 10.0001 · s = 0.0100 ·n = 30Reproduced in Microsoft Excel 16.0 · Sample C

B. Catheter tensile and burst evaluation (ISO 10555-1 / ISO 10555-4)

ISO 10555-1 sets the minimum peak tensile force by the smallest outside diameter of the tubular portion of the test piece:

Smallest outside diameter of test pieceMinimum peak tensile force
≥ 0.55 mm and < 0.75 mm3 N
≥ 0.75 mm and < 1.15 mm5 N
≥ 1.15 mm and < 1.85 mm10 N
≥ 1.85 mm15 N

Check these values against the edition cited in your technical documentation (ISO 10555-1:2023, Table 1).

In a spreadsheet, the table usually becomes a nested IF:

=IF(D5<0.75,3,IF(D5<1.15,5,IF(D5<1.85,10,15)))

That formula buries three thresholds and four forces, and the decision turns on comparison operators. Write <= where the table means <, and a test piece measuring exactly 0.75 mm is judged against 3 N instead of 5 N. Feed it an OD of 0.50 mm, below the table altogether, and the formula returns 3 N without complaint.

Other places these sheets go wrong:

  • Unit conversions. Burst and leak evaluations convert between kPa, bar and psi. The factor of 6.894757 kPa per psi gets typed as 6.89 in one sheet and 6.9 in another: 6.89 biases every converted result by 0.07 %, enough to matter for a part on its limit. 9.81 typed for 9.80665 N/kgf adds another 0.03 %.
  • Balloon rated burst pressure. It is typically demonstrated statistically, commonly at 99.9 % reliability with 95 % confidence, using a one-sided tolerance factor k for the sample size actually tested. The factor for n = 30 is typed into the formula. Then one balloon is excluded for a fixture fault, and the sheet still uses the factor for 30.
  • A sample that slipped in the grips, recorded as SLIP, silently drops out of the mean.

What NormXL checks: boundary vectors at exactly 0.55, 0.75, 1.15 and 1.85 mm, plus one below the table · thresholds, forces, tolerance factors and conversion factors in the Constant Ledger, with every occurrence listed · text results ("invalid", "fixture slip") and a reduced n injected into every range

C. IVD: calibrator curves, precision and detection capability

Four-parameter logistic calibration: y = d + (a − d) / (1 + (x/c)b)

Precision: %CV = 100 · s / x̄

Detection capability (CLSI EP17-A2, parametric): LoB = x̄blank + 1.645 · sblank
LoD = LoB + cp · sL, cp = 1.645 / (1 − 1 / (4 · (L − K)))

Here L is the total number of low-level results across K low-level samples. LoQ is the lowest concentration that meets your total-error goal.

Where IVD spreadsheets go wrong:

  • 4PL parameters fitted once with Solver and pasted as values. By design, that makes them buried constants. They have to be documented as such and refreshed under a procedure.
  • 1.645 typed without a reference, and cp simplified to 1.645 even for small studies. Change the confidence level in the protocol and the sheet disagrees with it.
  • STDEV.P used where the guideline expects a sample standard deviation.
  • Negative blank readings clipped to zero before the LoB is calculated, although EP17 expects the uncensored values.
  • %CV over dirty ranges. A column containing "QC fail" or "re-run" entries silently changes n.

For IVD manufacturers under the EU IVDR, these sheets sit directly behind the analytical performance claims in your technical documentation.

What NormXL checks: independent recalculation of every curve point, CV and limit · 1.645, cp and pasted 4PL parameters in the Constant Ledger · negative vectors (negative blanks, text results, empty replicates) against every input

D. Accelerated ageing (ASTM F1980)

  • AAF = Q₁₀((TAA − TRT) / 10)
  • Chamber time = desired real time / AAF

Example. A two-year shelf-life claim, aged at 55 °C against an ambient of 25 °C with Q₁₀ = 2:

  • AAF = 8, and the chamber time is 730 / 8 = 91.25 days.
  • =ROUND() gives 91 days, so every sample is under-aged by six hours of chamber time: two days of real-time equivalent.
  • =ROUNDUP() gives 92, which is conservative.
  • If the formula has 22 °C typed inside it while your protocol says 25 °C, the AAF becomes 9.85 and the chamber time 74.1 days: seventeen days short of the protocol you signed.

The same template, reused at another temperature. Run the chamber at 50 °C and the correct AAF is 22.5 = 5.66, or 64.5 days per year. A sheet with the AAF typed as 8 gives 45.6 days per year, so every study is under-aged by 29 %.

Q₁₀ = 2 and TRT = 25 °C are typed constants that need a documented justification. ASTM F1980-21 advises keeping the ageing temperature at or below 60 °C, and expects real-time ageing to confirm accelerated results.

What NormXL checks: every rounding step on the path, with its direction, so your reviewer confirms that ageing durations round up · Q₁₀, TAA and TRT extracted into the Constant Ledger if they are typed into formulas · the calculation tested for TAA ≤ TRT, non-integer durations and the real-time follow-up schedule if present

TAA equal to TRT (AAF = 1) · TAA below TRT · Q₁₀ of 1 · durations producing exact half-days

Ageing: the rounding ruler and the AAF curve Left: a ruler from 90 to 93 days. 91.25 exact; ROUND → 91, False assurance: under-aged 6 h (≈ 2 days real time); ROUNDUP → 92, Intended decision: conservative. Right: the AAF curve at Q₁₀ = 2 from 25 to 65 °C with the points 35 °C → 2, 45 °C → 4, 55 °C → 8 and 60 °C → 11.3, a band above 60 °C labelled avoid (ASTM F1980-21), and a Finding: T_RT typed as 22 °C → AAF 9.85 → 74.1 days: 17 days short. 90919293days91.25 exactROUNDUP → 92Intended decision: conservativeROUND → 91False assurance: under-aged 6 h (≈ 2 days real time)avoid (ASTM F1980-21)0481216AAF2535455565°CQ₁₀ = 235 °C → 245 °C → 455 °C → 860 °C → 11.3FindingTRT typed as 22 °C → AAF 9.85 → 74.1 days: 17 days short Ageing: the rounding ruler and the AAF curve Left: a ruler from 90 to 93 days. 91.25 exact; ROUND → 91, False assurance: under-aged 6 h (≈ 2 days real time); ROUNDUP → 92, Intended decision: conservative. Right: the AAF curve at Q₁₀ = 2 from 25 to 65 °C with the points 35 °C → 2, 45 °C → 4, 55 °C → 8 and 60 °C → 11.3, a band above 60 °C labelled avoid (ASTM F1980-21), and a Finding: T_RT typed as 22 °C → AAF 9.85 → 74.1 days: 17 days short. 90919293daysROUNDUP → 92Intended decision: conservative91.25 exactROUND → 91False assurance: under-aged 6 h (≈ 2 daysreal time)avoid (ASTM F1980-21)0481216AAF2535455565°CQ₁₀ = 235 °C → 245 °C → 455 °C → 860 °C → 11.3FindingTRT typed as 22 °C → AAF 9.85 → 74.1 days:17 days short

Five traps your auditor can find in minutes

  • 1 · Display and binary rounding at the release decision. A Cpk of 1.3251 that displays as 1.33. A Cpk that is exactly 1.33 on paper and is held. NormXL tests every decision at its boundary and prints both operands to full precision.

  • 2 · Unlocked limits. Specification limits, Q₁₀ and conversion factors sit in unlocked cells, or worse, inside formulas. One keystroke changes a release criterion, and nothing changes colour. Excel's "Locked" format does nothing until sheet protection is switched on.

  • 3 · Constants without a source. 1.33, 1.645, 2, 25 and 6.89, typed into formulas. When the drawing, the protocol or the guideline changes, the literals stay.

  • 4 · Inputs that aren't numbers. "Retest", "SLIP" or "N/A" in a measurement column. AVERAGE and STDEV skip text silently and change n. A blank counts as zero in a "not more than" comparison, and text ranks above every number in a "not less than" one.

  • 5 · No cryptographic identity. Clause 4.2.5 requires records to stay legible, readily identifiable and retrievable, and your Notified Body will want to know which version of the release calculator released lot 24-117. A SHA-256 fingerprint in the Dossier identifies the exact validated file. On the Annual Register, a logic fingerprint also matches a completed lot workbook back to the validated template, even though it contains that lot's data.

We validate the calculator. Your eQMS keeps the record.

QA directors are rightly sceptical of anyone who claims a spreadsheet can be made "Part 11 compliant". A validation dossier cannot make it so, and NormXL does not try. The distinction that resolves the question is between two layers.

Layer A: the calculation template. An engineer opens the validated template, enters today's measurements and checks the result. Then they print a signed report, or transfer the verified output into your ERP, eQMS or LIMS. The spreadsheet is a calculator, and the record of truth lives in your QMS. This is what validation under Clauses 4.1.6, 7.5.6 and 7.6 covers, and NormXL qualifies it completely.

Layer B: the runtime record. Here the spreadsheet is itself the live primary record, edited over weeks, and every change needs an authenticated user, a reason and an append-only audit trail. That is the territory of runtime controls: 21 CFR Part 11 in the US and, for medicinal products, EU GMP Annex 11. A validated database, eQMS or LIMS handles it, not a spreadsheet tool. NormXL does not pretend otherwise, and the fit check on our home page will tell you before you buy.

  • Layer A: the calculator, validated, locked and sealed by NormXL
  • The signed output: your eQMS, your electronic signature or your wet-ink signature
  • Layer B: the spreadsheet as a live primary record. Not a job for any spreadsheet validator
Layer A and Layer BNormXL validates spreadsheets used as calculation templates whose signed output goes into the quality system's archive. Spreadsheets used as live multi-user primary records need a database system with authentication and audit trails instead.Layer A · calculation template validated · locked · SHA-256 seal record (NormXL)printed or exported, signed QMS archive / report registerLayer B · spreadsheet as live primary record needs per-user authentication · reason for change ·append-only audit trail eQMS · LIMS · validated database21 CFR Part 11 (US)EU GMP Annex 11 (medicinal products)the boundaryNormXL qualifies the calculator. Your QMS keeps the record.Layer A and Layer BNormXL validates spreadsheets used as calculation templates whose signed output goes into the quality system's archive. Spreadsheets used as live multi-user primary records need a database system with authentication and audit trails instead.Layer A · calculation template validated · locked ·SHA-256 seal record (NormXL)printed or exported,signed QMS archive / report registerthe boundaryLayer B · spreadsheet as liveprimary record needs per-user authentication ·reason for change ·append-only audit trail eQMS · LIMS · validated database21 CFR Part 11 (US)EU GMP Annex 11 (medicinal products)NormXL qualifies the calculator. Your QMS keepsthe record.

Who validates the validator?

You should list NormXL in your QMS software inventory and record a validation rationale proportionate to its risk, and that rationale is short. NormXL is a supporting tool whose every output can be checked independently. Each test vector in the Dossier prints:

  • the inputs;
  • the formula as written;
  • Excel's own cached value;
  • NormXL's value;
  • the difference.

A reviewer can check any of them with a calculator; your CSV engineer can re-verify a critical lot-release equation in half a minute before signing §7. Behind the vectors sit two further lines of evidence: two independent implementations agreeing on every cell, and a statistical engine benchmarked against NIST StRD certified values, with the engine version printed in every Dossier.

The principle is established. Safety-critical software standards require a tool to be qualified only where its output is not independently verified (DO-178C §12.2; ISO 26262-8, Clause 11). ISO/TR 80002-2 lets you scale the assurance of any QMS tool to its risk. European MedTech practice draws the same distinction between validating a tool and verifying its output. In your procedure, record NormXL as a supporting tool whose output is verified by review and spot calculation.

Who validates the validator? A row you can check by handOne row of the Dossier traced from inputs to formula, to Excel's stored value of 1.3299999999999794, to a hand calculation that gives exactly 1.33, showing that the hold decision is a boundary artefact any engineer can verify with a calculator.InputsC5 x̄ = 10.0001C6 s = 0.0100(typed from the SPCexport)Formula as written=MIN((10.04-C5)/(3*C6),(C5-9.96)/(3*C6))Excel's stored value1.3299999999999794→ G5 = HOLDYour calculator(10.04 − 10.0001)/ (3 × 0.0100)= 0.0399 / 0.03= 1.33What the Dossierrecordsdecision at theboundary: HOLD for avalue that is exactly1.33 on paperFalse holdAny engineer or auditor can re-check any row with a calculator in about 30 seconds. Trust rests on visible arithmetic, not on vendor claims.Tool-validation principleTool qualification needed only where output is not independently verified — DO-178C §12.2 · ISO 26262-8 Clause 11Scale assurance to risk — ISO/TR 80002-2Who validates the validator? A row you can check by handOne row of the Dossier traced from inputs to formula, to Excel's stored value of 1.3299999999999794, to a hand calculation that gives exactly 1.33, showing that the hold decision is a boundary artefact any engineer can verify with a calculator.InputsC5 x̄ = 10.0001C6 s = 0.0100(typed from the SPC export)Formula as written=MIN((10.04-C5)/(3*C6),(C5-9.96)/(3*C6))Excel's stored value1.3299999999999794 → G5 = HOLDYour calculator(10.04 − 10.0001) / (3 × 0.0100)= 0.0399 / 0.03 = 1.33What the Dossier recordsdecision at the boundary: HOLD for a value thatis exactly 1.33 on paperFalse holdAny engineer or auditor can re-check any row with acalculator in about 30 seconds. Trust rests on visiblearithmetic, not on vendor claims.Tool-validation principleTool qualification needed only where output is notindependently verified — DO-178C §12.2 ·ISO 26262-8 Clause 11Scale assurance to risk — ISO/TR 80002-2

Your tolerances and lot histories never leave your workstation

Tolerances, process windows and lot histories are some of the most valuable information a device manufacturer owns. Complaint workbooks can also hold personal data about patients and users. Uploading either to a cloud validation service creates three problems at once:

  • an intellectual-property exposure;
  • a GDPR processing relationship that needs a contract and an assessment;
  • a new supplier that Clause 7.4 requires you to evaluate, approve and monitor.

NormXL avoids all three. The engine runs inside your browser; the workbook is read into local memory and never transmitted. 0 KB of your workbook uploaded. We never receive your data, so we are not a processor of it, and there is no data-handling service to qualify. For cleanrooms and segregated networks, a single-file offline edition runs with no network connection at all.

The air gapThe NormXL engine runs inside the browser on the user's own computer. The workbook is fingerprinted and checked locally, and a dashed boundary shows that no workbook data is sent to the cloud or to an AI service.normxl.comNormXL engine · WebAssembly sandboxCpk_LotRelease_Sample.xlsxSHA-256recalculationSHA-256 · Dossier.pdf0 KB of your workbookno admin rightsworks offline after loadNetwork · 0 requests carrying workbook dataThe air gapThe NormXL engine runs inside the browser on the user's own computer. The workbook is fingerprinted and checked locally, and a dashed boundary shows that no workbook data is sent to the cloud or to an AI service.0 KB of your workbooknormxl.comNormXL engine · WebAssembly sandboxCpk_LotRelease_Sample.xlsxSHA-256recalculationSHA-256 · Dossier.pdfno admin rightsworks offline after loadNetwork ·0 requests carrying workbook data

From workbook to Dossier in about three minutes

  1. Drop the template. It is read locally, and its SHA-256 fingerprint is computed before anything else.
  2. NormXL classifies and recalculates. Every formula is classified by risk, rebuilt from its syntax tree, recomputed by the independent engine and compared with Excel's cached results.
  3. It attacks the boundaries. Vectors are generated at every release and acceptance limit, plus text, blanks, zeros and negatives in every input.
  4. It audits the structure. Locks, protection, display-versus-decision precision, buried specification limits, volatile functions and external links.
  5. You state the intended use. One sentence, the spreadsheet's effect on product conformity, confirmation of the detected acceptance criteria and your rounding rule, and the reviewer and approver names.
  6. You download, review and sign. PDF for the record and DOCX for your document control, 20+ pages, with the ISO 13485:2016 profile.
The three-minute timelineA true-scale timeline of about three minutes from dropping the workbook to downloading the Dossier. The engine works for the first ninety seconds, the user then answers the intended-use questions, and review and signature follow under the user's own procedure.ISO 13485:20160:00Drop · SHA-2560:05Parse & recalculate · 3 formula cells0:40Boundary & negative vectors1:10Structure audit1:30Intended use · your answers≈3:00Dossier ready · PDF + DOCXNormXL engine 0:00–1:30your answers and the download 1:30–≈3:00Then: review and sign under your procedure (typically 30–60 min)The three-minute timelineA true-scale timeline of about three minutes from dropping the workbook to downloading the Dossier. The engine works for the first ninety seconds, the user then answers the intended-use questions, and review and signature follow under the user's own procedure.ISO 13485:20160:00Drop · SHA-2560:05Parse & recalculate · 3 formula cells0:40Boundary & negative vectors1:10Structure audit1:30Intended use · your answers≈3:00Dossier ready · PDF + DOCXNormXL engine 0:00–1:30your answers and the download 1:30–≈3:00Then: review and sign under your procedure(typically 30–60 min)

About three minutes to the download, including your answers. Review and approval follow your own procedure, typically 30 to 60 minutes for a calculation template.

Order Your Device QMS Spreadsheet Dossier — €149 + VAT

100% in-browser · VAT invoice in your organisation’s name · For business customers

Every clause your auditor will raise, answered on paper

RequirementWhat the auditor looks forWhere the Dossier answers
4.1.6 / 7.5.6 / 7.6Validation of the application before initial use, proportionate to risk§1 User requirements (intended use, effect on product conformity) · §2 Risk & Traceability Matrix · §4 OQ test vectors
"As appropriate, after changes"Re-validation triggered by change§7 re-validation triggers · version log · Annual Register diff and re-validation
4.2.4 Control of documentsThe template in use is a controlled, identified versionSHA-256 fingerprint in every page header · §7 version log
4.2.5 Control of recordsValidation records are maintained and retrievablePDF and DOCX filed in your QMS, verifiable without NormXL
Decisions affecting product conformityAcceptance logic tested where decisions are made§5 Negative & boundary log · §6 display-versus-decision audit
Software identityWhich application and version produced the cached results§3 IQ: SHA-256, application and version that last saved the file
GAMP® 5 categorisationA defensible classification§2: Category 4, or towards Category 5 where VBA is present
7.4 (context)No new data-handling supplier introducedLocal-processing statement: 0 KB of workbook data transmitted
On-the-spot verificationEvidence the auditor can check during the auditApp. B Quick-Verify card: three hand-checkable vectors and re-hash instructions

NormXL produces evidence; your organisation approves it. The decision on any finding is always the auditor's. The Dossier is built to make that decision quick.

The sample Dossier uses the ISO/IEC 17020 profile; the ISO 13485 profile has the same structure, with the mapping above.

The 24-page Dossier, explodedThe eleven parts of the 24-page sample Dossier, from cover to assessor quick-verify card, with four pages enlarged: the constant ledger listing four unsourced values, a recalculated cell, two failed boundary tests and a lock map showing an unprotected calculation sheet. The cover status reads Not released.p1Cover & sealp2–3Executive summaryp4–5§1 URS & scopep6–7§2 Risk & traceabilityp8–11§3 IQ & formula inventoryp12–17§4 OQ dual-engine matrixp18–19§5 Negative & boundarylogp20–21§6 Precision & tamperauditp22§7 Release & versioncontrolp23App. A ISO 13485 clausecross-referencep24App. B Quick-Verify cardNot released: 3 red flags, 2 more findingsSHA-256 28a815ee…8ac260d1 · ISO/IEC 17020:2026 profileSHA-256 28a815ee…8ac260d1p8–11§3 IQ & formula inventory0.4 · Calc!G14 · source: ____1.5 · Calc!H22 · source: ____0.875 · Calc!H23 · source: ____0.1 · Calc!F30:F41 (12×) · source: ____SHA-256 28a815ee…8ac260d1p12–17§4 OQ dual-engine matrixCalc!G14 · =Inputs!C5*Inputs!C6/(2*(Inputs!C7*Inputs!C9*Inputs!C8+Inputs!C5*0.4)) · Excel 3.0053571428571431 ·NormXL 3.0053571428571431 · Δ 0SHA-256 28a815ee…8ac260d1p18–19§5 Negative & boundary logCML-04 · expected ACTION · actual NO ACTIONTest failedCML-07 "N/A" · expected REJECT · actual ACCEPTTest failedSHA-256 28a815ee…8ac260d1p20–21§6 Precision & tamper auditCalc: not protectedInputs!C9 · no data validationSample in the ISO/IEC 17020:2026 profile. Your chosen profile changes Appendix A and the clause references; the structure is identical.The 24-page Dossier, explodedThe eleven parts of the 24-page sample Dossier, from cover to assessor quick-verify card, with four pages enlarged: the constant ledger listing four unsourced values, a recalculated cell, two failed boundary tests and a lock map showing an unprotected calculation sheet. The cover status reads Not released.Not released: 3 red flags, 2 more findingsSHA-256 28a815ee…8ac260d1 ·ISO/IEC 17020:2026 profilep1Cover & sealp2–3Executivesummaryp4–5§1 URS & scopep6–7§2 Risk &traceabilityp8–11§3 IQ & formulainventoryp12–17§4 OQdual-enginematrixp18–19§5 Negative &boundary logp20–21§6 Precision &tamper auditp22§7 Release &version controlp23App. A ISO 13485clausecross-referencep24App. BQuick-VerifycardSHA-256 28a815ee…8ac260d1p8–11§3 IQ & formula inventory0.4 · Calc!G14 · source: ____1.5 · Calc!H22 · source: ____0.875 · Calc!H23 · source: ____0.1 · Calc!F30:F41 (12×) ·source: ____SHA-256 28a815ee…8ac260d1p12–17§4 OQ dual-engine matrixCalc!G14 ·=Inputs!C5*Inputs!C6/(2*(Inputs!C7*Inputs!C9*Inputs!C8+Inputs!C5*0.4))Excel 3.0053571428571431 ·NormXL 3.0053571428571431 · Δ 0SHA-256 28a815ee…8ac260d1p18–19§5 Negative & boundary logCML-04 · expected ACTION ·actual NO ACTIONTest failedCML-07 "N/A" · expected REJECT ·actual ACCEPTTest failedSHA-256 28a815ee…8ac260d1p20–21§6 Precision & tamper auditCalc: not protectedInputs!C9 · no data validationSample in the ISO/IEC 17020:2026 profile. Yourchosen profile changes Appendix A and the clausereferences; the structure is identical.
Order Your Device QMS Spreadsheet Dossier — €149 + VAT

100% in-browser · VAT invoice in your organisation’s name · For business customers

One audit, five regulators: MDSAP

The Medical Device Single Audit Program lets one audit against ISO 13485:2016, plus country-specific requirements, serve the regulators of Australia (TGA), Brazil (ANVISA), Canada (Health Canada), Japan (MHLW/PMDA) and the United States (FDA). Health Canada requires an MDSAP certificate for Class II–IV device licences, and the TGA uses MDSAP evidence in its conformity assessment. The UK's MHRA announced in June 2026 that it is moving to full MDSAP membership. Because the Dossier is mapped clause by clause to ISO 13485:2016, it serves the software-validation part of an MDSAP audit exactly as it serves a Notified Body audit. Country-specific requirements remain part of your wider QMS. Dates as published by each body at the time of writing.

Exporting to the United States? The same Dossier travels.

Since 2 February 2026, the FDA's Quality Management System Regulation (QMSR) has incorporated ISO 13485:2016 by reference, so a Dossier built for Clause 4.1.6 already speaks the language US investigators now use. Three QMSR-era details matter for spreadsheets:

  • Internal audit reports are no longer shielded. The former 21 CFR 820.180(c) exemption is gone, and under the current inspection programme (Compliance Program 7382.850) investigators can read internal audit findings. An open internal finding about unvalidated spreadsheets is visible at inspection.
  • Computer Software Assurance. The FDA's CSA guidance, finalised in September 2025, favours risk-based, recorded and automated assurance over screenshot-heavy scripts, the approach this Dossier takes.
  • If a Form 483 observation is issued, the FDA considers responses received within 15 business days before deciding on further action.

Investigators write spreadsheets into the record. Two recent FDA warning letters to drug manufacturers: "A non-validated Excel spreadsheet was utilized to calculate finished thyroid, USP API assay results" (May 2022) and "Your firm has not validated the Excel spreadsheet for its intended use of calculating the final concentration of benzalkonium chloride" (August 2025).

NormXL is built first for ISO 13485 and your Notified Body. US readiness comes with it.

Close the finding this month, or validate the whole release toolset this year

Single Dossier

€149 + VAT

one-time · per spreadsheet

The release calculator your auditor will sample, or the nonconformity your CAPA has to close.

  • 1 QMS or production spreadsheet (.xlsx or .xlsm)
  • Full Validation Dossier, 20+ pages, ISO 13485:2016 profile (Clauses 4.1.6, 7.5.6, 7.6): PDF + editable DOCX
  • Risk & Traceability Matrix, scaled to each calculation's role
  • Dual-engine recalculation; NIST StRD-benchmarked statistical functions
  • Boundary vectors at every release limit; display-versus-decision audit
  • Lock, protection and Constant Ledger audit
  • SHA-256 seal record for the exact file you validated
  • Generated and downloaded locally. Nothing stored on our servers
Validate 1 Spreadsheet · €149 + VAT
4 Single Dossiers = €596 + VAT

Annual Quality Register

€490 + VAT

per year · up to 20 spreadsheets

Four Single Dossiers cost €596 + VAT. The Register covers up to 20 for €490 + VAT.

The QA/RA lead who owns every spreadsheet in the QMS, and the systemic corrective action.

  • Up to 20 QMS and production spreadsheets in one version-controlled register
  • A full Validation Dossier for every spreadsheet
  • Re-validation after every change, with no per-change fee: what "as appropriate, after changes" looks like in practice
  • Version change-log diffing: exactly which formulas, specification limits, locks or validation rules changed
  • Audit-day integrity check: every seal re-verified in one report before the audit
  • All three compliance profiles
Start Annual Register · €490/year + VAT

External CSV support for a single lot-release spreadsheet typically costs €2,000–€5,000 and takes four to eight weeks; done in-house, it takes 30 to 40 hours of a specialist's time.

For business customers. All prices exclude VAT, GST and other local taxes, where applicable; they are added to your invoice.

Prices are in euro; your card issuer converts the amount.

FAQ

Excel is commercial software. The template your engineers built, with its formulas, limits, look-ups and decisions, is an application of that software, and Clauses 4.1.6, 7.5.6 and 7.6 all speak of validating "the application of computer software". The open question is never whether to validate such a template, but how much evidence its risk justifies.

No. Excel as installed is GAMP® 5 Category 3 and is used widely enough to be leveraged rather than re-tested. What you validate is your application of it: the template, its formulas and the decisions it makes.

It means the depth of validation follows the consequence of the spreadsheet being wrong. A sheet that releases implant lots gets scripted boundary tests at its release limits, full-precision checks and independent recalculation. A sheet that totals training hours gets an inventory and a documented rationale. The Dossier's §2 records that reasoning cell by cell, so you can explain it to your auditor in the terms of ISO/TR 80002-2 and ISO 14971.

Notified Bodies do not pre-approve validation tools or documents, and you should be wary of any vendor who implies otherwise. They audit whether your organisation validated its software adequately for its intended use, proportionate to risk, and can demonstrate it. The Dossier gives them evidence they can verify in minutes, partly by hand, without relying on NormXL. Reviewed and signed by your QA lead, it is your organisation's validation record. Validation is your act, not ours, and the decision is always the auditor's.

Yes. MDSAP audits against ISO 13485:2016 plus the specific requirements of the participating regulators. The Dossier's evidence and clause mapping are ISO 13485-based, so it serves the software-validation part of an MDSAP audit directly. Country-specific requirements, such as particular record or reporting obligations, remain part of your wider QMS.

Record it in your software inventory with a short, risk-based rationale. NormXL is a supporting tool whose output is independently verifiable: every vector prints inputs, formula, Excel's value, NormXL's value and the difference. Safety-critical software standards require tool qualification only where output is not independently verified (DO-178C §12.2; ISO 26262-8, Clause 11). The Dossier gives you the material for that rationale.

It covers installation qualification (identity, configuration, formula inventory) and operational qualification (independent recalculation, boundary and negative tests). Performance qualification shows that the template performs as intended in your actual process, with your users and your data. That remains yours, and the Dossier tells you so.

Those rules govern electronic records and signatures at runtime. If your template is a calculator whose output is printed and signed, or transferred to your eQMS, the record lives in your QMS (Layer A), and NormXL validates the calculator. If the spreadsheet itself is the live primary record (Layer B), you need a validated system with user authentication and audit trails, and no spreadsheet validator can provide that. Sign the Dossier the way you sign any other controlled record: through your eQMS with its electronic signatures, or with wet ink on the printed PDF.

Yes, on two levels. For the correction, the Dossier is objective evidence that the spreadsheet named in the finding is now validated, protected and identified. For the corrective action, the Annual Quality Register brings every release and test spreadsheet under the same control: register, validate, re-validate on change. That addresses the root cause, not just the one sheet the auditor opened.

It depends on where the limits live. If they sit in locked, labelled input cells that the formulas reference, a new revision is a controlled data change: assess it under change control, update the inputs and record it. If they are typed into formulas, the revision is a software change and you re-validate. On the Annual Register, the version diff shows exactly which cells changed.

It is quality-system evidence: the validation record required by Clauses 4.1.6, 7.5.6 or 7.6, maintained under 4.2.5 and presented during QMS audits. If the spreadsheet also supports design verification, for example test-data reduction for a verification report, reference the Dossier from that report so the reviewer can see that the calculation tool was validated.

VBA is analysed statically and never executed. The Dossier lists every module and flags what matters for validation:

  • silent On Error Resume Next;
  • auto-executing procedures;
  • external file access;
  • macros that calculate rather than format.

Solver results are static values. NormXL lists them as constants without a live calculation behind them, so you document the Solver run as a controlled input.

No. NormXL verifies that your spreadsheet computes its chosen method correctly and robustly. Whether Cpk is the right index for your process, whether the data are normal, and whether n = 30 is enough are statistical and engineering decisions, and they stay with your team.

NormXL never receives product data: the workbook is processed in the browser and 0 KB of it is transmitted. Your InfoSec team can verify this in the browser's network monitor in a minute, and the security note sets out the architecture for your supplier file.

Only for manufacturers who export. The Dossier is built around ISO 13485, EU MDR and IVDR Notified Body audits, UK Approved Body audits and MDSAP. Because the FDA's QMSR incorporates ISO 13485:2016 by reference, the same Dossier also serves US exporters, at no extra cost and with no extra steps. If you never sell in the US, you can ignore that panel.

Validate the spreadsheet that releases your product, before your auditor samples it.

The Cpk calculator. The ageing protocol. The burst-test evaluation. About three minutes, inside your browser, with 0 KB of your workbook uploaded, and a signed validation record that answers Clauses 4.1.6 and 7.5.6 on paper.

Order Your Device QMS Spreadsheet Dossier — €149 + VAT Download Sample 24-Page Dossier (PDF)

No installation · No admin rights · 0 KB of your workbook uploaded · VAT invoice in your organisation's name

Order Dossier · €149 + VAT
Pre-release · NormXL 7.0

Complete Your Order

Spreadsheet Validation Dossier · generated in your browser · 0 KB of your workbook uploaded

For business customers

Package Choice
4 Single Dossiers = €596 + VAT

As it should appear on your invoice.

Printed on the cover of your Dossier and on your VAT invoice.

Your order confirmation and release notification are sent here.

Sets the clause references and terminology in your Dossier, at no extra cost. The Annual Register includes all three profiles; choose the one you will use first.

100% In-Browser. No card charged during pre-release qualification.

Your spreadsheet is not part of this form. It is only ever read inside your browser.

Questions before you order? Read the FAQ or the Security & 0 KB Upload page. Both open in a new tab, and this form keeps what you have entered.