MultiQC

Introduction

MultiQC is a tool that aggregates report results from many other bioinformatics tools into a single and intuitive report. It is especially useful after running tools like FastQC — instead of digging through separate FastQC output files, you get a combined overview that is easier to parse.

Requirements

As a package that uses python-based dependencies, MultiQC can be quickly installed by the user on their home folder or project folder using conda environments. Therefore, requirements are usually handled automatically by the conda environments. Warning: Conda environments can use signficant storage space depending on the number of packages installed on them. Therefore, if the user decides to install conda environment on their home folder, rather than a project folder, we recommend the users to consider the available storage capacity on their home folder before setting new conda environments.

Installation

# Requirement: The following steps can be performed only after loading the conda modules

# Run the code block below just once (ref: https://bioconda.github.io).
# This block of updates the channels and priorities on ~/.condarc
conda config --add channels bioconda
conda config --add channels conda-forge
conda config --set channel_priority strict

# Create a conda environment.
# We use prefix for separation of scopes between projects, but the user can omit that parameter.
# The --prefix parameter changes the location of the conda environment named seqtools to ~/biotools/
conda create -y --prefix ~/biotools/seqtools python=3.9.*

# Install multiqc
# Note: since a custom location was supplied (--prefix), we may need to set that parameter in other conda commands.
conda install -y --prefix ~/biotools/seqtools multiqc

Usage

The following code snippet can be used to create a SLURM batch script for generating a MultiQC report after running other QC or alignment tools. Adjust paths as needed for your project.

# Path to Working Directory
myWorkDir="/u/$(whoami)/test-realm"
cd $myWorkDir

# Path to CONDA environment
CONDAENV="/u/$(whoami)/biotools/seqtools/"

## MultiQC uses reports produced by other tools like FASTQC and summmarize them in a single and effective report
## For this usage example, we will assume the user will generate single reports with FASTQC and summarize them with MULTIQC
## -- FASTQ files are on $myWorkDir/seqs/*.fastq (required)
## -- FASTQC reports will be saved on $myWorkDir/fqc_reports
## -- MULTIQC reports will be saved on $myWorkDir/mqc_report

# Run FASTQC
mkdir -p $myWorkDir/fqc_reports
fastqc -o $myWorkDir/fqc_reports/ $myWorkDir/seqs/*.fastq

# Run MultiQC -- Note: prefix is used to link with the correct conda environment
mkdir -p $myWorkDir/mqc_report
conda run --prefix $CONDAENV multiqc $myWorkDir/fqc_reports -o $myWorkDir/mqc_report

References

  1. Ewels P., Magnusson M., Lundin S., Käller M. (2016). MultiQC: summarize analysis results for multiple tools and samples in a single report. Bioinformatics, 32(19):3047–3048.

  2. MultiQC documentation: https://seqera.io/multiqc/

  3. Andrews S. (2010). FastQC: a quality control tool for high throughput sequence data. Available online at: https://www.bioinformatics.babraham.ac.uk/projects/fastqc/

  4. conda-forge. Miniforge 3 (Software). Version 25.7.0. conda-forge, 2025, https://github.com/conda-forge/miniforge