Examples
Worked examples
- Is an instance
A genomics paper distributing its analysis as a Snakemake workflow with a `--use-conda` flag.
- Is an instance
A Snakemake pipeline executed locally for development and on Slurm for production.
Counter-examples
Looks similar, but isn't
- Not an instance
A pure CWL pipeline (different language).
- Not an instance
A bash script with no DAG inference.
Editorial commentary
Snakemake is a Python-based workflow management system, created by Johannes Köster (then at the University of Duisburg-Essen) and first described in a 2012 Bioinformatics paper, that expresses a computational pipeline as a set of rules — each with declared inputs, outputs, and a shell or script body — and automatically infers a directed acyclic graph (DAG) of jobs from those file-based dependencies, closely following the Make paradigm Snakemake’s name references.
Why it matters for reproducibility specifically
Because Snakemake infers execution order from declared file dependencies rather than a hand-written script sequence, re-running a workflow after a single input changes only re-executes the affected downstream rules — and because the same workflow definition can integrate per-rule conda environments or container images and execute unchanged on a laptop, an HPC cluster (via Slurm and similar schedulers), or cloud compute, the same pipeline definition that produced a paper’s results can, in principle, be handed to a reviewer or reused by another lab without re-deriving the analysis logic. Snakemake also produces provenance metadata describing which rule, environment, and input versions produced each output file.
How it differs from adjacent workflow tools
Snakemake and Nextflow are workflow languages tightly coupled to their own execution engines; CWL (Common Workflow Language) and WDL (Workflow Description Language) are, by contrast, portable declarative interchange formats designed to be run by any conformant engine (cwltool, Toil, Cromwell, miniWDL, and others). Snakemake’s advantage is a lower barrier to entry for a Python-literate researcher — rules are close to ordinary Python — at the cost of being less portable across execution engines than a CWL or WDL pipeline. The ‘concept’ qualifier on this entry marks it as covering that methodological pattern (rule-based, DAG-inferring workflow management) rather than tracking Snakemake’s own release history.
References
- Köster J., Rahmann S., ‘Snakemake — a scalable bioinformatics workflow engine’, Bioinformatics, 2012.
- Mölder F. et al., ‘Sustainable data analysis with Snakemake’, F1000Research, 2021.
Also known as
Snakemake
Machine-readable encodings
Use in your systems
<role vocab="credit"
vocab-identifier="https://casrai.org/dictionary/"
vocab-term="Snakemake (concept)"
vocab-term-identifier="https://casrai.org/dictionary/term/snakemake-concept" />{
"@context": "https://schema.org",
"@type": "DefinedTerm",
"@id": "https://casrai.org/dictionary/term/snakemake-concept",
"name": "Snakemake (concept)",
"identifier": "https://casrai.org/dictionary/term/snakemake-concept",
"description": "A Python-based workflow management system that expresses computational pipelines as rules with explicit inputs, outputs, and shell or script bodies, and infers a directed acyclic graph (DAG) of jobs from those rules.",
"inDefinedTermSet": "https://casrai.org/dictionary/domain/reproducibility#set",
"url": "https://casrai.org/dictionary/term/snakemake-concept",
"sameAs": [
"Snakemake"
],
"license": "https://creativecommons.org/licenses/by/4.0/",
"publisher": {
"@id": "https://casrai.org/#organization"
},
"author": {
"@id": "https://casrai.org/#editorial-team"
},
"datePublished": "2026-05-21T02:22:49",
"dateModified": "2026-08-22T19:52:11",
"inLanguage": "en-GB",
"isAccessibleForFree": true
}







