genoABO · v0.3.0

ABO inference report

VCF · GRCh38 · three-marker · 504 samples · 2026-09-09 07:09 UTC

Disclaimer. Research use only. Genotype-inferred ABO groups do not capture all rare, weak, cis-AB, structural, or otherwise atypical ABO alleles and must not be used for transfusion or clinical decision-making.
A13326.4%
B14228.2%
AB356.9%
O19438.5%
Samples
504
Format
VCF
Build
GRCh38high
Method
three-marker
Markers
4/4
Phase
phased

1. Results

Sample flow

Input samples504Samples called504Phenotyped (A/B/AB/O)504Ambiguous / unknown / low0
Figure 1. Sample counts from input through phenotyping.

ABO group distribution

A133 (26.4%)B142 (28.2%)AB35 (6.9%)O194 (38.5%)Unknown0 (0.0%)
Figure 2. ABO group counts among called samples.

Confidence

Table 1. Confidence counts for this run.

Leveln
high504
medium0
low0
none0

Diplotypes

Table 2. Diplotype counts for this run.

ABO_genotypen
O/O194
B/O124
A/O113
A/B35
A/A20
B/B18

QC summary

Table 3. Quality-control summary.

MetricValue
Ambiguous diplotypes0
Unknown phenotype0
Low confidence0
Any QC issue (unique samples)0
Missing required markers0
Method reasonrs8176719, rs8176746 and rs8176747 available

Sample preview

Table 4. Showing 25 of 504 samples.

FIDIIDABO_groupABO_genotypeconfidenceqc_statusqc_reason
HG00403HG00403AA/AhighPASS—
HG00404HG00404OO/OhighPASS—
HG00406HG00406AA/OhighPASS—
HG00407HG00407AA/OhighPASS—
HG00409HG00409OO/OhighPASS—
HG00410HG00410AA/OhighPASS—
HG00419HG00419AA/AhighPASS—
HG00421HG00421AA/OhighPASS—
HG00422HG00422OO/OhighPASS—
HG00428HG00428OO/OhighPASS—
HG00436HG00436BB/OhighPASS—
HG00437HG00437OO/OhighPASS—
HG00442HG00442AA/OhighPASS—
HG00443HG00443OO/OhighPASS—
HG00445HG00445AA/OhighPASS—
HG00446HG00446OO/OhighPASS—
HG00448HG00448AA/OhighPASS—
HG00449HG00449AA/OhighPASS—
HG00451HG00451AA/OhighPASS—
HG00452HG00452AA/OhighPASS—
HG00457HG00457AA/OhighPASS—
HG00458HG00458OO/OhighPASS—
HG00463HG00463AA/OhighPASS—
HG00464HG00464ABA/BhighPASS—
HG00472HG00472AA/OhighPASS—

2. Output

ABO_group is the inferred phenotype (A, B, AB, or O). In .abo.tsv an unassigned group is NA; HTML reports may display that as unknown. ABO_genotype is the diplotype (for example A/O); ambiguous means more than one diplotype was compatible with the unphased genotypes. n_unknown counts samples with no phenotype (including ambiguous rows). Population A/B/AB/O percentages are informational only; samples are never rejected for frequency deviation.

Files written

Table 5. Files written for this run.

FilePath
Per-sample calls (TSV)examples/out/1kg_eas.abo.tsv
Cohort QC metrics (TSV)examples/out/1kg_eas.qc.tsv
Plain-text summaryexamples/out/1kg_eas.summary.txt
This HTML reportdocs/examples/reports/1kg_eas.report.html

Per-sample columns (.abo.tsv)

Table 6. Columns in the per-sample calls file (.abo.tsv).

ColumnDescription
FIDFamily or cohort identifier from the input file
IIDIndividual sample identifier
ABO_groupInferred phenotype: A, B, AB, or O. Unassigned is NA in the TSV (HTML may show unknown)
ABO_genotypeDiplotype label (for example A/O), ambiguous, or NA
ABO_allele1First haplotype allele after alphabetical sort (A < B < O)
ABO_allele2Second haplotype allele after alphabetical sort
haplotype1Chromosome copy 1 when phased; otherwise the same sorted allele as ABO_allele1
haplotype2Chromosome copy 2 when phased; otherwise the same sorted allele as ABO_allele2
methodInference method used for this sample
geno_modeRequested genotype mode (hardcall, dosage, probability, auto); not the resolved GP/DS/GT source
phase_modeWhether haplotypes used phase (phased) or copy-count rules (unphased)
buildGenome assembly used for marker coordinates
confidencehigh, medium, low, or none (not a calibrated probability)
qc_statusPASS, AMBIGUOUS, MISSING_MARKER, CONFLICT, or LOW_CONFIDENCE
qc_reasonFree-text explanation of QC status
possible_diplotypesCompatible diplotypes when ABO_genotype is ambiguous
ukb_haplotypeUK Biobank Field 23165 haplotype code (ukb method only)
isbt_allelesMatched ISBT allele IDs (extended method only)

3. Input

Genotype file and run settings. Only ABO tag SNPs are fetched; the full variant set is not loaded.

Table 7. Run settings and marker availability.

FieldValue
Input pathexamples/data/1kg_eas/abo_markers.vcf.gz
FormatVCF
Samples504
Build (requested → resolved)hg38 → GRCh38 (high)
Method (requested → selected)auto → three-marker
Method reasonrs8176719, rs8176746 and rs8176747 available
Genotype modeauto
Phase (requested → resolved)auto → phased
Assume BO (unphased double-het)yes (--assume-bo)
Dosage hardcall threshold0.1
Minimum genotype probability0.9
Strict methodno
Markers foundrs505922, rs8176719, rs8176746, rs8176747
Markers missingnone

Markers in this file

Table 8. ABO tag SNPs located in the input file.

MarkerFoundPositionCall rateINFO
rs8176719yeschr9:1332575211.000—
rs8176746yeschr9:1332559351.000—
rs8176747yeschr9:1332559281.000—
rs505922yeschr9:1332738131.000—

4. Methods

genoABO fetches only ABO tag SNPs (rs8176719, rs8176746, rs8176747, rs505922) from the input file. Variants are matched by rsID, contig and position (including chr-prefixed and RefSeq contig aliases), then by allele-aware keys.

Genome build is resolved from marker coordinates and VCF header tokens such as ##reference=, or taken from an explicit --build setting. Conflicting evidence is an error; the build is never guessed silently. Chromosome-length matching is not used by the caller.

Per-sample genotypes are interpreted from hardcalls (GT), dosage (DS), or genotype probabilities (GP) according to the selected genotype mode. REF/ALT alleles are then mapped to biological marker states. Inference rules never operate on raw VCF alleles.

The selected method applies haplotype and diplotype rules and emits ABO_group, ABO_genotype, confidence, and QC fields.

Selected method: three-marker

3-marker inference (+ rs8176747); useful for East Asian datasets

Markers: rs8176719, rs8176746, rs8176747

Method was auto-selected: rs8176719, rs8176746 and rs8176747 available

  • Markers: rs8176719, rs8176746, and rs8176747 (additional A/B check).
  • Haplotype rules match the common method, with rs8176747 confirming B vs A.
  • If rs8176746 and rs8176747 disagree on B vs A, qc_status is CONFLICT and confidence is low; no phenotype is assigned.

Diplotype to phenotype

Table 9. Diplotype to ABO phenotype.

DiplotypePhenotype
A/AA
A/OA
B/BB
B/OB
A/BAB
O/OO

Confidence

Table 10. Confidence levels (not calibrated probabilities).

LevelCriteria
highDirect functional markers; consistent genotypes; phase sufficient
mediumUnphased but uniquely inferable
lowProxy marker (rs505922), or three-marker A/B SNP disagreement
noneMissing required markers, or dosage/GP below the hardcall threshold

Confidence is not a calibrated probability.

Genotype modes

Table 11. Genotype interpretation modes.

ModeBehavior
hardcallDiscrete GT (0/0, 0/1, 1/1, or phased)
dosageThreshold ALT dosage into 0/1/2 copies; otherwise uncertain
probabilityArgmax GP if max(P) meets the minimum probability threshold; otherwise uncertain
autoGP, then DS, then hardcall GT, in that order of precedence (GP/DS replace leftover phased GT)

This run used genotype mode auto and phase mode phased.

5. Citations

Software

genoABO: genetically determined ABO blood group inference from genotype datasets. v0.3.0. Yunye He. 2026. https://github.com/cloufield/genoABO

Method (three-marker)

6. Limitations

Research use only. Genotype-inferred ABO groups do not capture all rare, weak, cis-AB, structural, or otherwise atypical ABO alleles and must not be used for transfusion or clinical decision-making.

  • Common A/B/O/AB inference uses four SNP markers and six common diplotypes under standard assumptions. Rare, weak, cis-AB, null, hybrid, and structural ABO alleles may be misclassified.
  • Non-deletional O alleles are not modelled. The extended method is limited to ABO*A.01, ABO*B.01, and ABO*O.01; it is not ISBT-comprehensive.
  • rs505922 is an LD proxy for the O haplotype, not a functional variant. When it is used (UKB fallback), confidence is capped at low. 1000 Genomes 30x hg38 haplotype r² with rs8176719: EAS 0.946, EUR 0.869, AMR 0.820, AFR 0.437.
  • On GRCh37/GRCh38 the reference allele at rs8176719 is the O-associated sequence. VCF files often encode an insertion for A/B rather than a deletion for O; normalization is required and representation varies by pipeline.
  • The default --assume-bo rule (O deletion on an A background, resolving unphased double heterozygotes to B/O rather than A/O) is a common-allele assumption. On 1000 Genomes 30x hg38 (phased GT, not serology), AMR/EAS/EUR double-hets were all B/O; AFR 8/113 were A/O. Pass --no-assume-bo to mark those samples ambiguous.
  • Low imputation INFO is reported in inspect/QC when present but does not change confidence. Missing genotypes and dosages or GP values below the hardcall thresholds are treated as missing markers (confidence none).
  • genoABO has not been validated against serological typing across ancestries. Outputs are intended for population-genetics, epidemiology, GWAS, PheWAS, and biobank research.
  • Marker disagreement between rs8176746 and rs8176747 is flagged as CONFLICT, not resolved into a forced phenotype.
  • rs8176746 and rs8176747 have haplotype r² = 1.000 in 1000 Genomes AFR/AMR/EAS/EUR (NYGC 30x hg38); disagreement is rare.

7. Marker determination

ABO phenotype is inferred from biological marker states after REF/ALT normalization, not from raw VCF alleles. The selected method of this run is named below; unused markers are shown for reference.

This run used method three-marker with markers rs8176719, rs8176746, rs8176747.

Table 12. Tag SNPs used for ABO inference and their biological states.

MarkerHGVSStatesRole
rs8176719c.261delGO_DEL / NON_OO vs A/B background
rs8176746c.796C>AA_ALLELE / B_ALLELEA vs B
rs8176747c.803G>CA_ALLELE / B_ALLELEA vs B confirmation (three-marker)
rs505922—O_PROXY / NON_O_PROXYLD proxy for O (ukb only; not functional)

Table 13. Haplotype call on each chromosome copy.

ConditionHaplotype
rs8176719 = O_DELO
else rs8176746 = B_ALLELE (and rs8176747 = B_ALLELE when three-marker)B
else rs8176746 = A_ALLELEA
elseunknown

If rs8176746 and rs8176747 disagree on B vs A, qc_status is CONFLICT and confidence is low; no phenotype is assigned.

Table 14. Unphased diploid combinations of rs8176719 and rs8176746 (common and three-marker). States are biological, not REF/ALT.

rs8176719rs8176746DiplotypePhenotype
O_DEL / O_DELanyO/OO
NON_O / NON_OA / AA/AA
O_DEL / NON_OA / AA/OA
NON_O / NON_OB / BB/BB
O_DEL / NON_OA / BB/OB
NON_O / NON_OA / BA/BAB