Fastqc Tutorial

FastQC: A Comprehensive Guide for Quality Control of High Throughput Sequencing Data


High throughput sequencing technologies have revolutionized the field of genomics by allowing the generation of massive amounts of data in a relatively short time. However, with great power comes great responsibility, and in this case, it's the responsibility to ensure that the data generated is of high quality. This is where FastQC comes into play.

FastQC is a quality control tool designed for high throughput sequence data. It's a Java-based application that provides a modular set of analyses to quickly give an impression of whether the data has any problems that you should be aware of before proceeding with further analysis. The main functions of FastQC include:

  • Importing data from BAM, SAM, or FastQ files (any variant)
  • Providing a quick overview to identify potential problems
  • Generating summary graphs and tables for a rapid assessment of the data
  • Exporting results to an HTML-based permanent report
  • Allowing offline operation for automated report generation without the need for the interactive application

The tool is mature and stable, with its code released under GPL v3 or later. It's developed and maintained by the Babraham Institute and has become an essential part of many bioinformatics pipelines.


To get started with FastQC, you'll need to have a suitable Java Runtime Environment (JRE) installed on your computer. The tool also relies on the Picard BAM/SAM Libraries, but these are included in the download, so you don't need to worry about installing them separately.

You can download FastQC from the Babraham Bioinformatics website. The installation process is straightforward:

  1. Download the appropriate version for your operating system.
  2. Unzip the downloaded file to a directory of your choice.
  3. Run the fastqc executable found within the unzipped folder.

For Linux users, you might need to make the fastqc file executable by running chmod +x fastqc in the terminal.

Quick Start

Once FastQC is installed, running a basic quality control check on your sequence data is simple. Here's how you can do it:

  1. Open a terminal window (or command prompt on Windows).
  2. Navigate to the directory containing your FastQ files.
  3. Run the command fastqc yourdata.fastq to start the analysis.

FastQC will process the file and generate an HTML report along with a zipped archive containing the report and supporting files. You can open the HTML report in any web browser to view the results.

Code Examples Of Popular Commands

FastQC offers a variety of commands that you can use to customize your quality control checks. Here are five popular commands and what they do:

  1. Analyzing Multiple Files: If you have multiple FastQ files, you can analyze them all at once by listing them after the fastqc command, separated by spaces. For example: fastqc file1.fastq file2.fastq file3.fastq.

  2. Specifying Output Directory: To specify a different directory for the output files, use the -o option followed by the directory path. For example: fastqc -o /path/to/output/ yourdata.fastq.

  3. Skipping the ZIP File Creation: By default, FastQC creates a zipped file containing the report and data files. If you only want the HTML report, use the --noextract option. For example: fastqc --noextract yourdata.fastq.

  4. Adjusting the Number of Threads: FastQC can process multiple files in parallel using multiple threads. Use the -t option followed by the number of threads you want to use. For example: fastqc -t 4 file1.fastq file2.fastq.

  5. Running in Non-Interactive Mode: If you're running FastQC as part of a larger automated pipeline, you might want to run it in non-interactive mode. Use the --nogroup option to disable the interactive grouping of bases for each sequence. For example: fastqc --nogroup yourdata.fastq.

Remember, these are just a few examples of what you can do with FastQC. The tool is versatile and can be adapted to fit into various bioinformatics workflows. Always refer to the official documentation for a complete list of commands and options.

FastQC is an invaluable tool for anyone working with high throughput sequencing data. By providing a quick and easy way to assess the quality of your data, it helps ensure that your downstream analyses are based on reliable information. Whether you're a seasoned bioinformatician or just starting out, mastering FastQC is a step towards achieving high-quality genomics research.