qPCR Efficiency Calculator: ΔΔCt and Pfaffl
Analyze Ct replicates with ΔΔCt and Pfaffl, geometric reference-gene normalization and propagated error. Fit standard-curve efficiency and calculate DNA copy numbers.
Use this qPCR efficiency calculator to turn technical Ct replicates into normalized expression changes and to check a dilution-series standard curve. It is intended for students, laboratory researchers and engineers working with PCR measurements. Ct, Cq and crossing point describe the cycle at which a reaction reaches a chosen fluorescence threshold.
Start with one biological sample and a calibrator, such as an untreated control. Choose two or three technical replicates per assay, then enter detected Ct values for the target and each reference gene. Up to three validated reference genes can be included. The calculator averages technical Ct values within each assay before normalization; it does not pair separate target and reference wells.
The delta delta Ct calculation compares the target-minus-reference Ct difference between sample and calibrator. Its fold result assumes every assay doubles in each cycle. The Pfaffl method uses the measured amplification factor of each assay instead. Results above one indicate higher normalized expression in the sample; values below one indicate lower expression. Multiple references contribute through the geometric mean of their relative quantities. Averaging reference Ct differences gives the same normalization when the reference assays share a common amplification factor. Using base two additionally assumes that amplification doubles each cycle.
For efficiency, enter mean Ct at three to five successive serial dilutions, ordered from highest to lowest concentration. The fitted line uses Ct against log₁₀ copies per reaction. Its slope gives the amplification factor and percentage efficiency; the plot, residuals, slope standard error and R² help assess the fit. Select whether to use this slope for the expression target or enter a separately measured slope. Enter reference slopes from their own calibration experiments.
For DNA standards, supply stock concentration, the full double-stranded molecule length, template volume and stock pre-dilution. A plasmid requires its entire length, including the insert. Alternatively, enter known copies in the highest standard. The standard table lists copies at every dilution. Sample and calibrator copy estimates use the fitted target curve and assume the standards and samples amplify comparably.
The comparison table includes propagated standard errors and asymmetric limits of plus or minus one standard error in log fold change. These limits describe technical measurement precision, not a 95% confidence interval or a significance test. Optional slope standard errors add efficiency uncertainty to Pfaffl propagation; zero omits that contribution. Both sample and calibrator Ct uncertainty are included.
Press play to reveal an illustrative amplification trace and its threshold crossing. These curves explain why earlier Ct corresponds to more starting template; they are not fitted instrument fluorescence.
Review specificity, melt curves, inhibition, reference-gene stability and negative controls separately, following MIQE reporting principles. Do not replace undetermined wells with zero or a cycle cutoff. This tool does not perform baseline correction, outlier rejection, reference-gene selection, biological group statistics, RNA reverse-transcription correction or clinical interpretation.
How it is calculated
Technical Ct replicates are averaged within each assay; their sample SD gives variance of the mean . Livak and Schmittgen (2001, sections 1.1 and 1.4) motivate the separate-well calculation. Define and reference genes. Then and . Pfaffl (2001, attached s2, p. 3) supplies the efficiency-corrected ratio; here it is extended using the geometric normalization described by Vandesompele (2002, s3, p. 4): . The reference normalization factor is the geometric mean of . When all reference assays have the same factor , this equals ; choosing base two adds the assumption .
The standard regression is unweighted least squares on mean Ct against log₁₀ copies/reaction: . Amplification factor and efficiency follow MIQE 2009 (s4, p. 8). Slope SE is residual SD divided by , with levels minus two degrees of freedom.
Uncertainty is derived here by first-order propagation of independent variables. For each Ct deviation . Thus . For a slope SE , . Pfaffl log variance is . Fold SE is ; displayed asymmetric limits are .
For dsDNA, IDT gives an approximate 660 g/mol per base pair. Divide mass concentration by whole-molecule molar mass and multiply by Avogadro's constant; apply template volume and pre-dilution for copies/reaction. A known-copy entry can replace the mass estimate. Absolute sample copies follow .
Assumptions
One biological sample and a distinct calibrator; two or three technical replicates in independent wells for every active assay, with the same replicate count. Reference genes are already validated as stable and equally weighted. No target/reference covariance, inter-assay covariance or Ct/slope covariance is modeled. Fitted target slope uncertainty uses the residual scatter of dilution-level means; it excludes dilution-concentration error. Entered slope SE of zero fixes that efficiency. Standard copy numbers assume pure dsDNA, average base-pair molar mass, one target site per full molecule and accurate concentration, volume and dilution. Those preparation uncertainties are not propagated. Default Ct values are an original illustrative dataset, not experimental measurements. The animation is an original logistic illustration, with relative threshold 0.2 and no fitted fluorescence data.
Where it applies
For detected quantitative Ct values (inputs 1–45), negative slopes from −20 to −1.5, three to five equally spaced serial dilutions, and one to three reference genes. The bounds are numerical operating limits, not assay acceptance limits. ΔΔCt assumes all amplification factors are approximately two; Pfaffl requires stable measured efficiencies across sample and calibrator. A 90–110% efficiency range, R² ≥0.98 and Ct SD ≤0.5 are screening prompts chosen for this tool, not proof of MIQE compliance or universal pass/fail criteria. R² does not establish specificity or lack of inhibition. Technical SE limits are not biological confidence intervals. Correlated multiplex measurements, a sample compared with itself, undetermined wells, group hypothesis tests, extraction/RT efficiency and low-copy Poisson modeling are outside scope. Standard copy interpolation needs samples bracketed by validated standards. Do not use the animation to infer instrument signal or a diagnostic conclusion. Uncertainty propagation is blocked when any fitted or entered calibration slope SE exceeds 20% of its magnitude, or either Pfaffl log-fold limit exceeds ±700. Exponent guards keep invalid-input previews finite; these guarded values are not reportable results.
References
- Livak KJ, Schmittgen TD (2001). Analysis of relative gene expression data using real-time quantitative PCR and the 2−ΔΔCt method. Methods 25:402–408. https://doi.org/10.1006/meth.2001.1262
- Pfaffl MW (2001). A new mathematical model for relative quantification in real-time RT-PCR. Nucleic Acids Research 29:e45. https://doi.org/10.1093/nar/29.9.e45 (attached s2, pp. 3–5).
- Vandesompele J et al. (2002). Accurate normalization of real-time quantitative RT-PCR data by geometric averaging of multiple internal control genes. Genome Biology 3:research0034. https://doi.org/10.1186/gb-2002-3-7-research0034 (attached s3, p. 4).
- Bustin SA et al. (2009). The MIQE guidelines. Clinical Chemistry 55:611–622. https://doi.org/10.1373/clinchem.2008.112797 (attached s4, p. 8).
- IDT (updated 2024). Calculations: Converting from nanograms to copy number. https://sg2.idtdna.com/page/support-and-education/decoded-plus/calculations-converting-from-nanograms-to-copy-number/
Inputs
| Input | Symbol | Unit | Default |
|---|---|---|---|
| Reference genes Use one to three reference genes validated as stable for your samples. Equal weight geometric normalization. | n_ref | 2 | |
| Technical replicates per assay and sample Enter two or three detected Ct values for every active assay in both samples. Analyze one biological sample against one calibrator. Do not enter undetermined wells as zero. | n_rep | 3 | |
| Ct · replicate 1 Detected quantification cycle (Ct/Cq), a dimensionless cycle count. | ts1 | 23 | |
| Ct · replicate 2 Detected quantification cycle (Ct/Cq), a dimensionless cycle count. | ts2 | 22.9 | |
| Ct · replicate 3 Detected quantification cycle (Ct/Cq), a dimensionless cycle count. | ts3 | 23.1 | |
| Ct · replicate 1 Detected quantification cycle (Ct/Cq), a dimensionless cycle count. | tc1 | 25.2 | |
| Ct · replicate 2 Detected quantification cycle (Ct/Cq), a dimensionless cycle count. | tc2 | 25.099999999999998 | |
| Ct · replicate 3 Detected quantification cycle (Ct/Cq), a dimensionless cycle count. | tc3 | 25.3 | |
| Ct · replicate 1 Detected quantification cycle (Ct/Cq), a dimensionless cycle count. | r1s1 | 19.9 | |
| Ct · replicate 2 Detected quantification cycle (Ct/Cq), a dimensionless cycle count. | r1s2 | 19.799999999999997 | |
| Ct · replicate 3 Detected quantification cycle (Ct/Cq), a dimensionless cycle count. | r1s3 | 20 | |
| Ct · replicate 1 Detected quantification cycle (Ct/Cq), a dimensionless cycle count. | r1c1 | 19.7 | |
| Ct · replicate 2 Detected quantification cycle (Ct/Cq), a dimensionless cycle count. | r1c2 | 19.599999999999998 | |
| Ct · replicate 3 Detected quantification cycle (Ct/Cq), a dimensionless cycle count. | r1c3 | 19.8 | |
| Ct · replicate 1 Detected quantification cycle (Ct/Cq), a dimensionless cycle count. | r2s1 | 21.1 | |
| Ct · replicate 2 Detected quantification cycle (Ct/Cq), a dimensionless cycle count. | r2s2 | 21 | |
| Ct · replicate 3 Detected quantification cycle (Ct/Cq), a dimensionless cycle count. | r2s3 | 21.200000000000003 | |
| Ct · replicate 1 Detected quantification cycle (Ct/Cq), a dimensionless cycle count. | r2c1 | 20.9 | |
| Ct · replicate 2 Detected quantification cycle (Ct/Cq), a dimensionless cycle count. | r2c2 | 20.799999999999997 | |
| Ct · replicate 3 Detected quantification cycle (Ct/Cq), a dimensionless cycle count. | r2c3 | 21 | |
| Ct · replicate 1 Detected quantification cycle (Ct/Cq), a dimensionless cycle count. | r3s1 | 22.2 | |
| Ct · replicate 2 Detected quantification cycle (Ct/Cq), a dimensionless cycle count. | r3s2 | 22.099999999999998 | |
| Ct · replicate 3 Detected quantification cycle (Ct/Cq), a dimensionless cycle count. | r3s3 | 22.3 | |
| Ct · replicate 1 Detected quantification cycle (Ct/Cq), a dimensionless cycle count. | r3c1 | 22 | |
| Ct · replicate 2 Detected quantification cycle (Ct/Cq), a dimensionless cycle count. | r3c2 | 21.9 | |
| Ct · replicate 3 Detected quantification cycle (Ct/Cq), a dimensionless cycle count. | r3c3 | 22.1 | |
| Use fitted standard curve for target efficiency Off: enter the target slope measured in a separate standard curve. Reference slopes are always entered separately. | fit_target | true | |
| Target slope · Ct vs log₁₀(quantity) | m_target | -3.4 | |
| Target slope standard error Use the regression slope SE. Zero treats efficiency as fixed and omits this uncertainty. | se_target | 0 | |
| Reference 1 slope · Ct vs log₁₀(quantity) | m_r1 | -3.4 | |
| Reference 1 slope standard error Zero treats this assay efficiency as fixed. Otherwise enter the regression slope SE. | se_r1 | 0 | |
| Reference 2 slope · Ct vs log₁₀(quantity) | m_r2 | -3.32 | |
| Reference 2 slope standard error Zero treats this assay efficiency as fixed. Otherwise enter the regression slope SE. | se_r2 | 0 | |
| Reference 3 slope · Ct vs log₁₀(quantity) | m_r3 | -3.4 | |
| Reference 3 slope standard error Zero treats this assay efficiency as fixed. Otherwise enter the regression slope SE. | se_r3 | 0 | |
| Standard dilution levels Three to five equally spaced serial dilution levels, from most to least concentrated. Enter mean Ct values; every level has equal regression weight. | n_std | 5 | |
| Serial dilution factor Ten means each level contains one tenth of the preceding level. | dilution | 10 | |
| Level 1 mean Ct | ct_std1 | 18.02 | |
| Level 2 mean Ct | ct_std2 | 21.37 | |
| Level 3 mean Ct | ct_std3 | 24.83 | |
| Level 4 mean Ct | ct_std4 | 28.18 | |
| Level 5 mean Ct | ct_std5 | 31.62 | |
| Most concentrated standard quantity | copy_basis | Calculate from dsDNA stock mass | |
| Stock dsDNA mass concentration Concentration of the stock before the pre-dilution. Use purified double-stranded DNA. | c_dna | ng/uL | 1 |
| Whole standard molecule length (bp) For a plasmid use the whole plasmid plus insert length, not just the amplicon length. Assumes one target site per molecule. | L_dna | 3000 | |
| Template volume per reaction | v_template | uL | 1 |
| Stock pre-dilution factor Total fold dilution of stock to level 1. For a 1:1000 dilution enter 1000. | pre_dilution | 1000 | |
| Level 1 copies per reaction | copies_top | 1000000 | |
| Amplification cycle · ▶ Play to reveal schematic target sample and calibrator fluorescence curves. Cycles illustrate threshold crossing, not recorded instrument fluorescence. | cycle | 29 |
Results
With the default inputs above, the calc gives:
| Result | Value |
|---|---|
| ΔΔCt fold · sample/calibrator | 5.278 |
| Pfaffl fold · sample/calibrator | 5.0863 |
| ΔΔCt fold standard error · first order | 0.366 |
| Pfaffl fold standard error · first order | 0.346 |
| Fitted standard-curve efficiency (%) | 96.803 |
| Fitted standard-curve slope | -3.401 |
| Standard-curve R² | 0.99997 |
| Target sample copies/reaction · from curve | 10,316.1569 |
| Target calibrator copies/reaction · from curve | 2,326.2124 |
| Level 1 standard copies per reaction | 304,148.52323 |
Checked against sources
Each case below was calculated by this calc and agrees with the value from its source (within the tolerance where one is shown).
Pfaffl Table 3 · TyrA up-regulation
Source: Pfaffl 2001, doi:10.1093/nar/29.9.e45, Tables 2–3, high input 100% row. Published Ct means entered twice to test the central result only; fabricated individual wells are not claimed. Slopes encode the published factors 2.09 and 1.99. Printed inputs give 58.5921 versus printed 58.625 (0.056% difference, consistent with rounding); retain the equation and allow 0.1% tolerance.
Inputs: Use fitted standard curve for target efficiency = no; Reference genes = 1; Technical replicates per assay and sample = 2; Target slope · Ct vs log₁₀(quantity) = -3.124; Reference 1 slope · Ct vs log₁₀(quantity) = -3.346; Ct · replicate 1 = 15.02; Ct · replicate 2 = 15.02; Ct · replicate 1 = 20.303; Ct · replicate 2 = 20.303; Ct · replicate 1 = 14.533; Ct · replicate 2 = 14.533; Ct · replicate 1 = 14.277; Ct · replicate 2 = 14.277; the others as above.
| Result | Source | This calc |
|---|---|---|
| Pfaffl fold · sample/calibrator | 58.625 | 58.592 |
Pfaffl Table 3 · PyrB down-regulation
Source: Pfaffl 2001, doi:10.1093/nar/29.9.e45, Tables 2–3, high input 100% row. Reported means entered twice; this verifies the ratio, not published replicate uncertainty. Slopes are converted from reported factors 2.16 and 1.99.
Inputs: Use fitted standard curve for target efficiency = no; Reference genes = 1; Technical replicates per assay and sample = 2; Target slope · Ct vs log₁₀(quantity) = -2.99; Reference 1 slope · Ct vs log₁₀(quantity) = -3.346; Ct · replicate 1 = 16.031; Ct · replicate 2 = 16.031; Ct · replicate 1 = 11.72; Ct · replicate 2 = 11.72; Ct · replicate 1 = 14.533; Ct · replicate 2 = 14.533; Ct · replicate 1 = 14.277; Ct · replicate 2 = 14.277; the others as above.
| Result | Source | This calc |
|---|---|---|
| Pfaffl fold · sample/calibrator | 0.04312 | 0.04312 |
Published TyrA standard slope and amplification factor
Source: Pfaffl 2001 Figure 1 slope −3.122 gives the reported rounded TyrA factor 2.09. Figure slope also reproduced in the author's habilitation, Figure 13: https://www.gene-quantification.de/habilitation-pfaffl-livestock-transcriptomics.pdf . Tolerance permits the paper's factor rounding.
Inputs: Use fitted standard curve for target efficiency = no; Target slope · Ct vs log₁₀(quantity) = -3.122; the others as above.
| Result | Source | This calc |
|---|---|---|
| Target amplification factor | 2.09 | 2.091 |
Livak Table 1 · kidney relative to brain
Source: Livak and Schmittgen 2001, doi:10.1006/meth.2001.1262, Table 1 (printed p. 405). Published mean Ct: kidney c-myc 27.03, GAPDH 22.66; brain c-myc 30.49, GAPDH 23.63; normalized kidney amount 5.6. Means are duplicated for central-value checking only, not a reconstruction of six raw replicates. Rounded means yield ΔΔCt −2.49 and fold 5.618, within the printed one-decimal result. The paper's printed ΔΔCt −2.50 uses unrounded means. https://www.gene-quantification.de/livak-2001.pdf
Inputs: Use fitted standard curve for target efficiency = no; Reference genes = 1; Technical replicates per assay and sample = 2; Target slope · Ct vs log₁₀(quantity) = -3.322; Reference 1 slope · Ct vs log₁₀(quantity) = -3.322; Ct · replicate 1 = 27.03; Ct · replicate 2 = 27.03; Ct · replicate 1 = 30.49; Ct · replicate 2 = 30.49; Ct · replicate 1 = 22.66; Ct · replicate 2 = 22.66; Ct · replicate 1 = 23.63; Ct · replicate 2 = 23.63; the others as above.
| Result | Source | This calc |
|---|---|---|
| ΔΔCt fold · sample/calibrator | 5.6 ± 0.05 | 5.618 |
| Pfaffl fold · sample/calibrator | 5.6 ± 0.05 | 5.618 |







Responses