Written and maintained by CASRAI Editorial Board
Last updated
Primer3 is an open-source program for designing PCR primers, and it also designs hybridization probes and sequencing primers. This page explains what it is, how a run works, which PRIMER_TASK to choose for your goal, and what a run assumes if you change nothing. Facts come from the Primer3 project pages and manual and the 2012 Nucleic Acids Research paper, all read on 2026-11-07.
What Primer3 is
Primer3 is a widely used program for designing PCR primers, according to the project’s own site. It is an open-source, community-development project hosted on GitHub under the primer3-org account. Given a template sequence and a set of constraints, it proposes candidate primers (and optionally an internal oligo) and ranks them by a penalty score, where lower is better.
How does Primer3 work?
Primer3 generates candidate oligonucleotides from your template, discards those that break your constraints (size, melting temperature, GC content, product size, target position), and scores the rest. The 2012 paper (Untergasser et al.) describes nearest-neighbor thermodynamic models for melting temperature and for hairpins and primer dimers, using an ntthal module. Output pairs are numbered from 0 and carry a PRIMER_PAIR_<j>_PENALTY, so pair 0 is the best-scoring pair under your settings.
Who maintains it, and which versions exist
The Primer3 site lists release 2.6.0, dated 8 January 2022, as the latest program release, with downloads on GitHub Releases. Two web front ends are listed alongside it: Primer3Web (version 4.1.0, November 2017) and Primer3Plus (version 3.2.0, January 2022). The site gives no licence statement or citation text; the paper to cite is the one below.
- Untergasser A, Cutcutache I, Koressaar T, Ye J, Faircloth BC, Remm M, Rozen SG. Primer3 – new capabilities and interfaces. Nucleic Acids Res 2012;40(15):e115. doi:10.1093/nar/gks596.
Primer3, Primer3Web, Primer3Plus and Primer-BLAST
| Name | What it is, per its documentation |
|---|---|
| Primer3 (engine) | The design program and the libprimer3 library, released on GitHub (latest 2.6.0, 2022-01-08). |
| Primer3Web | Web interface listed on primer3.org (primer3.ut.ee), version 4.1.0. |
| Primer3Plus | Web interface listed on primer3.org (primer3plus.com), version 3.2.0; the 2012 paper describes it as a task-oriented interface. |
| NCBI Primer-BLAST | NCBI’s tool, which uses Primer3 (version 2.5.0 per NCBI’s tool information page) for design. See the Primer-BLAST guide. |
How to run a design
The Primer3 manual describes input as tag=value settings. The steps below follow those tags, whichever interface you use.
- Provide the template in
SEQUENCE_TEMPLATE. - Optionally mark
SEQUENCE_TARGETregions; the manual says a legal primer pair must flank at least one of them. UseSEQUENCE_INCLUDED_REGIONorSEQUENCE_EXCLUDED_REGIONto confine or block regions. - Choose
PRIMER_TASK(see the table below). The default isgeneric. - Set product size with
PRIMER_PRODUCT_SIZE_RANGE, and primer size, melting temperature and GC limits if the defaults do not suit your assay. - Set
PRIMER_NUM_RETURNfor how many candidates to report (default 5). - Read the results: compare
PRIMER_PAIR_<j>_PENALTYandPRIMER_PAIR_<j>_PRODUCT_SIZE, and checkPRIMER_ERRORif nothing returns.
For checking specificity against a genome or transcriptome, see the in-silico PCR guide and the Primer-BLAST row above.
Which task for which goal
| Your goal | PRIMER_TASK value (manual) |
|---|---|
Classic primer pair, optionally with an internal oligo (set PRIMER_PICK_INTERNAL_OLIGO=1) |
generic (default) |
| List every candidate primer, sorted by quality | pick_primer_list |
| Evaluate primers you already have | check_primers (the only task that needs no template sequence) |
| Primers to sequence a region | pick_sequencing_primers |
| Cloning primers with fixed start and end (only length varies) | pick_cloning_primers |
| A primer end at a specific position, such as a polymorphic site | pick_discriminative_primers |
The manual marks pick_pcr_primers and related names as deprecated, and pick_detection_primers as an alias of generic.
What a default run assumes
| Setting | Default (manual) |
|---|---|
| Product size range | 100-300 |
| Primer size, optimum / min / max | 20 / 18 / 27 |
| Melting temperature, optimum / min / max | 60.0 / 57.0 / 63.0 °C |
| GC content, optimum / min / max | 50.0 / 20.0 / 80.0 % |
| Pairs returned | 5 |
| Monovalent salt / divalent salt / dNTP | 50.0 / 1.5 / 0.6 mM (stated for --default_version=2) |
How to design a primer for sequencing?
Use PRIMER_TASK=pick_sequencing_primers. The manual describes it as picking primers suited to sequencing a region, and the 2012 paper says it selects unpaired primers that cover a template, for Sanger sequencing. See the Sanger sequencing guide for the wet-lab side.
Strengths and limits
- Strength: tasks for different jobs (sequencing, cloning, checking your own primers, discriminating at a site) in one engine.
- Strength: the paper lists a primer-pair-OK region list and an overlap-junction list, so a primer can be required to span an exon-exon junction for RT-PCR.
- Strength: thermodynamic models for melting temperature, hairpins and dimers rather than simple formulas.
- Limit: a bare run assumes the defaults above, which may not match your polymerase or buffer.
- Limit: the penalty ranks candidates against your constraints; it is a design score, not a test result.
Alternatives and companions
Compare tools by documented features rather than a single winner. For related steps, see how to choose primers for PCR, OligoAnalyzer for analysing oligos and the NEB Tm calculator for melting temperatures. Primer3 is also the design engine inside NCBI Primer-BLAST, so the choice is often between a direct Primer3 interface and Primer-BLAST, not between two unrelated programs.
FAQ
What is an example of a primer?
A primer is a short single-stranded oligonucleotide that starts DNA synthesis. In Primer3’s defaults it is 18 to 27 nucleotides long, with an optimum of 20. Primer3 reports left and right primers (and an internal oligo if requested) for each candidate pair.
What is the best primer design tool?
The sources cited here do not rank tools. Primer3 is widely used, and Primer-BLAST builds on it; choose by whether you need task options, a web form or a specificity step.
Where do I find the manual?
On primer3.org under Manual, which lists every tag and default used above.
Sources
- Primer3 project home, primer3.org (read 2026-11-07).
- Primer3 releases, primer3.org/releases.html (read 2026-11-07).
- Primer3 manual, primer3.org/manual.html (read 2026-11-07).
- Untergasser et al., Nucleic Acids Res 2012;40(15):e115, doi:10.1093/nar/gks596 (read 2026-11-07).
- NCBI Primer-BLAST tool information, as cited on our Primer-BLAST guide.







