Multiple Parts, One Gblock

Note: I use the words Gblock and Gene fragment interchangeably.

Twist’s gblock synthesis service has a 300bp minimum, per block. Since we use a cloning system where a single coding sequence might get assembled from like five different modular parts, I often need to order parts that are substantially less than 300bp like UTRs, N-terminal and C-terminal peptide tags. Adding padding to meet the 300bp minimum works. But you end up paying for a lot of DNA that is never used.

If you are doing Gibson then maybe you stick multiple parts on the same gblock and then order primers that are unique to each part and clone them out separately. No wasted DNA.

If you are doing MoClo (or GoldenBraid or PhytoBrick) you run into a problem where some of your parts on the same gblock also have the same restriction sites and sticky ends. Or sticky ends that will assemble together in an assembly reaction. For example, you want to put a promoter part (GGAG-TACT) and a 5’UTR part (TACT-CCAT) on the same gblock. If you try to clone that into a Level 0 vector the two TACT ends will assemble together. You might be able to find some good clones but this will definitely lower the chances of success in what should be a simple assembly.

Our solution involved abandoning the standard MoClo Level 0 vectors. It also involves encoding more restriction sites directly in the gblock than the original MoClo specification called for, instead of inheriting them from the L0 vector. So you use up a few more base pairs doing that, but overall you come out significantly ahead.

enter image description here

The red are Eco31I sites for the specific type of L0 part you are making. See Patron 20151 Figure 3. Print out that figure and put it on your wall. Promoter parts have GGAG and TACT Eco31I sites. These sites are inert and aren’t used until you assemble a L1 plasmid. The blue are BpiI sites that are used to clone these L0 parts into our custom L0 vectors. We made 5 different Level 0 acceptor plasmids, MRA-L0-A through E2. Each one has a different pair of BpiI sites. All the pairs are compatible in that they won’t cross react in the same BpiI reaction.

Site 1 Site 2 Snapgene File
A CTCA CGAG MRA-L0-A.dna
B GGAG TACT MRA-L0-B.dna
C CCAT AATG MRA-L0-C.dna
D AGGT TTCG MRA-L0-D.dna
E GCTT CGCT MRA-L0-E.dna

So you receive a gblock from Twist containing 2 parts. You set up two BpiI assembly reactions.

Reaction 1 Reaction 2
gblock gblock
BpiI BpiI
MRA-L0-A MRA-L0-B

And obviously these reactions would include T4 ligase, water, etc. But you get the picture. Promoter A ends up in MRA-L0-A, Promoter B ends up in MRA-L0-B. There is no (or very very little) cross reactivity. So you get two parts for the price of one, excluding the cost of cloning and QC.

With this system we can get up to five parts on a single gblock. I think we’ve only every done five a few times. Mostly we combine two or three. I will even use this system for ordering one part on one gblock. Mainly because I have a workflow set up using these L0 acceptor plasmids so it requires little mental effort to do it.

Also, I have found encoding the Eco31I sites directly in the gblock, even though I pay for a few extra nucleotides, is better than the standard MoClo L0 system. For example, if I want to make a part that is NTAG to CDS1 (CCAT-AGCC), there is no MoClo L0 acceptor for this scenario. Using the MRA-L0 system, I just add CCAT and AGCC sites into the gblock. See my guide for designing gblocks with this system.

One additional point - we made a 6th version called MRA-L0-F that has Esp3I sites instead. Useful for building other custom vectors that need to include BpiI and Eco31I sites. Snapgene file is here: MRA-L0-F.dna


  1. Patron et al., (2015), Standards for plant synthetic biology: a common syntax for exchange of DNA parts. New Phytol, 208: 13-19. https://doi.org/10.1111/nph.13532 ↩︎

  2. The original meaning of the “MRA” abbreviation at Mozza has been forgotten. We came up with the name in a meeting and apparently never wrote it down. In my mind it now means “Mozza Rapid Assembly” but it could have been anything originally. Who knows. ↩︎