SnpEff Tutorial


Go to to chat with a life sciences focused ChatGPT.

Overview of SnpEff

SnpEff is a software tool that has become an essential resource in the field of bioinformatics, particularly for those working with genetic variant data. It is designed to annotate and predict the effects of genetic variants, particularly single nucleotide polymorphisms (SNPs), on genes and proteins. This includes predicting amino acid changes, identifying the impact on gene function, and much more.

The tool supports a vast array of genomes, with over 38,000 genomes in its database. It uses the standard ANN annotation format, which makes it compatible with other tools and databases. SnpEff is also designed to work with cancer variant analysis, providing insights into how genetic variations can affect cancer progression and treatment responses.

One of the key features of SnpEff is its compatibility with the Genome Analysis Toolkit (GATK), which is widely used in the genomics community. It also supports HGVS (Human Genome Variation Society) notation, which is a standardized way to describe variants at the DNA, RNA, and protein levels.

SnpEff uses Sequence Ontology terms, which are standardized terms for genomic annotations. This standardization is crucial for ensuring that different researchers and tools can understand and use the annotations consistently.

For those in the research or academic fields, citing SnpEff in publications is important. The tool was described in a paper titled "A program for annotating and predicting the effects of single nucleotide polymorphisms, SnpEff: SNPs in the genome of Drosophila melanogaster strain w1118; iso-2; iso-3," published in the journal Fly in 2012.


To install SnpEff, you will need to follow the instructions provided on the official SnpEff website. The process typically involves downloading the software package, extracting the files, and setting up the environment to run the tool. It is important to ensure that you have the correct version of Java installed, as SnpEff is a Java-based application.

Quick Start

Getting started with SnpEff involves a few basic steps:

  1. Download the SnpEff software package from the official website.
  2. Extract the files to a desired location on your computer.
  3. Download the genome database for the organism you are studying. SnpEff has a command to facilitate this process.
  4. Run SnpEff with the appropriate command to annotate your variant data.

Code Examples Of Popular Commands

Here are five popular commands that you might use with SnpEff:

  1. Annotating Variants: To annotate a VCF file with SnpEff, you would use a command like this:

    java -Xmx4g -jar snpEff.jar eff -v GRCh37.75 my_variants.vcf > my_variants_annotated.vcf

    This command specifies the use of the GRCh37.75 genome and annotates the variants in my_variants.vcf, outputting the results to my_variants_annotated.vcf.

  2. Downloading a Genome Database: To download a specific genome database, you can use the following command:

    java -jar snpEff.jar download -v GRCh37.75

    This will download the GRCh37.75 human genome database.

  3. Building a Custom Database: If you have custom genome data, you can build your own database with SnpEff:

    java -jar snpEff.jar build -gff3 -v my_genome

    This command builds a database using GFF3 formatted data for your custom genome named my_genome.

  4. Cancer Analysis: SnpEff can be used to analyze cancer variants by specifying the -cancer option:

    java -Xmx4g -jar snpEff.jar eff -cancer -v GRCh37.75 my_cancer_variants.vcf > my_cancer_variants_annotated.vcf

    This annotates the VCF file with cancer-specific annotations.

  5. Generating Summary Statistics: After annotation, you can generate summary statistics with:

    java -jar snpEff.jar stats my_variants_annotated.vcf > stats.txt

    This command creates a text file with summary statistics of the annotated variants.

These commands are just the tip of the iceberg when it comes to what SnpEff can do. The tool is highly versatile and can be customized to fit a wide range of genomic analysis needs. Whether you're a seasoned bioinformatician or just starting out, SnpEff is a powerful tool to add to your arsenal.

Remember, this is just a brief overview and introduction to SnpEff. For a full understanding of the tool's capabilities and options, it's best to refer to the official documentation and tutorials provided by the developers.