Best Practices for PCR Primer Design


PCR is definitely one of those things in science that borders on magic and witchcraft. I like to think I know what I am doing, but I still have those days even in my postdoc that I have to pray to the PCR Gods to get something to work.

In my experience, PCR success is mainly dependent on the primer set that you use. I have spent a lot of time optimizing a stringent workflow for choosing primers. Some of my methods border on fanatic and, honestly, much of my advice is probably built around lab myths foretold on internet forums, but I typically get PCR to work on the first shot with a new primer set. I work with maize which has high GC content, repetitive DNA, and high genetic diversity, so that is pretty good I say.


The program I like to use to design primers is Primer-BLAST The advantage of this is that it integrates the well-known Primer3 with BLAST capabilities. This cuts down on the chance of off-target effects.

Primer-BLAST has many parameters and functionalities. The first thing you’ll want to do is change the product size. For qRT-PCR, use primers between 70–250 bp. If you are doing routine screening or flanking restriction enzymes, try for something around 500–1000 bp. Then change the number of primer pairs to 20 or something because, why not? More is more.

Next, if you are designing qRT-PCR primers, check the box for Primer pair must be separated by at least one intron on the corresponding genomic DNA (only valid if submitting something from the NCBI database as the PCR template). For whatever reason, the default minimum intron is 1000 bp. Change that to 20 or something small because many introns are much smaller than 1000 bp.

In the specificity section, change to the Refseq representative genomes database for regular PCR or keep it on Refseq mRNA for qRT-PCR. Then change the species to whatever you work with. If you submit and press back, the Organism section resets to Homo sapiens, which is an unfortunate feature to be aware of.

Now from here on is where it gets scary. I like to be very stringent with my primers. You will have to click on Advanced Parameters and alter some of the defaults. Here are the options I use for good primer design:

  • GC content = 40-60%
  • Max Poly-X = 3 (especially important to prevent G-quadruplex formation)
  • Max GC in primer 3' end = 3
  • Max Self Complementarity, Any = 5
  • Max Pair Complementarity, Any = 5

Now press run and see what Primer-BLAST comes up with. Hopefully it will come up with a dialog that says, “We found your target!” if you pasted your own DNA sequence in the PCR template.

Sometimes Primer-BLAST fails. That is ok! My parameters are ultra-strict. There are a few things to try relaxing first when you submit again. Is the sequence really GC-rich? Maybe try relaxing the max GC% or Max GC in primer 3' end. Still can’t find anything? Then maybe you’ll have to deal with secondary structures and relax complementarity.

Choosing Primers

A kind of sucky feature of Primer3/Primer-BLAST is that it will choose the same primers multiple times and maybe offset them by 1 base. Be mindful of this. I try to choose two distinct forward and reverse primers for a total of 4 primer set combinations.

The first score I look at is Self 3' complementarity. This will tell you if the end of the primer will bind to itself or other primers in the critical juncture for PCR to work. Minimize this score. Then try to minimize total Self complementarity.

Next, look at off-targets. If both primer off-targets are identical to your target in the last 12–15 bases of the 3' end, then you may be in trouble. However, if the off-target amplicon size is large compared to your amplicon, then you may be ok. For qRT-PCR, try your best to minimize off-targets.

Because I am crazy, I also like to choose primers that begin with an A or T. Someone told me to do this and I am not sure why it is necessary. It is also suggested that the primers end with a G or C to tighten the primer to the DNA template.

Checking Quality

Once I have chosen primers, then I plug them into this weird tool I found on ThermoFisher’s Website: It really has a super long URL. This will allow you to put each primer in FASTA format and it gives you some idea whether they will stick to each other or to themselves. I play with the sensitivity setting and see if anything shows up. This step doesn’t really change my outcome generally, unless I see around 5 for more bases in a row that stick together. Because we chose max complementarity to be less than 5 earlier, this should be okay.

I found that IDT’s OligoAnalyzer tool is also a really good resource. Try finding primers that have single digit ΔG values for the various secondary structures.

And there you have it, a super complicated way of making primers! Take from it what you will. Hopefully this makes it easier for you to choose your next primer set and gives you peace of mind that you are choosing the right ones.

Non CC - Author held copyright

Login or Signup to leave a comment
Stefani Robnett3 months ago

I re-shared this in the Biohacking & Genetic design facebook group - we had a run a poll there and most members struggle the most with PCR troubleshooting. Thanks for the awesome post :)

Thanks for the excellent post - definitely bookmarking this one for future reference. Unfortunately when I design primers for cloning workflows I'm often a lot more limited in choice and product length, but I'm sure some of these tips will save me PCR troubleshooting!

I found a great resource explaining some of my "superstitions" and why they work:

Find your community. Ask questions. Science is better when we troubleshoot together.
Find your community. Ask questions. Science is better when we troubleshoot together.

Have a question?

Contact or check out our support page.