nf-core/eager is a scalable and reproducible bioinformatics best-practise processing pipeline for genomic NGS sequencing data, with a focus on ancient DNA (aDNA) data. It is ideal for the (palaeo)genomic analysis of humans, animals, plants, microbes and even microbiomes.

Pipeline summary

  • (Optionally) create reference genome indices for mapping (bwa, samtools, and picard)
  • Sequencing quality control (FastQC, Falco)
  • Sequencing adapter removal, paired-end data merging (AdapterRemoval)
  • Read mapping to reference using (bwa aln, bwa mem, CircularMapper, or bowtie2)
  • Post-mapping processing, statistics and conversion to bam (samtools, and preseq)
  • Ancient DNA C-to-T damage pattern visualisation (DamageProfiler)
  • PCR duplicate removal (DeDup or MarkDuplicates)
  • Post-mapping statistics and BAM quality control (Qualimap)
  • Library Complexity Estimation (preseq)
  • Overall pipeline statistics summaries (MultiQC)

Additional Steps

Additional functionality contained by the pipeline currently includes:


  • Automatic merging of complex sequencing setups (e.g. multiple lanes, sequencing configurations, library types)


  • Illumina two-coloured sequencer poly-G tail removal (fastp)
  • Post-AdapterRemoval trimming of FASTQ files prior mapping (fastp)
  • Automatic conversion of unmapped reads to FASTQ (samtools)
  • Host DNA (mapped reads) stripping from input FASTQ files (for sensitive samples)

aDNA Damage manipulation

  • Damage removal/clipping for UDG+/UDG-half treatment protocols (BamUtil)
  • Damaged reads extraction and assessment (PMDTools)
  • Nuclear DNA contamination estimation of human samples (angsd)


  • Creation of VCF genotyping files (GATK UnifiedGenotyper, GATK HaplotypeCaller and FreeBayes)
  • Creation of EIGENSTRAT genotyping files (pileupCaller)
  • Creation of Genotype Likelihood files (angsd)
  • Consensus sequence FASTA creation (VCF2Genome)
  • SNP Table generation (MultiVCFAnalyzer)

Biological Information

  • Mitochondrial to Nuclear read ratio calculation (MtNucRatioCalculator)
  • Statistical sex determination of human individuals (Sex.DetERRmine)

Metagenomic Screening

  • Low-sequenced complexity filtering (BBduk or PRINSEQ++)
  • Taxonomic binner with alignment (MALT)
  • Taxonomic binner without alignment (Kraken2)
  • aDNA characteristic screening of taxonomically binned data from MALT (MaltExtract)

Functionality Overview

A graphical overview of suggested routes through the pipeline depending on context can be seen below.

nf-core/eager metro map



If you are new to Nextflow and nf-core, please refer to this page on how to set-up Nextflow. Make sure to test your setup with -profile test before running the workflow on actual data.

First, prepare a samplesheet with your input data that looks as follows:


ample_id	library_id	lane	colour_chemistry	pairment	strandedness	damage_treatment	r1	r2	bam	bam_reference_id
sample1	sample1_a	1	4	paired	double	none	/<path>/<to>/sample1_a_l1_r1.fq.gz /<path>/<to>/sample1_a_l1_r2.fq.gz	NA	NA
sample2	sample2_a	2	2	single	double	full	/<path>/<to>/sample2_a_l1_r1.fq.gz	NA	NA	NA
sample3	sample3_a	8	4	single	double	half	NA	NA	/<path>/<to>/sample31_a.bam	Mammoth_MT_Krause

Each row represents a fastq file (single-end), pair of fastq files (paired end), and/or a bam file.

Now, you can run the pipeline using:

nextflow run nf-core/eager \
   -profile <docker/singularity/.../institute> \
   --input samplesheet.csv \
   --fasta  '<your_reference>.fasta' \
   --outdir <OUTDIR>

Please provide pipeline parameters via the CLI or Nextflow -params-file option. Custom config files including those provided by the -c Nextflow option can be used to provide any configuration except for parameters;

see docs.

For more details and further functionality, please refer to the usage documentation and the parameter documentation.

Pipeline output

To see the results of an example test run with a full size dataset refer to the results tab on the nf-core website pipeline page. For more details about the output files and reports, please refer to the output documentation.


This pipeline was established by Alexander Peltzer (apeltzer) and James A. Fellows Yates. Version two had major contributions from Stephen Clayton, Thiseas C. Lamnidis, Maxime Borry, Zandra Fagernäs, Aida Andrades Valtueña and Maxime Garcia and the nf-core community.

We thank the following people for their extensive assistance in the development of this pipeline:

Contributions and Support

If you would like to contribute to this pipeline, please see the contributing guidelines.

For further information or help, don’t hesitate to get in touch on the Slack #eager channel (you can join with this invite).


If you use nf-core/eager for your analysis, please cite it using the following doi:

Fellows Yates JA, Lamnidis TC, Borry M, Valtueña Andrades A, Fagernäs Z, Clayton S, Garcia MU, Neukamm J, Peltzer A. 2021. Reproducible, portable, and efficient ancient genome reconstruction with nf-core/eager. PeerJ 9

. DOI: 10.7717/peerj.10947.

An extensive list of references for the tools used by the pipeline can be found in the file.

You can cite the nf-core publication as follows:

The nf-core framework for community-curated bioinformatics pipelines.

Philip Ewels, Alexander Peltzer, Sven Fillinger, Harshil Patel, Johannes Alneberg, Andreas Wilm, Maxime Ulysse Garcia, Paolo Di Tommaso & Sven Nahnsen.

Nat Biotechnol. 2020 Feb 13. doi: 10.1038/s41587-020-0439-x.