Analysis Guides/

Quality Control and Filtering of 10x Genomics Epi Multiome Data: Two Tutorials in Google Colab

Mar 12, 2026
Share via:

Note: 10x Genomics does not provide support for community-developed tools and makes no guarantees regarding their function or performance. Please contact tool developers with any questions. If you have feedback about Analysis Guides, please email analysis-guides@10xgenomics.com.

This guide outlines a workflow for performing Quality Control (QC) and filtering on 10x Genomics Multiome data, with a primary focus on the ATAC-seq modality. Following initial processing with Cell Ranger ARC and before downstream analysis, implementing these QC strategies is a critical step to identify and mitigate the impact of biological noise and technical artifacts. For a general introduction to Epi Multiome data analysis, see the Analysis Guide, Next Steps in Epi Multiome Downstream Data Analysis.

Using a publicly available 10x Genomics PBMC dataset, this tutorial explores various quality control metrics at the level of both individual barcodes and individual peaks. Unlike gene expression features (genes) which are fixed by a genomic reference, ATAC-seq features (peaks) are dynamically inferred from the data. Therefore, evaluating peak quality is essential for a robust analysis.

The strategies outlined here serve as a framework for data exploration rather than a prescriptive set of rules. Users are encouraged to adapt these workflows to ensure the data is interpreted correctly within the specific context of their biological questions.

Two complementary tutorials are included. The first (in R) walks through the full QC and data filtering steps. Quite often, setting filtering thresholds can be an iterative process. To make it easier, a second tutorial (in Python) demonstrates how to use interactive plots to quickly identify the most suitable thresholds.

To begin, open the Google Colab notebook:

Open Google Colab notebook

The key steps described in this tutorial include:

  • Installation of R packages: Setting up the R environment and installing the necessary libraries.
  • Load required input files: Importing the essential Cell Ranger ARC outputs, including the fragments file, the filtered feature-barcode matrix, per-barcode metadata, and cell-type annotations.
  • Create Seurat object: Create a Seurat object with both gene expression and ATAC data.
  • Explore metrics for ATAC-Seq quality control: Calculate and visualize key quality control metrics. Perform quality control at the level of both individual barcodes and peaks.
  • Normalization and Dimensionality reduction with Seurat and Signac: Separately normalize both the gene expression and ATAC data. Compare UMAP projections of the individual libraries with a weighted nearest neighbor (WNN) analysis that combines modalities. Visualize major cell types on the resulting projections.

This companion tutorial provides an interactive joint visualization to demonstrate how the metrics in the first colab are interrelated and assist you in defining the appropriate thresholds. Once you are satisfied, you can use these threshold values to customize the code in the first tutorial.

To test out this tutorial, open the Google Colab notebook:

Open Google Colab notebook

The key steps described in this tutorial include:

  • Import required libraries and load data: We have provided data files generated (e.g., UMAP projections and metadata) in the main tutorial to be used as input in this notebook.
  • Quality control for Epi Multiome ATAC + Gene Expression data: We provide a linked visualization of major QC metrics along with sliders that can be used to adjust thresholds on the different metrics that are used as filters.
  • Cell typing for Epi Multiome ATAC + Gene Expression data: Map cell annotations from Cell Ranger ARC onto the QC plots. Toggle the cell types in the legend to see where each cell type falls on each plot.
Stay connected with latest technical workflow and software updatesSubscribe to newsletter