Blog
Back to Blog

qPCR Efficiency Between 90-110%: What the Numbers Actually Mean

A qPCR efficiency of 100% means your template doubles every cycle. The accepted range of 90-110% corresponds to a standard curve slope between -3.58 and -3.10, and it's the window where the ΔΔCt method (Livak & Schmittgen, 2001) holds up without correction. Outside that range, small differences in efficiency between your target and reference gene compound over 20+ cycles and quietly wreck your fold-change calculations.

But "90-110%" gets thrown around like a pass/fail checkbox, and most people never think about what those boundaries actually represent — or what it means when they land at 87% or 115%. So let's break down the math, the biology, and the practical decisions you need to make when your numbers aren't textbook perfect.

The math behind efficiency

Efficiency is calculated from a standard curve — a serial dilution (typically 5-6 points of a 1:5 or 1:10 dilution series) plotted as Ct vs. log₁₀(template amount). The slope of that line gives you efficiency via this formula:

E = 10^(−1/slope) − 1

A perfect doubling every cycle gives a slope of exactly -3.322 (for log₁₀), which corresponds to E = 1.0, or 100%. Here's how the range maps out:

Efficiency Slope Amplification factor per cycle
110% -3.10 2.10
100% -3.32 2.00
95% -3.45 1.95
90% -3.58 1.90
80% -3.80 1.80

At 100% efficiency, a 10-fold dilution shifts the Ct by exactly 3.32 cycles. At 90%, that same dilution shifts the Ct by 3.58 cycles — the reaction is sluggish, needing more cycles to reach the same fluorescence threshold. At 110%, the shift is only 3.10 cycles — which seems like the reaction is more than doubling, which is physically impossible for a single-copy amplicon.

So what's going on above 100%?

Why efficiency exceeds 100% (and why it doesn't actually mean super-doubling)

An efficiency above 100% almost never means your polymerase is somehow synthesizing more than one copy per template per cycle. It means something in your assay is causing the apparent Ct to shift in a way that compresses the standard curve slope. Common causes:

Efficiencies of 101-105% are usually just noise from pipetting variance and are nothing to worry about. Above 110%, you likely have an inhibition or pipetting problem that needs troubleshooting before you trust your quantification.

Why 90% is the floor (and when it matters less)

Below 90% efficiency, the reaction is leaving ~10% or more of the template un-copied each cycle. Over a typical qPCR run, this compounds. Consider two genes — your target at 92% efficiency and your reference at 100%. After 25 cycles:

That's almost a 2-fold difference in accumulated product, arising purely from an 8-percentage-point efficiency gap — not from any biological difference in expression. If you're using ΔΔCt without correction, that error goes straight into your fold-change.

Common causes of low efficiency:

When low efficiency is tolerable: If your target and reference gene efficiencies are matched (both at, say, 88%), the ΔΔCt method still works reasonably well because the errors cancel in the subtraction. What kills you is a mismatch. A target at 88% and a reference at 101% is a bigger problem than both sitting at 88%.

Alternatively, you can use the Pfaffl method (Pfaffl, 2001), which explicitly incorporates gene-specific efficiencies into the fold-change calculation:

Ratio = (E_target)^ΔCt_target / (E_ref)^ΔCt_ref

This corrects for efficiency differences and is the right call when you can't get both assays into the 90-110% window or when they're more than ~5 percentage points apart.

How to run a proper standard curve

This sounds basic, but I've reviewed a lot of standard curve data that was doomed from the start. A few things that actually matter:

  1. Use at least 5 dilution points. Four can technically give you a line, but your R² will be inflated and you won't catch nonlinearity. Six points of a 1:5 series covers a 3,125-fold range — that's plenty for most assays.
  2. Dilute in a relevant matrix. If you're quantifying cDNA, dilute your standard in cDNA from a sample (or at least in carrier RNA/TE buffer), not in pure water. Adsorption of template to plastic at very low concentrations can tank your last dilution point.
  3. Run duplicates or triplicates of each dilution. If your replicate Ct SD exceeds 0.5 at any dilution point, something's wrong with your pipetting or your template is inconsistent.
  4. Inspect the most concentrated and most dilute points. The concentrated point may show inhibition (pulling efficiency above 100%); the dilute point may sit in the stochastic zone where you're loading <10 copies per well. Either can skew your slope. It's legitimate to exclude a point and recalculate, but document why.
  5. R² should be ≥ 0.98. Below that, your data points aren't following a linear relationship, and the efficiency value isn't trustworthy regardless of what it says.

On a CFX96 or QuantStudio, the software calculates this automatically. On a LightCycler 480, double-check that the software is using the correct log base — it's a common source of confusion when comparing efficiency values across platforms.

What to do when efficiency is outside the range

If your efficiency is consistently outside 90-110% after careful standard curve work, here's a practical decision tree:

Efficiency > 110%:

Efficiency < 90%:

Efficiency is fine for the target but not the reference (or vice versa):

A worked example

You're comparing FOXP3 expression in Tregs vs. naive T cells, normalized to HPRT1.

Efficiency difference: 2.5 percentage points. Over a ΔCt of, say, 8 cycles, the Pfaffl correction would give you:

Ratio = (1.963)^8 / (1.988)^8 = 173.3 / 204.0 = 0.85

Compared to the uncorrected ΔΔCt assumption (both at 100%): 2⁸ / 2⁸ = 1.0.

That's a 15% error — meaningful if you're reporting a 1.5-fold change, less so if you're seeing a 10-fold difference. For small fold-changes (< 2-fold), match your efficiencies tightly or use Pfaffl. For large fold-changes, the error from a few percentage points of efficiency mismatch usually doesn't change your conclusions.

Don't hand-wave the efficiency check

It's tempting to run a standard curve once during assay optimization, confirm it's in range, and never look at it again. That works until your reagent lot changes, your cDNA synthesis protocol drifts, or someone in the lab starts using a different RNA extraction kit. Re-validate efficiency periodically — every new batch of cDNA at minimum — especially for quantitative claims going into a paper.

If running standard curves for every experiment sounds tedious, VoilaPCR flags efficiency mismatches and applies the appropriate correction automatically when you upload your raw data, so you can catch problems without manually re-plotting slopes every time.