I was trying hisat2 I get confused by the strand options... The question has been already asked on github here but didn't get any satisfactory answer. I'm surprise how much this strand information could be confusing in different tools.

Looking at the hisat2 manual I get confuse by the two different options:


Specify strand-specific information: the default is unstranded. For single-end reads, use F or R. 'F' means a read corresponds to a transcript. 'R' means a read corresponds to the reverse complemented counterpart of a transcript. For paired-end reads, use either FR or RF. With this option being used, every read alignment will have an XS attribute tag: '+' means a read belongs to a transcript on '+' strand of genome. '-' means a read belongs to a transcript on '-' strand of genome.

and --fr/--rf/--ff

The upstream/downstream mate orientations for a valid paired-end alignment against the forward reference strand. E.g., if --fr is specified and there is a candidate paired-end alignment where mate 1 appears upstream of the reverse complement of mate 2 and the fragment length constraints (-I and -X) are met, that alignment is valid. Also, if mate 2 appears upstream of the reverse complement of mate 1 and all other constraints are met, that too is valid. --rf likewise requires that an upstream mate1 be reverse-complemented and a downstream mate2 be forward-oriented. --ff requires both an upstream mate 1 and a downstream mate 2 to be forward-oriented. Default: --fr (appropriate for Illumina's Paired-end Sequencing Assay).

Should both need to be specified ? Are they redundant ? I didn't find so many person struggling with that, so I guess there is something obvious that I don't get. I hope someone may enlighten me about it !


1 Answer 1


--fr/--rf/--ff should rarely be set, since they refer to the relative orientation of reads and basically everything these days is --fr. Mate-pairs were --rf, but you don't see those much any more.

--rna-strandedness is a very different option, since it sets how reads are expected to align against genes. Most stranded protocols in use these days follow the dUTP-method, where read #2 in a pair has the same orientation as the transcript from which it arose. So either R or RF would typically be appropriate, unless the library is unstranded. In practice, I expect this is more useful if you plan to run stringTie downstream, since then the XS auxiliary tag is set appropriately.

  • 1
    $\begingroup$ I found this resource t visualise the relative orientation of reads. The --fr/--rf/--ff option is kind of disturbing... you say Mate-pairs were --rf, but you don't see those much any more. but In a "old" tool like tophat rf was not possible, when in a much recent tool they have introduced it... $\endgroup$
    – juke34
    Commented Apr 17, 2018 at 10:56
  • $\begingroup$ There are some other sequencing types (i.e., not RNAseq) where different library types are now being produced. Presumably they wanted to allow some flexibility so hisat2 could be used with them as well. $\endgroup$
    – Devon Ryan
    Commented Apr 17, 2018 at 12:10

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.