Simple guidelines for identifying top/bottom (TOP/BOT) strand and A/B allele

It can be challenging to determine the DNA strand and allele designations for a single nucleotide polymorphism (SNP) because strand designations and orientation can differ depending on the database or assembly referenced (e.g., NCBI genome build updates). To address this issue, Illumina developed the top/bottom (TOP/BOT) strand and A/B allele nomenclature using sequence-based context to assign DNA strand orientation that allows the same allele calls over time regardless of database or genome build used.
For SNPs that are not [A/T] or [G/C], A is always on the top strand and T is always the bottom strand. A and T nucleotides are the “A alleles”; G and C nucleotides are the “B alleles”.
If the SNP is [A/T] or [G/C]: Use sequence walking to determine TOP/BOT strands, then assign A/B alleles.
  1. 1.
    Unambiguous SNPs [A/(G or C)] or [T/(G or C)]
  2. 2.
    Ambiguous SNPs [A/T] or [G/C]
  3. 3.
    Use sequence walking to assign strands:
    1. 1.
      The SNP position is “n.” Nucleotides one position upstream and one downstream from “n” are “n-1” and “n+1.” Nucleotides two positions upstream and two downstream from “n” are “n-2” and “n+2.” Etc.
    2. 2.
      Examine n-1|n+1. Is one of the pair either an “A” or “T” and the other a “G” or “C”?
      1. 1.
        If no: Examine n-2|n+2. If needed, continue sequence walking until you find an n-x|n+x pairing in which one of the pair is either an “A” or “T” and the other is a “G” or “C.” Then proceed to Step A2b.
      2. 2.
        If yes: Is the “A” or “T” in this unambiguous pair 5′ of the SNP position (“n”) or 3′ of the SNP position (“n”)?
        • If 5′: This is the TOP Strand.
        • If 3′: This is the BOT Strand.
  4. 4.
    Assign nucleotide designations A or B Allele:
For TOP strands: For [A/T] SNPs, Allele A = “A” and Allele B = “T.” For [G/C] SNPs, Allele A = “C” and Allele B = “G.”
For BOT strands: For [A/T] SNPs, Allele A = “T” and Allele B = “A.” For [G/C] SNPs, Allele A = “G” and Allele B = “C.”
For more information, see the Tech note “TOP/BOT” Strand and “A/B” Allele
For any feedback or questions regarding this article (Illumina Knowledge Article #1521), contact Illumina Technical Support [email protected]. For specific trademark information, please visit
© 2023 Illumina, Inc. All rights reserved. All trademarks are the property of Illumina, Inc. or their respective owners.