This feature is only available in the Rust rewrite, pending merge upstream.
Report Templates
Overview
FastQC supports multiple HTML report templates via the --template / -t
CLI flag. This works like MultiQC's template system: the default template produces
the familiar FastQC report, while alternative templates can change the layout,
styling, and chart format without affecting the analysis.
fastqc --template modern sample.fastq.gz Available templates
classic (default)
The original FastQC report layout. Produces byte-identical HTML to Java FastQC, with PNG charts embedded as base64 data URIs and the same fixed sidebar + main content layout.
This is the default when --template is not specified.
modern
A redesigned report layout ported from upstream PR #161, inspired by fastqc-viz. Key features:
- Responsive sidebar — sticky sidebar with flexbox layout, mobile-friendly hamburger menu (pure CSS, no JavaScript)
- Inline SVG charts — charts are embedded as optimised inline SVG instead of PNG, giving crisp rendering at any zoom level
- SVG status icons — Material Design pass/warn/fail icons replace the PNG icons, with styled text badges in the sidebar
- Help text accordions — each module has a CSS-only toggle to show/hide its help documentation inline
- New FastQC logo — a refreshed SVG logo used in the sidebar and mobile navigation
- Print-friendly — CSS print styles for PDF export
Text output (fastqc_data.txt, summary.txt) is identical
regardless of which template is used. Only the HTML report and the icons in the zip
archive differ.
SVG optimisations
The modern template applies several post-processing optimisations to the inline SVGs to keep file sizes small:
- CSS classes — repeated attributes like
shape-renderingandfont-familyare moved to a<style>block - Attribute shortening — verbose
style="fill:rgb(...);stroke:none"replaced withfill="rgb(...)" - Lines → polylines — consecutive same-colour line segments in data series are merged into single
<polyline>elements - Rect run-length encoding — adjacent same-colour rectangles (e.g. in the per-tile quality heatmap) are merged into wider rectangles
These optimisations reduce the modern template's file size to roughly 60% of the classic template, and to around 13% of the classic size when gzip-compressed (SVG text compresses far better than base64-encoded PNGs).
File size comparison
Example on a 27M-read FASTQ file:
| Template | Raw size | Gzipped |
|---|---|---|
classic (PNG base64) | 392 KB | 254 KB |
modern (optimised SVG) | 249 KB | 33 KB |