Blog
Back to Blog

How Many Cycles Should I Run for Gene Expression qPCR?

Run 40 cycles. That's the standard for gene expression qPCR, and it's the right answer for the vast majority of experiments. Whether you're quantifying GAPDH relative to a treatment gene on a CFX96 or running a TaqMan panel on a QuantStudio 7, 40 cycles gives you enough dynamic range to detect low-abundance transcripts while keeping run times reasonable (~70-90 minutes depending on your block and chemistry).

But "40 cycles" is one of those defaults that people accept without thinking about why — and that lack of understanding causes real problems when interpreting late-Ct data, setting expression thresholds, or deciding whether a Ct of 37 means something or nothing. So let's get into the reasoning, because it actually matters for how you analyze your results.

Why 40 Cycles Became the Default

The logic is simple math. A well-designed qPCR assay targeting a moderately expressed gene (say, HPRT1 in most cell lines) will cross threshold somewhere around Ct 18-22 from 100 ng of cDNA input. A low-abundance target — a cytokine in unstimulated cells, a transcription factor in a minor cell population — might not cross until Ct 32-35. You need enough cycles to catch those late amplifiers.

At 100% efficiency, each cycle doubles your product. Starting from a single copy of template, you'd theoretically reach detectable fluorescence around cycle 35-38, depending on your instrument's optics and your background fluorescence. So 40 cycles gives you a small buffer beyond the theoretical single-copy detection limit.

Here's the practical breakdown of what different Ct ranges typically mean with standard input (50-200 ng total RNA equivalent of cDNA):

Forty cycles lets you see everything through that Ct 35-38 range while giving you a clean window to evaluate your no-template controls (NTCs). If your NTC amplifies at Ct 39, you know anything at Ct 35 or below is comfortably above background.

When You Might Want More (or Fewer) Than 40

The case for 45 cycles: Some low-abundance targets — think rare splice variants, viral transcripts in latency, or microRNA-derived cDNA with poor reverse transcription efficiency — genuinely don't show up until cycle 36-40. If your target consistently hits Ct 38-39 in positive samples and you want to distinguish that from NTC noise, bumping to 45 cycles can help. The QuantStudio and LightCycler 480 both handle 45-cycle protocols without issues. The extra 5 cycles add maybe 8-10 minutes to your run.

The critical requirement if you go to 45 cycles: your NTCs must be clean. Not "Ct 42 is basically negative" clean — actually no amplification. If you're using SYBR Green chemistry (PowerUp SYBR, Luna Universal, etc.), check your melt curves religiously. Primer-dimers love to show up in those late cycles.

The case for fewer cycles: If every target on your plate crosses threshold before cycle 30, you're wasting time running to 40. This comes up with high-expression panels or when you're using high cDNA input. Some high-throughput labs running routine QC assays drop to 35 cycles. You won't miss anything, and you'll shave 10-15 minutes per run. On a Rotor-Gene Q, which already runs fast due to the air-based thermal cycling, 35 cycles can get you done in under an hour.

That said, I'd still default to 40 for any experiment generating publishable data. Reviewers and collaborators expect it, and the time savings from cutting 5 cycles rarely matters enough to justify the conversation about why your protocol is non-standard.

How Cycle Number Interacts with Your Analysis

Here's where cycle number actually impacts your results, and it's more subtle than most people realize.

Baseline setting. Most software (Bio-Rad CFX Maestro, QuantStudio Design & Analysis, LightCycler SW) auto-calculates the baseline from early cycles — typically cycles 3-15 or an adaptive algorithm. If your highly expressed reference gene (18S, for instance) amplifies early, a short baseline window works fine. But if you're comparing it to a GOI (gene of interest) that doesn't amplify until cycle 33, the baseline calculation can behave differently across that wider window. With 40 cycles, you generally have enough flat baseline to let auto-baseline work. With 45 cycles and a target at Ct 40, double-check that your software isn't doing something strange with the baseline fit.

The "Ct 40 = undetermined" convention. Most analysis pipelines treat Ct = 40 (or whatever your max cycle count is) as "not detected." This is a reasonable convention, but it creates a cliff: Ct 39.5 gets a value, Ct 40.1 doesn't. If you run 45 cycles, suddenly those Ct 40-41 amplifications get numerical values, and you have to decide what to do with them. Are they real? Sometimes. Are they reproducible? Usually not — replicate SD at those Ct values is often >1.0, which means your fold-change estimates are unreliable regardless.

My rule of thumb: if your replicate SD exceeds 1.0 Ct, the quantification is not trustworthy for relative expression calculations. At Ct 35 with good primer efficiency (90-110%), you can typically hold replicate SD below 0.5 Ct. By Ct 38, it's a coin flip.

Impact on ΔΔCt calculations. The Livak method (Livak & Schmittgen, 2001) assumes approximately equal efficiencies between your GOI and reference gene, and it works on the assumption that your Ct values are in the reliable range. Plugging a Ct of 39 into a ΔΔCt calculation against a reference at Ct 18 gives you a ΔCt of 21 — that's a ~2-million-fold difference in expression. The propagated error from even ±0.5 Ct uncertainty at the high end translates to a massive fold-change range. At ΔCt = 21, a ±0.5 Ct shift in your GOI moves your fold change by about 40%. If you're in this territory, consider whether your biological question actually requires detecting these very low-abundance transcripts, or whether a more sensitive method (digital PCR, for instance) is warranted.

Practical Recommendations

For standard relative quantification experiments (comparing treatment vs. control, tissue panels, knockdown validation): run 40 cycles. Use 200-400 nM primers, 58-62°C annealing temperature for a standard two-step protocol, and include NTCs for every primer pair on every plate.

For rare transcript detection: run 45 cycles, include at least 3 NTC replicates per assay, and define your detection threshold conservatively. I'd require at least 2 of 3 biological replicates to amplify before calling a gene "detected," and I'd require the mean Ct to be at least 3-5 cycles below the NTC (if NTC amplifies at all).

For reference gene selection panels: 40 cycles is fine. If a candidate reference gene doesn't amplify until Ct 35+ in your tissue of interest, it's too low-abundance to be a useful normalizer anyway. You want your reference gene Ct to be within ~5 cycles of your GOI to minimize error propagation.

For SYBR Green assays: always check melt curves, but especially for anything above Ct 32. Late-cycle SYBR amplification without a clean, single melt peak is not usable data. A shoulder on your melt curve at those late cycles almost always means primer-dimer is contributing to or entirely responsible for the fluorescence signal.

One thing that helps with all of this: having your analysis software flag late-Ct values and NTC issues automatically rather than relying on manual inspection of every amplification plot. VoilaPCR flags high-Ct outliers, NTC amplification, and replicate variability automatically when you upload your run file, so these edge cases don't silently corrupt your fold-change calculations.

Set your cycler to 40, keep your NTCs clean, and save your mental energy for the biology.