Skip to content
Transcriptomicslatest-release

riboseq

nf-core/riboseq

Analysis of ribosome profiling, or Ribo-seq (also named ribosome footprinting)

version2.0.011d66a3b8aSep 15, 2026 Upstream Usage docs

Key tools

AGATanota2seqBBMapBEDToolsBowtie2DESeq2DOTSeqfastpFastQCgffread / GffComparekallistoMultiQCplastidPRICE / GediRibo-TISHRiboCodeRiboDetectorRibotricerriboWaltzRp-BpSalmonSAMtoolsseqkitMMseqs2SortMeRNASTARStringTieSummarizedExperimentTrim Galore!tximportUCSC bedGraphToBigWigUMI-toolsUMICollapse

Run it

nfclaw
nfclaw run riboseq --input samplesheet.csv --outdir results -profile docker
raw nextflow
nextflow run pipelines/riboseq/upstream -profile docker --input samplesheet.csv --outdir results
demo · bundled test profile
nfclaw run riboseq --demo --outdir results # adds the upstream test profile (-profile test,docker)

Inputs

columntyperequiredallowed valuesconstraints
samplestringyesmatches ^\S+$
fastq_1string (file path)yesmatches ^([\S\s]*\/)?[^\s\/]+\.f(ast)?q\.gz$
fastq_2string (file path)nomatches ^([\S\s]*\/)?[^\s\/]+\.f(ast)?q\.gz$
strandednessstringyesforward, reverse, unstranded, auto
typestringyesriboseq, rnaseq, tiseq
with_umibooleanno
trim_lengthinteger or stringno
pairstring or integerno

--input must match ^\S+\.(csv|tsv|json|yaml|yml)$.

For tabular CSV/TSV input, use this header (the columns the schema requires); fill each value per the table above and reference.md (no example value is invented here):

csv
sample,fastq_1,strandedness,type

Any of the optional columns above may be appended to the header when your data needs them: fastq_2, with_umi, trim_length, pair.

From data files. --input may also be the data files — a directory (searched recursively), a quoted glob, or files (--input once per file) — from which nfclaw writes this samplesheet: sample from file names; fastq_1/fastq_2 from FastQ files (mates paired by _R1/_R2, or by _1/_2 when their read names show they are mates). Set the required columns no file determines with --sheet-set COLUMN=VALUE (a constant or a {sample}/{lane} template): strandedness (one of forward, reverse, unstranded, auto); type (one of riboseq, rnaseq, tiseq). Preview it with --check; a run records it in <outdir>/provenance/ for replay.

Reference genome

No reference genome is set by default: supply your own reference. The schema declares AWS iGenomes at s3://ngi-igenomes/igenomes/; selecting --genome <id> uses the paths in the pipeline's reference configuration. Access to that remote source is required. To supply your own reference, use e.g. --fasta; the reference_genome_options group in reference.md lists every reference option. Set --igenomes-ignore true to disable the lookup entirely. Confirm the selected reference's paths and source in the pinned upstream/nextflow.config and upstream/conf/ before running.

Resources

Resource requests follow the pipeline's configs and selected profiles. nf-core's resource labels often assume a server — a single step can request far more memory than a workstation has, and retry rules can increase requests. If a run fails with Process requirement exceeds available memory (or CPUs), cap every request, and every retry, at what this machine actually has:

bash
nfclaw run riboseq --input samplesheet.csv --outdir results -profile docker \
--limit-cpus 4 --limit-memory 15.GB

nfclaw turns those into Nextflow's process.resourceLimits and passes them as a -c config — the mechanism nf-core prescribes for exactly this (docs). Set them to the machine's real capacity. --limit-time DURATION also caps how long any one task may run: a task that needs longer is stopped, and so is every retry, so set it only as a deliberate ceiling, never as a guess at how long the analysis takes. The generated config is kept in <outdir>/provenance/, so commands.sh replays the run under the same ceiling.

Nextflow engine

This release declares nextflowVersion = '!>=25.10.4'.

To pin this release's declared minimum engine — useful when a newer Nextflow has incompatible config parsing:

bash
nfclaw run riboseq ... --nxf-ver 25.10.4

--nxf-ver is recorded in <outdir>/provenance/, so the replay uses the same engine. See known-issues.

Demo

bash
nfclaw run riboseq --demo --outdir results # adds the upstream test profile (-profile test,docker)
<!-- Generated from nf-core/riboseq@11d66a3b8ae1f41f9c385af36bd431c35bf015ab. Do not edit by hand. -->

Samplesheet

A CSV with this header (the columns the schema requires). Fill each value per the constraints below; optional columns from the table may be appended.

samplesheet.csv header
sample,fastq_1,strandedness,type
ColumnTypeRequiredAllowed / constraints
samplestringrequiredmatches ^\S+$
fastq_1string (file path)requiredmatches ^([\S\s]*\/)?[^\s\/]+\.f(ast)?q\.gz$
fastq_2string (file path)optionalmatches ^([\S\s]*\/)?[^\s\/]+\.f(ast)?q\.gz$
strandednessstringrequiredforwardreverseunstrandedauto
typestringrequiredriboseqrnaseqtiseq
with_umibooleanoptional—
trim_lengthinteger or stringoptional—
pairstring or integeroptional—

Required parameters

--inputstring (file path)

Path to comma-separated file containing information about the samples in the experiment.

Constraint · matches ^\S+\.(csv|tsv|json|yaml|yml)$

--outdirstring (directory path)

The output directory where the results will be saved. You have to use absolute paths to storage on Cloud infrastructure.

Parameter explorer

147 parameters · 11 groups

Every parameter from the pinned nextflow_schema.json. nfclaw checks explicit values before launch; complex rules use the pinned pipeline's runtime validation. Search, filter by group, and expand any parameter for its default, allowed values and constraints.

127 parameters · 20 hidden

Alignment options14

Specifies the alignment algorithm to use - available options are currently 'star'.

Create a CSI index for BAM files instead of the traditional BAI index. This will be required for genomes with larger chromosome sizes.

Extra arguments to pass to the kallisto quant command in addition to defaults defined by the pipeline.

Extra arguments to pass to Salmon quant command in addition to defaults defined by the pipeline.

Extra arguments to pass to STAR alignment command in addition to defaults defined by the pipeline. Only available for the STAR-Salmon route.

Estimated average fragment length required by kallisto for single-end libraries.

Estimated standard deviation of the fragment length required by kallisto for single-end libraries.

Pseudo-aligner used for translational efficiency quantification under --te_quantification_method pseudo.

Kmer length passed to Salmon indexing for pseudo-alignment quantification.

Override Salmon library type inferred based on strandedness defined in meta object.

Sequencing center information to be added to read group of BAM files.

When using pre-built STAR indices do not re-extract and use splice junctions from the GTF file.

The fraction of stranded reads that must be assigned to a strandedness for confident assignment. Must be at least 0.5.

The difference in fraction of stranded reads assigned to 'forward' and 'reverse' below which a sample is classified as 'unstranded'. By default the forward and reverse fractions must differ by less than 0.1 for the sample to be called as unstranded.

Generic options4

Display the help message.

Display the full detailed help message.

Custom MultiQC yaml file containing HTML including a methods description.

Display hidden parameters in the help message (only works when --help or --help_full are provided).

Input Output options5

A CSV file describing sample contrasts

Email address for completion summary.

Path to comma-separated file containing information about the samples in the experiment.

MultiQC report title. Printed as page header, used for filename if not otherwise specified.

The output directory where the results will be saved. You have to use absolute paths to storage on Cloud infrastructure.

Optional Outputs8

Save the intermediate BAM files from the alignment step.

If this option is specified, FastQ files split by reference will be saved in the results directory.

Save FastQ files after merging re-sequenced libraries in the results directory.

If this option is specified, intermediate FastQ files containing non-rRNA reads will be saved in the results directory.

Save reference files and indexes generated by the pipeline in the results directory.

Save the trimmed FastQ files in the results directory.

If this option is specified, intermediate FastQ and BAM files produced by UMI-tools are also saved in the results directory.

Where possible, save unaligned reads from either STAR, HISAT2 or Salmon to the results directory.

Process Skipping options29

Discover novel ORFs in novel intergenic transcripts (from StringTie or user-supplied --novel_gtf) by feeding the hybrid GTF to genome-BAM ORF callers (Ribo-TISH predict, Ribotricer). Also enables the cross-caller ORF catalogue and ORF-level quantification, which do not need a novel-transcript source. Default false for backward compatibility.

Extra CLI arguments passed to select-final-prediction-set.

Extra CLI arguments passed to prepare-rpbp-genome.

Comma-separated gffcompare class codes to retain when filtering novel transcripts.

Optional user-supplied novel-transcript GTF. When provided, StringTie assembly is skipped and this GTF is used directly as the source of novel transcripts.

Minimum number of ORF callers that must agree for an ORF to enter the consensus catalogue view.

Minimum number of samples an ORF must recur in to enter the consensus catalogue view.

Optional BED file of rRNA/repeat regions to exclude from the novel-transcript GTF (strand-aware intersect).

Opt in to running PRICE as an additional ORF caller (Bayesian, slow).

Opt in to running Ribotricer as an additional ORF caller.

Opt in to running Rp-Bp as an additional ORF caller (Bayesian, slow).

Skip BBSplit for removal of non-reference genome reads.

Skip bigWig coverage track generation.

Skip FastQC.

Skip filtering of GTF for valid scaffolds and/ or transcript IDs.

Skip the 'transcript_id' checking component of the GTF filtering script used in the pipeline.

Skip linting checks during FASTQ preprocessing and filtering.

Skip picard MarkDuplicates step.

Skip MultiQC.

Skip the peptide-level small-ORF deduplication of the cross-sample ORF catalogue.

Skip plastid.

Skip all QC steps except for MultiQC.

Skip RiboCode.

Skip Ribo-TISH.

Skip riboWaltz.

Skip StringTie reference-guided transcript assembly and merge.

Skip the adapter trimming step.

Skip the UMI extraction from the read in case the UMIs have been moved to the headers in advance of the pipeline run.

Maximum amino-acid length flagged as a small ORF in the catalogue's is_smorf column.

Read Filtering options8

Path to comma-separated file containing a list of reference genomes to filter reads against with BBSplit. You have to also explicitly set --skip_bbsplit false if you want to use BBSplit.

Path to directory or tar.gz archive for pre-built BBSplit index.

Extra arguments to pass to the fq lint command.

Enable the removal of reads derived from ribosomal RNA.

Text file containing paths to fasta files (one per line) that will be used to create the database for rRNA removal.

Specifies which tool to use for ribosomal RNA removal.

Chunk size for RiboDetector to control memory usage.

Path to directory or tar.gz archive for pre-built sortmerna index.

Read Trimming options5

Extra arguments to pass to fastp command in addition to defaults defined by the pipeline.

Extra arguments to pass to Trim Galore! command in addition to defaults defined by the pipeline.

For paired-end data processed with fastp, merge overlapping read pairs into a single read.

Minimum number of trimmed reads below which samples are removed from further processing. Some downstream steps in the pipeline will fail if this threshold is too low.

Specifies the trimming tool to use - available options are 'trimgalore' and 'fastp'.

Reference Genome options13

FASTA file to concatenate to genome FASTA file e.g. containing spike-in sequences.

Optional one-transcript-per-gene canonical GTF used as the annotation backbone for the genome-coordinate ORF callers (Ribo-TISH, Ribotricer), plastid P-site quantification and DTE.

Path to FASTA genome file.

Specify if your GTF annotation is in GENCODE format.

Name of iGenomes reference.

Path to GFF3 annotation file.

Path to GTF annotation file.

By default, the pipeline uses the gene_name field to obtain additional gene identifiers from the input GTF file when running Salmon.

Define the attribute type used to group features in the GTF file when running Salmon.

Path to a pre-built kallisto index file.

Path to directory or tar.gz archive for pre-built Salmon index.

Path to directory or tar.gz archive for pre-built STAR index.

Path to FASTA transcriptome file.

Riboseq Specific options31

Trim RNA-seq reads to match Ribo-seq read lengths before quantification. This addresses potential biases when comparing the two modalities due to different read lengths.

Target read length for RNA-seq trimming. If not specified, the average Ribo-seq read length will be derived from paired samples using seqkit stats. This parameter is required if RNA-seq samples have no paired Ribo-seq sample.

Extra arguments to pass to anota2seq in addition to defaults defined by the pipeline. Available options include: --gene_id_col (column name for gene IDs in count table, default: 'gene_id'), --exclude_samples_col and --exclude_samples_values (exclude samples by column value, semicolon-separated). Note: --samples_pairing_col and --samples_batch_col are automatically set from the 'pair' and 'batch' columns in the contrast file if present.

Extra arguments to pass to deltaTE (DESeq2) in addition to defaults defined by the pipeline.

Extra arguments forwarded to the DOTSeq R template (ORF-level DTE + DOU). Accepts any of the template's --key value options, e.g. --min_count, --stringent, --dispersion_modeling, --nullweight, --top_hits.

Extra arguments forwarded to anota2seq for the ORF-level call. Accepts the same options as the gene-level --extra_anota2seq_run_args.

Extra arguments forwarded to the deltaTE DESeq2 module for the ORF-level call. Accepts the same options as the gene-level deltaTE module.

Extra arguments to pass to plastid/make_wiggle command in addition to defaults defined by the pipeline.

Extra arguments to pass to plastid/metagene_generate command in addition to defaults defined by the pipeline.

Extra arguments to pass to plastid/psite command in addition to defaults defined by the pipeline.

Extra CLI arguments passed to gedi -e IndexGenome.

Extra CLI arguments passed to gedi -e Price.

Extra arguments to pass to the RiboCode GTFupdate command in addition to defaults defined by the pipeline.

Extra arguments to pass to the RiboCode metaplots command in addition to defaults defined by the pipeline.

Extra arguments to pass to the RiboCode prepare_transcripts command in addition to defaults defined by the pipeline.

Extra arguments to pass to the RiboCode command in addition to defaults defined by the pipeline.

Extra arguments to pass to the ribotish predict command in addition to defaults defined by the pipeline.

Extra arguments to pass to the ribotish quality command in addition to defaults defined by the pipeline.

Extra arguments to pass to the ribotricer detect-orfs command in addition to defaults defined by the pipeline.

Extra arguments to pass to the ribotricer prepare-orfs command in addition to defaults defined by the pipeline.

Extra arguments to pass to the riboWaltz command in addition to defaults defined by the pipeline.

Extra arguments to pass to per-sample StringTie in addition to defaults defined by the pipeline.

Extra arguments to pass to StringTie --merge (e.g. -T 1 -f 0.1 to tighten the merged annotation).

Default p-site offset to use for read lengths where the offset cannot be determined automatically from the data.

Plastid only considers reads of at most the given length.

Plastid only considers reads of at least the given length.

Minimum absolute log2 fold change for translated mRNA (Ribo-seq) to be considered significant. Set to 0 to disable. Maps to anota2seq selDeltaP / deltaTE lfc_threshold_ribo.

Minimum absolute log2 fold change for total mRNA to be considered significant. Set to 0 to disable. Maps to anota2seq selDeltaT / deltaTE lfc_threshold_rna.

Minimum absolute log2 fold change for translational efficiency (TE) to be considered significant. Genes must meet both p-value and effect size thresholds. Default is log2(1.2) matching anota2seq. Maps to anota2seq selDeltaPT / deltaTE lfc_threshold_te.

Quantification method for translational efficiency analysis: 'plastid_psite' (in-frame P-site counts from plastid, default), 'alignment' (STAR -> Salmon) or 'pseudo' (Salmon pseudo-alignment).

Comma-separated list of translational efficiency methods to run; any of anota2seq, deltate, dotseq. Each runs independently. dotseq is ORF-level only (no gene-level fit) and requires --extended_orf_analysis true.

Umi options10

Specifies the tool to use for UMI deduplication - available options are 'umitools' and 'umicollapse'.

After UMI barcode extraction discard either R1 or R2 by setting this parameter to 1 or 2, respectively.

The UMI barcode pattern to use e.g. 'NNNNNN' indicates that the first 6 nucleotides of the read are from the UMI.

The UMI barcode pattern to use if the UMI is located in read 2.

Filter to primary alignments before UMI-tools dedup.

Generate output stats when running "umi_tools dedup".

UMI pattern to use. Can be either 'string' (default) or 'regex'.

Method to use to determine read groups by subsuming those with similar UMIs. All methods start by identifying the reads with the same mapping position, but treat similar yet nonidentical UMIs differently.

The character that separates the UMI in the read name. Most likely a colon if you skipped the extraction with UMI-tools and used other software.

Enable UMI extraction and UMI-based read deduplication for all samples unless overridden by the optional with_umi samplesheet column.

Outputs

Results land in --outdir; the files and directory layout depend on the selected workflow, parameters and publication settings. Run metadata is normally placed in <outdir>/pipeline_info/ (execution report, software versions), when those outputs are enabled. The pinned tree includes MultiQC support; a report is produced only when its workflow step runs. --skip-multiqc true disables that report. nfclaw run also writes <outdir>/provenance/ with the exact params file and the run log, <outdir>/provenance/logs/run.log — the whole launch, whose last line states the outcome (Nextflow's own log is <outdir>/.nextflow.log); unless --no-provenance it adds a run manifest (pinned version, commit and exact command), input/output SHA-256 checksums, and a replayable commands.sh. The exact output files and directory layout for this release are documented upstream: github.com/nf-core/riboseq/blob/2.0.0/docs/output.md Check a run — in the foreground or the background — with nfclaw status <outdir>: success, still running, how it ended (with the error), or stopped without an outcome; exit 0 success, 3 running, 1 otherwise.