Motif Occurrence Detection Suite

MOODS is a suite of algorithms for matching position weight matrices (PWM) against DNA sequences. It features advanced matrix matching algorithms implemented in C++ that can be used to scan hundreds of matrices against chromosome-sized sequences in few seconds. MOODS can also process high-order PWMs with dependencies between adjacent positions and sequence variants such as SNPs, insertions and deletions.

MOODS can be used as standalone analysis tool or as a component in larger programs, using C++ or Python interfaces.

MOODS is dual-licenced under GPL version 3 license and Biopython license.


The latest version of MOODS can be found on Github:


When using MOODS in your work, please cite the following papers as appropriate:

J. Korhonen, P. Martinmäki, C. Pizzi, P. Rastas and E. Ukkonen. MOODS: fast search for position weight matrix matches in DNA sequences. Bioinformatics 25(23), pages 3181-3182. (2009)

C. Pizzi, P. Rastas and E. Ukkonen: Finding Significant Matches of Position Weight Matrices in Linear Time. IEEE/ACM Transactions on Computational Biology and Bioinformatics. 8(1), pages 69 - 79. (2011)

J.H. Korhonen, K. Palin, J. Taipale and E. Ukkonen: Fast motif matching revisited: high-order PWMs, SNPs and indels. Bioinformatics. (2016)


MOODS is written by Pasi Rastas, Janne H. Korhonen and Petri Martinmäki, and maintained by Janne H. Korhonen. MOODS is currently maintained mainly via the MOODS Github page, which is the best way to contact the authors.

Old versions

The old 1.0 versions of MOODS can be found below. In general, we recommend using more recent versions of MOODS whenever possible.