Skip to content

MEME overview

by A. Bretaudeau on January 28, 2011

It’s been too long since my last post, but finally, I’m back! I will present you the work I have done under the hood soon. But for now, let’s talk about Meme!

Meme is a suite of tools for pattern matching, pattern discovery, and other pattern manipulations. It works with PSSM, and it is particularly designed for nucleic sequences, although some of the tools works with protein sequences too.

Meme is installed on our platform, and it is available with a great web interface. It is also possible to us it with command line (source /local/env/envmeme), and with webservices (as usual with our Opal server).

I am going to present you the most useful tools of this suite. You should also visit the MEME documentation which is quite helpful.



The MEME tool (which gave its name to the whole suite) is dedicated to pattern discovery. It simply takes a set of sequences (protein or nucleic acid) and search for some pattern represented in some or all the sequences.

You can specify the number of motifs to find, the minimum and maximum length of the motif(s), and if the motif(s) is present in all or some of your sequences.

To use it, just go to this page!

The results are in HTML format. They contain a list of the motifs found by the program. Each one is represented with a nice logo and is given a score (low score means high quality motif):

MEME results: logo

An example motif found by MEME. The left one is on forwar strand, the right one is the same on reverse strand.

Just after these logos, there are 4 buttons which allow you to launch further analysis using the MEME results: MAST, FIMO, GOMO and BLOCKS are available.

After this, you can see the motif sites found in the sequences you gave to MEME:

MEME: motifs sites in given sequences
A list of sites matching the motif, found in each sequence

Of course you can download and view your motif in difference format: PSSM or PROSITE-like pattern, the latter being less expressive than the first one.


When you have found a motif in a set of sequences, the next thing you might want to do is to search for other sequences containing this motif, i.e. pattern matching. The MEME suite comes with a tool dedicated to this: MAST.

You have the choice to directly launch a MAST search from a MEME result page, or to save a MEME motif and then upload it on the MAST form:

Here, we launched MAST directly from MEME result.

On the MAST form, you only have to choose a motif, and a sequence database to look into -some bacteria genome for example). There is also an option very similar to the blast e-value threshold parameter: MAST gives a score to each hit it finds in the database, and it only show you hits having an e-value lower than a given threshold (10 by default).

After launching the search, you get a representation of the search sequence(s), each found hit being highlighted. If you move your mouse hover each hit, MAST gives you the associated e-value and the position in the sequence.

A sequence with a lot of hits.


GLAM2 does the same job as MEME (pattern discovery) except that it can discover motifs containing gaps. And GLAM2SCAN is the equivalent of MAST, with gap support.

There is not much more to say about them: they work very similarly to MEME and MAST. GLAM2 has a few more options, in particular for the tuning of insertion and deletion costs.


The last main tool offered in the MEME suite, is TOMTOM. It aims to compare a given motif to databanks of publicly available motifs. Let’s suppose you have found a new motif with MEME or GLAM2, you might want to know if this motif has already been described by someone else in the world. TOMTOM will give you the answer.

On the web form, you have to enter the motif you have found, and then select a databank where to look for similar motifs. And there is also an e-value threshold working the same way as MAST, GLAM2SCAN or blast.

Several motif formats are allowed: PROSITE-like (IUPAC), PSSM, or MEME txt file

You can search in various databanks, especially JASPAR or TRANSFAC which are big databanks of transcription factor binding sites. There are other, usually smaller, databanks specific to some organisms (Drosophila for example) or domains. As I said at the beginning, the MEME suite is mainly aimed at nucleic sequences, so the databanks available in TOMTOM are nucleic ones, and more specifically banks of transcription factor binding sites.

Other tools

So we have seen MEME, MAST, GLAM2, GLAM2SCAN and TOMTOM in action. But MEME comes with some other tools:

MCAST allows to search for cluster of motif sites in a given sequence. This can be helpful when you’re studying regulatory modules.

GOMO is a pattern matching program which can help you to assign a function to a motif: you give it a motif, and it searches for genes located close to occurrences of this motif. After this, it automatically retrieves the GO terms keywords associated to these genes. So you get a list of GO annotations related to the motif you entered (if you don’t know GO terms, have a look at this page!).

FIMO is very similar to MAST: when you give 3 motifs to MAST, it will search for sequences having at least these 3 motifs. With FIMO, you will get sequences containing at least one of the motifs you gave.

There are other smaller utilities only available with command line. Take a look at the documentation to see if they can help you.

MEME 4.6

While writing this article, I found out MEME 4.6 has been released. It comes with two new tools (MEME-Chip and Spamo) which I haven’t tested yet. I’m going to update our MEME server in the next few days and I will probably write a new blog post about these new tools.

Stay tuned!

From → How-tos

  1. Rosanne permalink

    Thank you for this comprehensive explanation. I have used MEME/MAST before but lately I have many problems with using MAST. Firstly, it refuses to find the MEME-motif in the GenBANK bacterial genome of my strain (Lactobacillus johnsonii). It says it is too long for MAST search. The genome says (“peptide only”) and I’m not sure what this means either.

    Secondly, if I instead use the upstream sequences of the genome, it gives a 404 error and doesn’t return anything. Do you know of this problem and do you know a way to surround it?

    I appreciate your help.

  2. Hello,
    I can’t reproduce your problem. Are you using your own motif that you built from your sequences? Are you using the Lactobacillus johnsonii from our meme website, or your own genome ?
    For the 404 error, I don’t have this problem… Can you retry, and if it happens again, tell me exactly what you did to have this error?

Trackbacks & Pingbacks

  1. MEME 4.6: MEME-ChIP and Spamo | Dr Motifs – Blog
  2. Blast+ and MEME updates | Dr Motifs – Blog

Leave a Reply

Note: XHTML is allowed. Your email address will never be published.

Subscribe to this comment feed via RSS