Primer3 Input -version: 0.4.0-
For advanced use cases, pair Primer3 v0.4.0 with scripts (Perl, Python, or R) to parse output and iterate over multiple sequences. The input format described here remains compatible with later versions (v2.x, v3.x), making it a timeless skill for bioinformaticians.
PRIMER_MIN_GC=20.0 PRIMER_MAX_GC=80.0 PRIMER_GC_CLAMP=1 # At least 1 G or C in the last 5 bases PRIMER_MAX_POLY_X=4 # Max run of single base (e.g., AAAA) A major improvement in the v0.4.x lineage is the enhanced mispriming library handling.
PRIMER_INTERNAL_OPT_SIZE=20 PRIMER_INTERNAL_MIN_SIZE=18 PRIMER_INTERNAL_MAX_SIZE=30 PRIMER_INTERNAL_OPT_TM=65.0 # Probe Tm should be 5-8°C higher than primers PRIMER_INTERNAL_MIN_TM=63.0 PRIMER_INTERNAL_MAX_TM=68.0 Here is a real-world input for amplifying a 200 bp region from a bacterial 16S rRNA gene: primer3 input -version 0.4.0-
PRIMER_SEQUENCE_ID=my_amplicon SEQUENCE=ATCGGCTAGCTAGCTCGATCGATCGATCGATGCGCTAGC PRIMER_TASK=pick_detection_primers = While many parameters are inherited from earlier versions, version 0.4.0 introduced refined control over mispriming libraries and output formatting. 1. Defining Your Sequence You must provide the target sequence. Use SEQUENCE for the template. For internal oligos (e.g., hybridization probes), use SEQUENCE_INTERNAL .
PRIMER_PICK_LEFT_INPUT=200 PRIMER_PICK_RIGHT_INPUT=400 PRIMER_PRODUCT_SIZE_RANGE=150-250 Version 0.4.0 respects standard thermodynamic calculations (nearest-neighbor). For advanced use cases, pair Primer3 v0
The basic structure looks like this:
SEQUENCE=AGCTAGCTACGATCGATTCGATCGATCGATCGATCG Specify where primers can bind. Coordinates are 1-based. Use SEQUENCE for the template
PRIMER_SEQUENCE_ID=E.coli_16S_region SEQUENCE=GTGCCAGCAGCCGCGGTAATACGGAGGGTGCAAGCGTTAATCGGAATTACTGGGCGTAAAGCGCACGCAGGCGGTTTGTTAAGTCAGATGTGAAATCCCCGGGCTCAACCTGGGAACTGCATCTGATACTGGCAAGCTTGAGTCTCGTAGAGGGGGGTAGAATTCCAGGTGTAGCGGTGAAATGCGTAGAGATCTGGAGGAATACCGGTGGCGAAGGCGGCCCCCTGGACGAAGACTGACGCTCAGGTGCGAAAGCGTGGGGAGCAAACAGG PRIMER_TASK=pick_detection_primers PRIMER_PICK_LEFT_INPUT=100 PRIMER_PICK_RIGHT_INPUT=350 PRIMER_PRODUCT_SIZE_RANGE=180-220 PRIMER_OPT_SIZE=20 PRIMER_MIN_SIZE=18 PRIMER_MAX_SIZE=25 PRIMER_OPT_TM=60.0 PRIMER_MIN_TM=58.0 PRIMER_MAX_TM=62.0 PRIMER_MAX_DIFF_TM=2.0 PRIMER_MIN_GC=40.0 PRIMER_MAX_GC=60.0 PRIMER_GC_CLAMP=1 PRIMER_MAX_POLY_X=4 PRIMER_MAX_HAIRPIN_TH=47.0 PRIMER_SELF_ANY_TH=45.0 PRIMER_SELF_END_TH=45.0
PRIMER_OPT_SIZE=20 PRIMER_MIN_SIZE=18 PRIMER_MAX_SIZE=27 PRIMER_OPT_TM=60.0 PRIMER_MIN_TM=57.0 PRIMER_MAX_TM=63.0 PRIMER_MAX_DIFF_TM=3.0 Avoid 3' instability and low-complexity regions.
Designing reliable PCR primers is a cornerstone of molecular biology. While Primer3 has been the industry standard for decades, its command-line interface—specifically the input formatting—can be daunting. This article focuses on Primer3 version 0.4.0 , explaining how to structure your input file to leverage the full power of this release. The Core Syntax: Key-Value Pairs Primer3 v0.4.0 uses a simple, line-oriented, key-value pair format. Every input file must end with a blank line followed by a line containing only = .