CRISPRAnalyzeR: interactive analysis, annotation and documentation of pooled CRISPR screens
Switch branches/tags
Nothing to show
Clone or download
jwinter6 Update
fixed Docker Toolbox, is now replaced by Docker Community Edition (CE)
Latest commit 64a5a54 Mar 13, 2018
Type Name Latest commit message Commit time
Failed to load latest commit information.
docker no message Jan 29, 2018
fasta prepare for v1.40 release Nov 1, 2017
helpers added helper checkFasta.Rmd to check FASTA library files for uniquene… Mar 12, 2017
images updated README for V1.40 Nov 3, 2017
report updated README Apr 1, 2017
sampledata no message Jan 16, 2018
source no message Jan 16, 2018
LICENSE added LICENSE information Jan 13, 2017 Update Mar 13, 2018
version.txt no message Jan 16, 2018


CRISPRAnalyzeR - Fully-interactive Analysis and Documentation Suite for Pooled CRISPR Screens

Welcome to the CRISPRAnalyzeR Github page!

CRISPRAnalyeR is a web-based, interactive suite for the analysis and documentation of pooled CRISPR Screens.

See CRISPRAnalyzeR in action!

Check out the Wiki Page or scroll down for more information and help

See our Manuscript on

CRISPRAnalyzeR is now available for download - see below or check out the wiki.

You can use the provided CRISPRAnalyzeR web-service or download the suite for installation within your lab.

CRISPRAnalyzeR has been developed to provide a fully-interactive and exploratory analysis of pooled CRISPR Screens with user experience in mind. You can analyse your screen using 8 different analysis methods as well as perform gene annotation, gene set analysis and get detailed information about your sgRNAs - all in a convenient web-browser interface.

All you need is your sequencing data and the a file describing your pooled CRISPR screen library (we provide you with the most common ones) - and you can go from rawdata to potential followup candidates

CRISPRAnalyzeR uses a guided-analysis approach. This means you will be guided through the analysis.

CRISPAnalyzeR consists of four sections:

  • Screen and Sequencing Quality Estimation
  • Hit Calling using multiple published hit calling algorithms
  • Hit Confirmation which includes information from up to 26 external data ressources
  • Download of the interactive report that provides a comprehensive documentation of your screen and analysis

The principle CRISPRAnalyzeR Guided-Analysis Workflow

alt text

What CRISPRAnalyzeR offers you

CRISPRAnalyzeR assists you with the analysis of your screening data. It contains 4 different sections, each offering interactive visualizations and tables.

alt text

Up to eight Hit Calling Algorithms

CRISPRAnalyzeR combines the power of several CRISPR Analysis Workflows and incorporates them into a streamlined and convenient workflow.

You run one analysis and get the information of up to 8 different analysis workflows

We implemented multiple available analysis workflows

  • DESeq2 (based on gene-level read counts)
  • MAGeCK
  • sgRSEA
  • edgeR
  • ScreenBEAM
  • Mann-Whitney Test

Hit Confirmation

Use up to 26 external data ressources to enrich information about your favourite candidate - all information is available within the application and can be saved to your report for documentation

Interactive Report

Finally you can document the screening data and analysis using the interactive report.

You can find an example report HERE.

CRISPRAnalyzeR Report Preview

How to download the CRISPRAnalyzeR

You can also check our live demo, which you can also use to analyse your screening data.

CRISPRAnalyzeR can be downloaded as as source code and is also available for a platform-independent installation as pre-configured docker image.

Please have a look at the installation tutorials below, which will assist you with the installation

We encourage users to obtain the pre-configured application which is described below.

The idea of installing CRISPRAnalyzeR is to provide a single installation within a Lab/Institute, so that everyone can access it via the web browser.
However, you can also also install CRISPRAnalyzeR on your local machine.

Minimum System Requirements

CRISPRAnalyzeR is based on R Shiny and uses many different R packages and tools which are listed separately. For a source code installation, we recommend the use of Ubuntu.

Type Source Code Installation Docker Container Installation
Operating System Ubuntu Any supported OS by Docker
CPU Dual Core (Quad Core recommended) Dual Core (Quad Core recommended)
HDD 512 GB (SSD recommended) 512 GB (SSD recommended)
Additional Software Packages See list below! All included in container


CRISPRAnalyzeR is published under the GPL-2 license and is free for non-commercial use only.

While CRISPRAnalyzeR does not require an additional license for commercial use itself, some included tools strictly require additional licensing.
Please note that Highcharts, the COSMIC database and the Enrichr API access require additional licensing for commercial use.
The authors of this application are not responsible for licensing or license issues - please contact the corresponding companies directly..

Highcharts Licensing Options
Please also have a look here:

COSMIC Licensing Options

ENRICHR Licensing Options

It is your responsibility to obtain all required licenses in case of commercial usage!

Latest Version and Changelog

Version 1.50 (latest)
- many fixes with mouse libraries
- improoved speed
- added new sample data for cell fittnes screen

Version 1.40
- added new library interface for pre-selection of screens
- added pre-made library re-evaluation for addgene-provide libraries
- fixed smaller bugs
- speed increase for some functions
- improved essential genes information
- added Advanced Options to skip FASTQ Quality Report, create own regular expression, use bad-quality libraries

Version 1.20
- added new user interface for data upload
- fixed many sgRNA libraries
- added Addgene sgRNA libraries for easier use
- started with BETA feature for gene essentiality
- improved overall speed

Version 1.17
- fixed BAGEL issues
- added the possibility to download all data from the DATA REVIEW tab
- improved the performance ovberall
- replaced FASTQ handling by new FASTQ and SAM parser based oN RUST -> speed increase by 6x!
- improved report
- added Visualization of GenomeCRISPR data in Hit Confirmation -> Gene Overview
- added Essential / Non-essential gene Read count in Quality Control
- added Essential/non-essential Log2 FC in Hit Calling section -> you can compare the effect to any published CRISPR screened cell line in GenomeCRISPR

OLDER VERSIONS are not available anymore.

User-Interface based installation (recommended) on macOS and Windows

Installation Tutorial

CRISPRAnalyzeR: How to install it using Kitematic

This installation will use a tool called Kitematic to offer a user interface to start, stop or change settings of the CRISPRAnalyzeR.
In principal, you first install and start docker, then install and start kitematic and finally download CRISPRAnalyzeR.

Individual Steps

  1. Download the Docker Installer for your operating system from the Docker Website

  2. Install the downloaded file

  3. Start Docker on your machine (e.g. by double clicking on the Docker icon on windows or Mac). A small docker symbol in the taskbar will tell you that docker is ready.

  4. Download the Docker Community Edition (CE) from the docker website

  5. __Install the Docker COmmunity Edition

  6. Start Kitematic, which comes with it, otherwise you can get it here

  7. Search for CRISPRAnalyzeR

    Search for CRISPRAnalyzeR

    ATTENTION In case you will see a red error message like Could not connect to xxxx, this is an indication that you are behind a proxy server which blocks the access!
    If this is the case, please use a network connection without a proxy OR follow the Installation Procedure for Advanced Users

  8. Select CREATE to install the latest stable version of CRISPRAnalyzeR to install CRISPRAnalyzeR

  9. OPTIONAL If required, you can adjust a couple of parameters, such as a proxy server.
    All parameters are described in more detail below
    To adjust these parameters, click on the Settings tab on the upper right corner:


  10. Hit the START button to start CRISPRAnalyzeR

  11. Adjust the port :

    Before using CRISPRAnalyzeR, you need to adjust the ports by going to Settings -> Ports as illustrated below:


    Then proceed by clicking on SAVE, which will update the software:


  12. Copy http://localhost:8000/CRISPRAnalyzeR/ to the webbrowser to access CRISPRAnalyzeR.

  13. Now you successfully installed and started CRISPRAnalyzeR!

How to Start, Stop or Restart CRISPRAnalyzeR

Hit the start, stop or restart button.


How to adjust the CRISPRAnalyzeR settings

As mentioned below, CRISPRAnalyzeR can be adjusted with several parameters.
With the user-interface provided by Kitematic, you can easily adjust all parameters from the Settings section.

Open Kitematic and click on the CRISPRAnalyzeR image - you will see a SETTING button on the top right.


ATTENTION: For some genome-wide screens, the available "C Stack" memory might not be sufficient to render the report. In this case, please increase the stack limit as shown HERE.

Install specific version

  1. Search for CRISPRAnalyzeR in the Kitematic UI repository

  2. Click on the three dots for more options

    More options

  3. Click on "Selected version"

  4. Select the version you want


  5. Click on the X at the bottom right

  6. Click CREATE

Command Line Installation (advanced users)

Installation Tutorial macOS

CRISPRAnalyzeR: How to install command line version

  1. Download the Docker Installer for your operating system from the Docker Website

  2. Install the downloaded file

  3. Start Docker on your machine (e.g. by double clicking on the Docker icon on windows or Mac). A small docker symbol in the taskbar will tell you that docker is ready.

  4. Open a terminal or command line (macOS: Terminal; Windows: cmd.exe)

  5. Download and run the CRISPRAnalyzeR directly from the online repository (without additional settings)

    docker run --rm -p 8000:8000 boutroslab/crispranalyzer:latest

    It is important to keep the 8000:8000 as this tells the software how to access it via the browser.
    By default, CRISPRAnalyzeR can be accessed by the web-browser using http://localhost/CRISPRAnalyzeR.

    If you want to run a specific version, just replace the latest with the specific version number

    docker run --rm -p 8000:8000 boutroslab/crispranalyzer:1.40

    All pre-configured versions are listed at the Docker Hub.

    ATTENTION: For some genome-wide screens, the available "C Stack" memory might not be sufficient to render the report. In this case, please increase the stack limit as shown HERE.

  6. Familiarize with the parameters you can use to start the CRISPRanalyzeR - they offer proxy settings or additional databases and local sgRNA re-evaluation.

  7. Access CRISPRAnalyzeR using your web-browser - http://localhost/CRISPRAnalyzeR

ATTENTION: For some genome-wide screens, the available "C Stack" memory might not be sufficient to render the report. In this case, please increase the stack limit as shown HERE.

CRISPRAnalyzeR re-evaluates every sgRNA during the analysis process. Thus, it needs to map each sgRNA against the reference genome.
This can be performed locally (does not require a fast internet connection) or via (requires fast internet connection >10 mbit).

By default, CRISPRAnalyzeR uses to re-evaluate your sgRNAs. If you want to perform local sgRNA re-evaluation, please see below.

Update CRISPRAnalyzeR to the latest version

In case you would like to update CRISPRAnalyzer to the latest version, just type

  docker pull boutroslab/crispranalyzer:latest

to download the latest version and then run it as described above:

  docker run --rm -p 8000:8000 boutroslab/crispranalyzer:latest

How to Start and Restart the CRISPRAnalyzeR

You can start and stop the CRISPRanalyzeR using docker.

Available Paramaters to start CRISPRAnalyzeR

CRISPRAnalyzeR has been designed to be installed once on a machine and then accessed via a webbrowser. Therefore, you can adjust all parameters during the start of the CRISPRAnalyzeR.

Parameter Meaning Default Value Accepted Values
websockets_behind_proxy use Websocket protocol TRUE TRUE or FALSE
downloadlogs Allow the download of LOG files RTRUE TRUE or FALSE
verbose_logfiles output of log files TRUE TRUE or FALSE
COSMIC_database Filename of the COSMIC Mutant database (CosmicMutantExport.tsv) NULL CosmicMutantExport.tsv
EnrichR Whether to enable or disable the Enrichr API access TRUE TRUE or FALSE
EnrichR_URL URL to the Enrichr API Any URL
max_upload Maximum size of uploaded files in Megabytes 4096 any number
bowtie_threads Number of bowtie2 threads for mapping 2 any number, must be equal or smaller the number of CPU cores
proxy_url URL to your Proxy server NULL URL or NULL to inactivate
proxy_port Proxy server Port NULL Port number of NULL to inactivate

How to use the parameters with the recommended Kitematic installation

In Kitematic, just go to the settings tab and adjust the options.
Be sure to hit the save button after you have adjusted the settings.


How to use the parameters with the command line

All parameters can be set during the start by the following:

docker run --rm -e PARAMETER1 -e PARAMETER2 -e PARAMETER3 -p 8000:8000 boutroslab/crispranalyzer:latest

this means you always need to add -e in front of the parameters, e.g.:

-e websockets_behind_proxy=TRUE -e verbose_logfiles=TRUE -e bowtie_threads=4


docker run --rm -e bowtie_threads=4 -e proxy_url="" -e proxy_port=80 -p 8000:8000 boutroslab/crispranalyzer:latest

Installation Tutorial Windows

Source Code

For a source code installation you will need to have docker installed, as this will build your own docker image out of the source code and additional dependencies.

Additional Required Software

Software Version Link
Bowtie2 2.29
CRISPR ReEvaluation Tool Latest
Python 2.7.11
Python Scipy latest

How to build the docker image for CRISPRAnalyzeR

Navigate to the folder where this dockerfile is located. This will be the folder that is used to create the docker image file.

In general, CRISPRAnalyzeR source code will be retrieved by cloning. In principle, this can be changed to use any fork of CRISPRAnalzyeR, as long as the file structure remains the same!

Start Docker

Start docker and make sure you have set a proxy, if required.

Download the required dependencies

First download the following dependencies to the directory containing this dockerfile


Clone the CRISPRAnalyzeR source code

Now clone the CRISPRAnalyzeR project into the caR-release-git folder and sync the source to caR-release. The content of caR-release is the source code of CRISPRAnalyzeR and will be used for building the docker image.

mkdir ./caR-release

git clone ./caR-release-git

rsync -rav caR-release-git/ caR-release/source --exclude=.git

Build the image

Finally build the image, which takes 1-3 hours depending on the computer and network speed.

docker build -t CRISPRAnalyzeR .

Test the image

docker run --rm -p 8000:8000 CRISPRAnalyzeR

Check it by opening a browser tab and navigating to


If this works you have successfully created a CRISPRAnalyzeR docker image!

How to use the COSMIC Database and Enrichr API

COSMIC (Catalogue Of Somatic Mutations In Cancer)

Please note: COSMIC Database access only works in the commmand line installation.

The COSMIC database can be found here. By default, we do not provide the COSMIC database due to licensing compatibility. In case you want to use the COSMIC database, please proceed as follows.

  • Visit the COSMIC Database Website
  • If you aim for a commercial use, please see the COSMIC Licensing Information Page
  • Head to the COSMIC download section
  • Download the COSMIC Mutation Data database file
  • Extract the CosmicMutantExport.tsv.gz file to the a database folder DATABASEFOLDER that you can define on your own
  • Tell CRISPRAnalyzeR during the start that you have an external folder with your database files using the -v parameter -v DATABASEFOLDER:/srv/shiny-server/CRISPRAnalyzeR/database and that you would like to have the COSMIC database included via the parameter -e COSMIC_database="CosmicMutantExport.tsv"

Please replace DATABASEFOLDER byt the full path to the directory where you have placed the CosmicMutantExport.tsv!

docker run --rm -v *DATABASEFOLDER*:/srv/shiny-server/CRISPRAnalyzeR/database -e COSMIC_database="CosmicMutantExport.tsv" -p 80:8000 boutroslab/crispranalyzer:latest

Please note that the COSMIC database is loaded during the analysis procedure and requires 1 GB of RAM.

Enrichr API

Enrichr offers API access for a gene set analysis. By default, CRISPRAnalyzeR has the Enrichr API access ENABLED. You can DISBALE the Enrichr API access during the start by setting the paratemer -e disable_EnrichR=TRUE

 docker run --rm -e disable_EnrichR=TRUE -p 8000:8000 boutroslab/crispranalyzer:latest

Please not that you require a license for commercial use. A license can be obtained by contacting the Mount Sinai Technology Development.

More information can be found at the Enrichr Help Page.

How to perform local sgRNA Re-evaluation

Please note: local sgRNA re-evaluation is only supported in the command line installation, not in the Kitematic installation

CRISPRAnalyzeR re-evaluated your sgRNAs during the analysis process. By default, this is done by sending the sgRNAs to and downloading the files again. However, you can also perform a local re-evaluation of your sgRNAs!

You can download the human reference genome (or mus musculus) and tell CRISPRAnalyzeR to perform the re-evaulation locally on your computer. For this, you require at least 60GB of disk space and a pretty fast computer.

Step 1: Download the reference genome
Download the reference genome you need

Step 2: Extract the files to a folder (DATABASEFOLDER) of your desire Extract the downloaded file using gunzip (macOS/Linux) or Zip (Windows) to a DATABASEFOLDER of your desire. Please note that you need to know the exact path to the DATABASEFOLDER! e.g. /home/user1/databases
If you have already setup the COSMIC Database, please make sure you extract the file into that same folder.

Please note: The folder structure MUST be kept, when you extract the file into e.g. /home/user1/databases

it will create a folder structure like that:
e.g. /home/user1/databases/data/scripts/crispr_databases/homo_sapiens

Step 3: start CRISPRAnalyzeR and tell it where you files are Using the command line, start CRISPRAnalyzeR and provide the database path DATABASEPATH - so that CRISPRAnalyzeR know where to look for your data.

Please note: if you have setup the COSMIC database already, just extract the files in the same folder and you do not need to do anything in addition

Again, replace DATABASEFOLDER with your absolute path.

docker run --rm -v *DATABASEFOLDER*:/srv/shiny-server/CRISPRAnalyzeR/database -p 8000:8000 boutroslab/crispranalyzer:latest

How to perform an Analysis using CRISPRAnalyzeR


Download Sample Data

CRISPRAnalyzeR comes with read count sample data that can be accessed from the help on the data upload section.

Moreover, we offer additional sample data that you can download from our website:

  • Drug Resistance Screen Data from CRISPR Library Designer
  • Essential Genes Screen Data using the TKOv1 library

Drug Resistance Screen Data (12000 sgRNAs)

This data was published before in F. Heigwer*, T. Zhan*, M. Breinig, J. Winter, D. Brügemann, S. Leible, M. Boutros, CRISPR library designer (CLD): software for multispecies design of single guide RNA libraries, Genome Biol., 2016, DOI:10.1186/s13059-016-0915-2

Download Read Count Data

You can download pre-made read count files for data analysis from here.
These include four read count text files as well as the sgRNA library file in FASTA format.

You can directly use these files with the default parameters within CRISPRAnalyzeR.

Download FASTQ Sequencing Data

You can download FASTQ Sequencing files from here.
These include four NGS raw data files in compressed fastq format as well as the sgRNA library file in FASTA format.

You can directly use these files with the default parameters within CRISPRAnalyzeR.

Toronto Knockout Library Data (90000 sgRNAs)

This data was published in Steinhart,Z. et al. (2016) Genome-wide CRISPR screens reveal a Wnt-FZD5 signaling circuit as a druggable vulnerability of RNF43-mutant pancreatic tumors. Nat. Med.

Download Read Count Data

You can download raw read count data including a TKO sgNRA library FASTA file from here

In order to use these files, you need to adjust the gene identifier from Ensembl Gene ID to HGNC Symbol in the Analysis Settings.

Pre-made sgRNA library FASTA files

CRISPRAnalyzeR offers pre-made sgRNA library files in FASTA format for use. You can use them along with your read count (please see the format) or raw NGS sequencing files (.fastq.fz).

All pre-made libraries can be found here

Library Name Lab Pubmed ID Addgene Download
CLD Benchmarking Boutros 27013184 NA FASTA
Gecko V2 Zhang 25075903 here A+B FASTA A FASTA B FASTA
Gecko V2 MOUSE Zhang 25075903 here A FASTA B FASTA
Torronto KnockOut Library (TKOv1) Moffat 26627737 here 90K FASTA & 85K FASTA
Brunello Doench 26780180 here FASTA
CRISPRa / CRISPRi Weissmann 25307932 here CRISPRa V2 CRISPRi V2
Human Lentiviral sgRNA sub libraries Sabatini 24336569 here not available yet

FASTQ Common Extraction Settings for published CRISPR libraries

If you use FASTQ sequencing files directly, CRISPRAnalyzeR requires the use of a so-called 'regular expression' to extract the sgRNA target sequence from your sequencing data.

However, the CRISPRAnalzyeR comes with some pre-defined settings for commonly used screening libraries and their vector systems. In case you don't know which is the best setting for your screen, please do not hesitate and create an issue or write me an email.

alt text

Plasmid Name Lab Addgene ID Regular Expression
Lenticrisp V2 Feng Zhang 52961 Default ACC(.{20,21})G
Lentiguide (Puro) Feng Zhang 52963 Default ACC(.{20,21})G
Human Lentivirus Library V1 Haoquan Wu 69763 GTTT(.{20})G
pLCKO (Moffat TKO) Moffat 73311 ACCG(.{20,21})G
pU6-sgRNA EF1Alpha-puro-T2A-BFP (CRISPRa/i) Weissman 60955, 62217, 60956 GTTG(.{20})G

How must the Data be Formatted?

CRISPRAnalyzeR requires you to upload a sgRNA library FASTA file which contains all sgRNAs of your screen. Moreover, you can either use your sequencing data directly as gzipped FASTQ files (.fastq.gz) or already calculated, non-normalized, read count files (.txt).

Format of sgRNA library FASTA File

A sgRNA library file must be in FASTA format and include the unique sgRNA identifier as well as the target sequence in 5'->3' direction. Please make sure that only the exact target sequence is used here.


Moreover, the gene identifier needs to be a part of the unique sgRNA identifier as shown here

alt text

so that CRISPRAnalyzeR knows which sgRNA belongs to which gene.

Please note that all sgRNA identifiers need to be unique.

Format of Raw Sequencing Data (.fastq.gz)

Next Generation Sequencing files usually are provided in FASTQ format:

@M01100:47:000000000-AH40C:1:1101:12289:2057 1:N:0:4
@M01100:47:000000000-AH40C:1:1101:8758:2058 1:N:0:4

For easier use and faster data handling, CRISPRAnalyzeR required gzipped FASTQ files (.fastq.gz).
FASTQ files are usually provided in a gzipped format by the sequencing facility.

Format of Read Count Files (.txt)

CRISPRAnalyzeR requires a separate read count file for each sample, which needs to be tab-separated.

sgRNA                                Count

The first column describes which sgRNA identifier (must be the same as in the sgRNA library FASTA file) was used, the second column describes how many reads were present for this unique sgRNA.

Please note that all sgRNA identifiers need to be unique.


All available tutorials can be found on Youtube and are also available from within CRISPRAnalyzeR.

Upload Read Count Data and Setup Screen

CRISPRAnalyzeR Data Upload

Assessing Screen Quality

CRISPRAnalyzeR Tutorial on Screen Quality

Debugging for Advanced Users and System Administrators

CRISPRAnalyzeR can provide you the log files generated, which can help you to identify potential issues and me to fix bugs or add new features.
In order to see the logs conveniently without struggeling into the running docker application itself, you can ask CRISPRAnalyzeR to export the logs in real-time to any folder using the start parameter -v in a similar way as it is done to include the COSMIC database or local sgRNA re-evaluation.

LOGFOLDER is a local folder you create to which CRISPRAnalyzeR will save and update the logs in real time.

Start CRISPRAnalyzeR using the -v command, e.g.

docker run --rm -v *LOGFOLDER*:/srv/shiny-server/CRISPRAnalyzeR/log -p 8000:8000 boutroslab/crispranalyzer:latest

Increasing the core ulimit

For some genome-wide screens, CRISPRAnalyzeR can abort the report generation due to limited amount of storage allocated for this operation. You can force docker to give more space to CRISPRAnalyzeR by increasing the ulimit setting (in kilobytes)

For 8 GB of the so called c stack space, you need to set the value of 8GB in Kb - 8.589.934.592 with --ulimit stack=8589934592:8589934592.

docker run --rm --ulimit stack=8589934592:8589934592 -v *LOGFOLDER*:/srv/shiny-server/CRISPRAnalyzeR/log -p 8000:8000 boutroslab/crispranalyzer:latest

Live Demo Online Status

A status page for the live demo availability can be found here.

Contact and Citation

Jan Winter -

Twitter: @winterj86