ConductScience qPCR ΔΔCt Calculator: method and validation record
The calculation behind ConductScience's free qPCR ΔΔCt calculator, with three worked examples that check it.
ConductScience
- Published
- September 28, 2026
- Version
- 1.0.0
- Files
- 11 release files
About this dataset
Overview
Method and validation record for the free qPCR ΔΔCt Calculator at conductscience.com/tools/qpcr-ddct-calculator. From Ct values for target and reference genes, the tool computes ΔCt, ΔΔCt against the mean of the control samples, the fold change 2^−ΔΔCt and the log2 fold change, after dropping outlying replicates. Three hand-worked examples, following the 2^−ΔΔCt method of Livak and Schmittgen (2001), cover a fourfold increase, a control sample that returns a fold change of 1, and a stray replicate dropped by the Tukey fence before averaging. The record holds the calculation source files, the worked examples, a validation report with each file's SHA-256, and what changed on the tool page when the record was written.
Inspect before download
Data preview
cases.csv · first 3 rows
| id | title | source_type | expected | pass |
|---|---|---|---|---|
| hand-worked-fourfold | Treated sample expresses the target gene four times the control | hand-worked | {"ddct":-2,"foldChange":4,"log2fc":2,"outliersRemoved":0} | true |
| hand-worked-control-is-one | The control sample compared with the control mean gives a fold change of 1 | hand-worked | {"ddct":0,"foldChange":1,"log2fc":0,"outliersRemoved":0} | true |
| edge-outlier-replicate | A stray replicate is dropped by the Tukey fence before averaging | hand-worked | {"ddct":-2,"foldChange":4,"log2fc":2,"outliersRemoved":1} | true |
Read the columns
Data dictionary
cases.csvOne row per worked example.7 entries
| Name | Type | Units or values | Meaning |
|---|---|---|---|
| id | string | e.g. hand-worked-fourfold | Case identifier; edge cases start with "edge-" |
| title | string | What the case checks | |
| source_type | string | hand-worked | Where the expected answer comes from: published, hand-worked, analytic or cross-check |
| citation | string | Source of the method or the expected answer | |
| locator | string | Section, formula or table of the source that the case relies on | |
| expected | JSON object | null: not computable | Expected outputs as JSON; null means not computable |
| pass | boolean | true, false | true when every expected output matched the engine within the stated tolerance |
cases.json
The worked examples in full: inputs, expected outputs, tolerances, source passage and the arithmetic behind each expected answer.
validation-report.json
The engine's output for every case, pass or fail, with the byte count and SHA-256 of each calculation and harness file.
engine/pilot-tools.ts
Harness source (MIT). Slugs of the ten tools with validation records; the check accepts only these.
engine/qpcr/calculator.ts
Calculation source (MIT). ΔCt, ΔΔCt and fold change (2^−ΔΔCt), with replicate outlier removal by the Tukey fence.
engine/qpcr/types.ts
Calculation source (MIT). Types for Ct entries, settings and results.
engine/validation/run.ts
Harness source (MIT). Runs one case: passes its inputs to the tool's adapter and compares each output with the expected value within the tolerance.
engine/validation/tools/qpcr-ddct-calculator.ts
Harness source (MIT). Adapter from a case's inputs to this tool's calculation, returning the outputs the cases check.
engine/validation/types.ts
Harness source (MIT). Types for cases, tolerances and results.
Files
tool-qpcr-ddct-calculator-record-1.0.0.zip
15.7 kBComplete frozen release: 15 source-manifest files plus MANIFEST.json.
SHA-256 82412f0d05ff85844c60aeda5e1d5d72d92f18976cfcc7e05f044de828f56d6b
cases.csv
1.2 kBThe worked examples, one row each: what the case checks, the source of the expected answer, the expected outputs and whether the engine matched them.
SHA-256 1e9544a6df324a7cb081bdd7b84f8bb11068f58b604229ad51a690d380db0e4c
cases.json
5.4 kBThe worked examples in full: inputs, expected outputs, tolerances, source passage and the arithmetic behind each expected answer.
SHA-256 e4959593628f6a01bbcdbc7fad9703883e87aa3aac27276b618a057ec3cf5189
validation-report.json
1.9 kBThe engine's output for every case, pass or fail, with the byte count and SHA-256 of each calculation and harness file.
SHA-256 373eb8e1934d60c5abf21b0a719589fc3bcd4fd8b80e80d047cbb02deb8b2e83
data_dictionary.csv
472 bytesColumns of cases.csv.
SHA-256 96b57ee5185ffcccc5397d98673c42bbc53ff77cc7f676fe5789ef04a7648090
README.md
1.7 kBWhat the tool computes, the files, and how to cite the record.
SHA-256 8cf988926b508edbfb22ff589d01b9af926297da8bca5ec563f7171fcbbbeb68
METHODS.md
2.6 kBFormulas, input rules, conventions, references and what changed on the tool page.
SHA-256 7d6f734f68ad50aa6963ab242f208c960e5a30a341b16dcffa2b6fa8c7de9ef4
MANIFEST.json
2.3 kBByte count and SHA-256 for every file in the source release.
SHA-256 42d4445835fcc1634bc6693086a624e0d3ab78c5572c83a068edf9d1e432673a
CITATION.cff
408 bytesCitation metadata.
SHA-256 5a4f08b14a114cee3fab845e37e71b3d34924e0190419ef65bed181f5f9a0fba
LICENSE
1.3 kBMIT License for the calculation source files; CC BY 4.0 for everything else.
SHA-256 d2dca2297cc985f3577b9376fbf5a72231ac88be401776098486f6d1e8a4d87a
deposit-receipt.json
3.0 kBConductScience verification and packaging receipt.
SHA-256 56d5a1a07811ab27c2daba046668b78eab1280ce6a6a8a3ce9004517b42ca52c
How it was made
Methods
- 1
Worked examples: each of the three cases gives its inputs, the expected outputs, the source and passage behind the expected answer, and the arithmetic. Expected answers are worked by hand from the published method, or from the tool's own rule where METHODS.md labels it a convention. Cases whose ids start with edge- test inputs at the limits of the method.
- 2
Check: each case was run in Node.js 24 through the tool's calculation source files, and every output was compared with its expected value, exactly or within the tolerance the case states. All three cases pass (validation-report.json), and ConductScience's test suite runs the same cases whenever the tool changes.
- 3
Fingerprint: the validation report gives the byte count and SHA-256 of each calculation file and of the files that ran the check, and engine/ holds those files, so anyone can rerun the cases and tell whether a later version of the calculation differs from this one.
Version history
Version 1.0.0 · current
Published September 28, 2026 from source tag v1.0.0 at commit 90d2cc9009f9.