An ultrafast memory-efficient short read aligner

Bowtie is an ultrafast, memory-efficient short read aligner. It aligns short DNA sequences (reads) to the human genome at a rate of over 25 million 35-bp reads per hour. Bowtie indexes the genome with a Burrows-Wheeler index to keep its memory footprint small: typically about 2.2 GB for the human genome (2.9 GB for paired-end). Open Source Software

Site Map

Latest Release


Related Tools

Pre-built indexes

Consider using Illumina's iGenomes collection. Each iGenomes archive contains pre-built Bowtie and Bowtie 2 indexes.

H. sapiens, NCBI GRCh38 2.7 GB
H. sapiens, UCSC hg19 2.7 GB
 or: part 1 - 1.7 GB, part 2 - 1.0 GB
 colorspace: full, or part 1, part 2
H. sapiens, UCSC hg18 2.7 GB
 or: part 1 - 1.7 GB, part 2 - 1.0 GB
 colorspace: full, or part 1, part 2
H. sapiens, NCBI v37 2.7 GB
 or: part 1 - 1.7 GB, part 2 - 1.0 GB
 colorspace: full, or part 1, part 2
H. sapiens, NCBI v36 2.7 GB
 or: part 1 - 1.7 GB, part 2 - 1.0 GB
 colorspace: full, or part 1, part 2
M. musculus, UCSC mm8 2.4 GB
 or: part 1 - 1.5 GB, part 2 - 900 MB
 colorspace: full, or part 1, part 2
M. musculus, UCSC mm9 2.4 GB
 or: part 1 - 1.5 GB, part 2 - 900 MB
 colorspace: full, or part 1, part 2
M. musculus, NCBI v37 2.4 GB
 or: part 1 - 1.5 GB, part 2 - 900 MB
 colorspace: full, or part 1, part 2
R. norvegicus, UCSC rn4 2.4 GB
 or: part 1 - 1.5 GB, part 2 - 900 MB
 colorspace: full, or part 1, part 2
B. taurus, UMD v3.0 2.4 GB
 or: part 1 - 1.5 GB, part 2 - 900 MB
 colorspace: full, or part 1, part 2
C. familiaris, UCSC canFam2 2.4 GB
 or: part 1 - 1.5 GB, part 2 - 900 MB
 colorspace: full, or part 1, part 2
G. gallus, UCSC, galGal3 1.1 GB
 colorspace: full
D. melanogaster, Flybase, r5.22 150 MB
 colorspace: full
A. thaliana, TAIR, TAIR9 120 MB
 colorspace: full
C. elegans, Wormbase, WS200 75 MB
 colorspace: full
S. cerevisiae, CYGD 15 MB
 colorspace: full
E. coli, NCBI, st. 536 5 MB
 colorspace: full

All indexes are for assemblies, not contigs. Unplaced or unlocalized sequences and alternate haplotype assemblies are excluded.

Some unzip programs cannot handle archives >2 GB. If you have problems downloading or unzipping a >2 GB index, try downloading in two parts.

Check .zip file integrity with MD5s.


Other Documentation


Related links

Recent news

1.1.2 - 6/23/2015

  • Fixed the building process for Mac OS X Yosemite.
  • Added install target (make install) for Linux to better aid package building process and the overall installation process.
  • Added support for Intel TBB threading, providing better thread scaling in most situations. The default build still uses TinyThread but TBB is used with make WITH_TBB=1.
  • Fixed minor issue related with managing the number of threads spawned.
  • Fixed minor issue which may have caused a memory leak after an exception was thrown.
  • Fixed bug that caused bowtie to crash if a read was trimmed more than the read's length on 5' end.
  • Added minor corrections/addition to the manual.
  • Fixed bug that caused the wrapper to incorrectly identify the bowtie binary.

Lighter released

  • Lighter is an extremely fast and memory-efficient program for correcting sequencing errors in DNA sequencing data. For details on how error correction can help improve the speed and accuracy of downstream analysis tools, see the paper in Genome Biology. Source and software available at GitHub.

1.1.1 - 10/1/2014

  • Fixed a compiling linkage problem related with Mac OS X Mavericks.
  • Improved performance for cases where the reference contains many stretches of Ns.
  • Some minor automatic tests updates.

1.1.0 - 7/19/2014

  • Added support for large and small indexes, removing 4-billion-nucleotide barrier. Bowtie can now be used with reference genomes of any size.
  • No longer releasing 32-bit binaries. Simplified manual and Makefile accordingly.
  • Phased out CygWin support.
  • Improved efficiency of index files loading.
  • Fixed a bug that made bowtie-inspect fail in some situations.
  • (This release was briefly given version number 2.0.0, but we changed it to 1.1.0 to avoid confusion with Bowtie 2.)

1.0.1 release - 3/14/2014

  • Improved index querying efficiency using "population count" instructions available since SSE4.2.
  • Credits to the Intel(r) enabling team for performance optimizations included in this release. Thank you!

Bowtie on GitHub - 4/11/13

1.0.0 release - 4/9/13

  • Finally, a 64-bit Windows binary!
  • Due to general performance improvements spinlocking is now used by default. The EXTRA_FLAGS=-DNO_SPINLOCK may be used to reverse this during compilation.
  • Fixed some race conditions.
  • CygWin builds now use pthreads library.
  • Changed MinGW to optionally use pthread library on Win32 platforms.
  • Changed the Windows build to use native Windows threads by default.
  • Renamed COPYING to LICENSE to be more GitHub-friendly.
  • Tokenizer no longer has limit of 10,000 tokens, which was a problem for users trying to index a very large number of FASTA files.
  • Removed references to no-longer-implemented --cutoff option for bowtie-build

0.12.9 release - 12/16/12

  • Fixed a bug whereby read names would not be truncated at first whitespace character in unmapped or maxed-out SAM records.
  • Fixed errors and warnings when compiling with clang++.
  • Fixed most errors and warnings when compiling with recent versions of g++, though you may need to add EXTRA_FLAGS=-Wno-enum-compare to avoid all warnings.

0.12.8 release - 5/6/12

  • Fixed a bug that would sometimes cause an immediate segmentation fault in --sam mode.
  • Fixed script to not omit chromosome 25.
  • Removed -B option from usage message for bowtie-build; that option is not implemented.
  • Fixed issue that could cause Bowtie not to compile when BOWTIE_PTHREADS is left undefined and pthreads.h is not present.
  • Elaborated documentation for -B/--offbase option to indicate that it only affects offsets in the default output mode, not in SAM mode.

Bowtie 2 beta released - 10/16/2011

  • Bowtie 2 2.0.0-beta2 is available now.
  • Differences between Bowtie 2 and Bowtie 1 include:
    • For reads longer than about 50 bp Bowtie 2 is generally faster, more sensitive, and uses less memory than Bowtie 1. For relatively short reads (e.g. less than 50 bp) Bowtie 1 is sometimes faster and/or more sensitive.
    • Bowtie 2 supports gapped alignment with affine gap penalties. Number of gaps and gap lengths are not restricted, except by way of the configurable scoring scheme. Bowtie 1 finds just ungapped alignments.
    • Bowtie 2 supports local alignment, which doesn't require reads to align end-to-end. Local alignments might be "trimmed" ("soft clipped") at one or both extremes in a way that optimizes alignment score. Bowtie 2 also supports end-to-end alignment which, like Bowtie 1, requires that the read align entirely.
    • There is no upper limit on read length in Bowtie 2. Bowtie 1 has an upper limit of around 1000 bp.
    • Bowtie 2 allows alignments to overlap ambiguous characters (e.g. Ns) in the reference. Bowtie 1 does not.
    • Bowtie 2 does away with Bowtie 1's notion of alignment "stratum", and its distinction between "Maq-like" and "end-to-end" modes. In Bowtie 2 all alignments lie along a continuous spectrum of alignment scores where the scoring scheme, similar to Needleman-Wunsch and Smith-Waterman.
    • Bowtie 2's paired-end alignment is more flexible. E.g. for pairs that do not align in a paired fashion, Bowtie 2 attempts to find unpaired alignments for each mate.
    • Bowtie 2 does not align colorspace reads.

Fixed chicken index - 7/19/2011

  • The pre-built chicken genome available from this website was missing chr25. chr25_random was included, but chr25 was erroneously excluded. This is fixed as of today - the index files linked to from the sidebar now contains all chicken chromosomes.

0.12.7 release - 9/7/10

  • Fixes the all-gap reference sequence issue that was present in Bowtie 0.12.6. Index files produced by bowtie-build 0.12.5 and earlier (back to 0.10.*) are compatible with bowtie 0.12.7. Index files produced by bowtie-build 0.12.7 are backward compatible with bowtie 0.12.5 and earlier as long as the first reference sequence is not all-gaps (or, when colorspace indexes, as long as the first reference sequence has two consecutive ACGT characters in it somewhere).
  • Indexes where the first sequence consists of all gaps or other non-ACGT characters are not handled properly by Bowtie versions 0.12.5 and older, but are handled properly by Bowtie 0.12.7.
  • REMOVED: bowtie-build's --old-reverse option; the old reverse- index scheme is again the default. The new scheme is disabled pending further refinement.

0.12.6 release - 8/29/10

  • Modified bowtie-inspect's default mode to use the bit-encoded reference portion of the index to reconstruct the reference sequence, rather than the ebwt portion. This makes bowtie-inspect much faster and uses less memory, and the output for a colorspace index will now be in nucleotide space. To get the behavior of the old default, use the new -e/--ebwt-ref option.
  • Fixed bug whereby SOLiD QV strings without a trailing space would fail to parse.
  • Moved to a new default way of building the reverse index. Revert to the old behavior with bowtie-build's new --old-reverse option. The new reverse index format is forward and backward compatible with `bowtie`, unless otherwise noted in a future version.
  • Fixed issue that would sometimes cause bowtie-build to crash when building a large index with a low --offrate.
  • Fixed build issue that would cause bowtie-build built on one version of Linux to die with a "floating point error" on other versions. bowtie now simply skips reads with 0 characters. Previously it would print an error and exit.
  • Fixed a bug whereby alignment cost could sometimes be miscalculated. Stratum was unaffected.
  • bowtie now simply skips reads with 0 characters. Previously it would print an error and exit.

Older news