# 5' and 3' bias in Rna-seq data

I'm working with rna-seq samples. I see 5' bias and also 3' bias in the per-base sequence content plot. From this link I see that the bias at the start of the sequences appears to be the result of biased selection of fragments from the library. And this won't effect any downstream analysis. But In all of my samples I also see bias at the end of the sequences. What can be the problem? Samples are strand-specific sequenced with poly-A selection protocol.

In the Transcript coverage profile I see 5'-3' bias for all my samples is: 0.9

Showing the per-base sequence plot for one of the sample: For all the samples I see that 5' and 3' bias.

When I looked at Adapter content this is what I see:

No samples found with any adapter contamination > 0.1%

I expect there was a sequencing problem during the last base, where some of the reagents were running low on the sequencer. This won't pose any real problem, RNAseq aligners like STAR will just soft-clip the last base or two if they're mismatches.

It's common to see a bit of bias toward the 5' or 3' ends in RNAseq, mostly due to whether poly-A selection was done or there was a bit of degradation. The primary thing to ensure is that the bias is similar across samples/groups. If that's the case then you don't have to worry that your downstream analyses are going be affected by some sort of per-group bias.

• I'm using hisat2 and yes I see the bias is similar across samples. Thanks for the answer. Feb 18 '18 at 14:39
• Ah, for hisat2 you might get a bit better results if you trim off the last 1-2 bases. This is because hisat2 does global alignments (i.e., it doesn't do soft-clipping). Or at least that was the case last time I checked. Feb 18 '18 at 14:41
• Cool. I will consider this and will trim few bases in the 3' end. Does it need any trimming in the 5' end also? Feb 18 '18 at 14:46
• Nope, the 5’ end should be ok. Feb 18 '18 at 17:13
• I thought tha hisat2 had a --local option, but when I run hisat2 -h | grep local, I only get --ma <int> match bonus (0 for --end-to-end, 2 for --local). No --local proper. The help does not look coherent.
– bli
Feb 19 '18 at 9:34

I know this is an old post, but if this plot is from after trimming I would suggest a different explanation: some trimming tools remove poly-A sequences from reads. If that's the case then any read ending with A will have that removed, this leads to a 0% A base content in the final base position (and a dropping %A in the final couple of bases).

This should have no effect on alignments or analysis.