Variant Effect Predictor Download and install


The Variant Effect Predictor script can be downloaded as a zip from the Ensembl GitHub site:

It is included as part of the ensembl-tools module of the Ensembl API - you can find it in the ensembl-tools-release-78/scripts/variant_effect_predictor/ directory.

Previous versions: Show

What's new

New in version 78 (December 2014)

Previous version history: Show


Version 78 of the script requires at least version 78 of the Ensembl Core and Variation APIs and their relevant dependencies to be installed to use the script. A minimal subset of these can be installed using the supplied installer script.

To perform a full install of the API, see the instructions for details. To analyse regulatory features, the Ensembl Regulation API should also be installed.

To use the cache, the gzip and zcat utilities are required.

To use the VEP in Windows, see the instructions for Windows users


The VEP installer script makes it easy to set up your environment for using the VEP. It will download and configure a minimal set of the Ensembl API for use by the VEP, and can also download and configure cache and FASTA files for use by the VEP.

To use the VEP in Windows, see the instructions for Windows users

Users who already have the latest version of the API installed do not need to run the script, although may find it useful for getting an up-to-date API install (with post-release patches applied), and for retrieving cache files. The API set installed by the script is local to the VEP, and will not affect any other Ensembl API installations.

The installer script is also useful for users whose systems do not have all the modules required by the VEP, specifically DBI and DBI::mysql. After configuration using the installer, users can then use the VEP in offline mode with a cache, eliminating dependency on an Ensembl database (with limitations).

Running the installer

The installer script is run on the command line as follows:

 perl [options] 

Users then follow on-screen prompts. Please heed any warnings, as when the script says it will delete/overwrite something, it really will!

Most users should not need to add any options, but configuration of the installer is possible with the following flags:

Flag Alternate Description
Run installer without user prompts. Use a (API), c (cache), f (FASTA) to specify parts to install e.g. "-a ac" for API and cache. You will also need to specify at least one species (see below).
Comma-separated list of species to install when using --AUTO. To install the RefSeq cache, add "_refseq" to the species name, e.g. "homo_sapiens_refseq", or "_merged" to install the merged Ensembl/RefSeq cache. Remember to use --refseq or --merged when running the VEP with the relevant cache!
Assembly version to use when using --AUTO. Most species have only one assembly available on each software release; currently this is only required for human on release 76 onwards.
--DESTDIR [dir]
By default the script will install the API modules in a subdirectory of the current directory named "Bio". Using this option users may configure where the Bio directory is created. If something other than the default is used, this directory must either be added to your PERL5LIB environment variable when running the VEP, or included using perl's -I flag:
perl -I [dir]
--VERSION [version]
By default the script will install the latest version of the Ensembl API (currently 78). Users can force the script to install a different version at their own risk
--CACHEDIR [dir]
By default the script will install the cache files in the ".vep" subdirectory of the user's home area. Using this option users can configure where cache files are installed. The --dir flag must be passed when running the VEP if a non-default directory is given:
perl --dir [dir]
Run the installer with this flag to check for and download new versions of the VEP. Any existing files are backed up. You will need to rerun the installer after update to retrieve update API, cache and FASTA files.
Don't write any status output when using --AUTO.
Use this if the installer fails with out of memory errors.

Using the VEP in Windows

The VEP was developed as a command-line tool, and as a Perl script its natural environment is a Linux system. However, there are several ways you can use the VEP script on a Windows machine:

Virtual machines

Using a virtual machine you can run a virtual Linux system in a window on your machine. There are two ways to do this:

  1. Download the Ensembl virtual machine image [instructions]
  2. Use a virtual machine in the Amazon Elastic Cloud Service (ECS) [Amazon]


Cygwin is a collection of tools which provide a Linux environment embedded in Windows. It is very simple to install and set up, and requires the fewest compute resources to create a suitable Linux environment for the VEP. Instructions:

  1. Download the Cygwin setup program
  2. Run the setup program, and click through with the default options until you come to select packages to install
  3. Select the following packages to install (all are under the "Perl" node):
    • perl
    • perl-DBD-mysql
    • perl-DBI
  4. Click through the rest of the install process
  5. Download and unpack the VEP package from the download link
  6. Run the VEP installer

ActiveState Perl

ActiveState provide a version of Perl available for Windows. This can be used to run the VEP on the Windows MS-DOS command line interface. Instructions:

  1. Download and install ActiveState Perl. 5.14.2 is the recommended version to use.
  2. In your Windows Start menu, locate the entry created (it will look something like "ActivePerl 5.14.2 Build 1402"), and click on "Perl Package Manager"
  3. In the package manager, click the grey "View all packages" icon in the top-left
  4. In the adjacent search box, type "DBI"
  5. You should see a package named "DBI" in the list - click the package icon to the left to highlight it and select it for installation
  6. You should also see a package named "DBD-mysql" - click the package icon to select it for installation
  7. Click the green arrow in the top right of the window to install the packages
  8. Download and unpack the VEP package from the download link
  9. Start an MS-DOS window by clicking on the Start Menu, then Run..., type "cmd" in the box and press enter. Change directory to where you unpacked the VEP package using the cd command:
    cd C:\Perl\ensembl-tools\scripts\variant_effect_predictor\
  10. Run the VEP installer
  11. To use cache files, you will need to download the gzip utility and put "gzip.exe" either in your executable path or in the same directory as the script. Add the command line flag '--compress "gzip -dc"' when running the VEP

NB: Under ActiveState Perl on Windows there is a known issue when using cache files including SIFT and/or PolyPhen scores. Users should use either a virtual machine or Cygwin as described above.