To install Seurat, R version 4.0 or greater is required. We also recommend installing RStudio.

Seurat v5: Install from CRAN

Seurat is available on CRAN for all systems. To install, run:

# Enter commands in R (or R studio, if installed)
install.packages('Seurat')
library(Seurat)

Seurat does not require, but makes use of, packages developed by other labs that can substantially enhance speed and performance. These include presto (Korsunsky/Raychaudhuri Labs), BPCells (Greenleaf Lab), and glmGamPoi (Huber Lab). To install these packages, run:

setRepositories(ind = 1:3, addURLs = c('https://satijalab.r-universe.dev', 'https://bnprks.r-universe.dev/'))
install.packages(c("BPCells", "presto", "glmGamPoi"))

We also recommend installing these additional packages, which are used in our vignettes, and enhance the functionality of Seurat:

  • Signac: analysis of single-cell chromatin data
  • SeuratData: automatically load datasets pre-packaged as Seurat objects
  • Azimuth: local annotation of scRNA-seq and scATAC-seq queries across multiple organs and tissues
  • SeuratWrappers: enables use of additional integration and differential expression methods
install.packages('Signac')
remotes::install_github("satijalab/seurat-data", quiet = TRUE)
remotes::install_github("satijalab/azimuth", quiet = TRUE)
remotes::install_github("satijalab/seurat-wrappers", quiet = TRUE)

Install the development version of Seurat

The development version of Seurat is available on GitHub. Note that it may be necessary to restart R after installation to avoid conflicts with R registering previously installed versions of Seurat.

To install the development version, run:

# Enter commands in R (or R studio, if installed)
# Install the remotes package
install.packages('remotes')
remotes::install_github(repo = 'satijalab/seurat', ref = 'main')
library(Seurat)

Install previous versions of Seurat

Seurat v4 & older versions of Seurat, from Seurat v2.0.1 and up, are hosted in CRAN’s archive. To install, run:

# Install the remotes package 
install.packages('remotes')
# Replace 'X.X.X' with your desired version
remotes::install_version(package = 'Seurat', version = package_version('X.X.X'))

For versions of Seurat older than those hosted on CRAN (versions 1.3.0 and 1.4.0), please download the packaged source code as a tarball (.tar.gz) from our releases page and install via:

install.packages('Seurat_X.X.X.tar.gz', repos = NULL, type = 'source') 

Docker

We provide Docker images for Seurat via Docker Hub.

To pull the latest image from the command line:

docker pull satijalab/seurat:latest

To use as a base image in a new Dockerfile:

FROM satijalab/seurat:latest