What the platform is, what every class, code and track on a gene card means, and what the platform found. Every figure is a number the platform computed and stored, with the date it was measured — not an estimate, and not a claim about your assay.
Short-read sequencing cannot see every base of every gene. Segmental duplications, low-complexity tracts, paralogues that differ by a handful of bases, and stretches where the reference genome itself is wrong or absent all produce regions where a variant can be present and simply not called. Those regions are known, documented and measurable — but they are usually invisible at the point where someone is choosing a test or reading a negative result.
Blindspot maps them gene by gene, on both of the human reference assemblies in current use, and says how much of each gene's coding sequence sits inside one. It carries 19,250 genes: 5,694 at clinical tier, which are assessed in full, and 13,556 at research tier. It is a reference tool. It does not interpret variants, it does not see your data, and it is not diagnostic.
All figures on this page measured 26 October 2026
Every class, code and percentage on this site is measured against one haploid reference assembly at a time and one GIAB benchmark sample, HG002. A gene scored clean here is clean in that sample, against that assembly — which is not the same as clean in a given patient.
Three consequences, stated plainly. A benchmark that can adjudicate a call is not a pipeline that can make one — v5.0q knows the truth inside a segmental duplication precisely because it was assembled rather than read short, so a gene can be 100% benchmark-validatable and still unreadable by short reads. Difficulty is a property of the reference, so a figure measured on GRCh38 is not a claim about the same gene on T2T-CHM13; the card carries both and they disagree more often than is comfortable. And one sample cannot show you a variant it does not carry: population-specific and private variation is outside what anything here measures.
Five tiers, assigned from coding-sequence coverage against the GIAB HG002 v5.0q confident regions on each reference, plus GIAB difficult-region overlap. The rule is applied in a fixed order — Refractory, then Reference-sensitive, then Reliable, then Technology-sensitive, with Caution for everything left — and the first class a gene qualifies for is the one it gets. The classification is orthogonal to ACMG pathogenicity — it describes the assay, not the variant.
On the panel, classes 1 and 4 sit well apart: class 1 tops out at 24.9% difficult-region overlap of coding sequence and class 4 begins at 26.0%. Across all genes they do not — the lowest class-4 gene sits at 13.5%, because class 4 is also decided by segmental duplication, not by overall overlap alone. Against an independent catalog of short-read failures (Mandelker et al. 2016, high-stringency list) the five classes score an AUC of 0.925 over all 19,250 genes and 0.920 on the panel — see the validation page.
Every class carries the codes that produced it, so a rating is never a bare verdict. A gene may carry several. The date the counts were measured is given below the table.
| Code | Meaning | Genes (panel) |
|---|---|---|
| Reference / benchmark coverage | ||
| RG0 | 0% of coding sequence benchmark-validatable on GRCh38 | 682 (92) |
| RGp | Part of the coding sequence is not benchmark-validatable on GRCh38 | 546 (190) |
| RRESCUE | T2T-CHM13 validates ≥25 points more coding sequence than GRCh38. A statement about the benchmark; since v1.25 it does not set the class on its own (see RPLACE and TPLACE) | 279 (43) |
| RG38 | GRCh38 validates ≥25 points more coding sequence than T2T-CHM13. A statement about the benchmark; since v1.25 it does not set the class on its own, except for six pseudoautosomal genes that have no T2T-CHM13 figure | 95 (23) |
| RMAP | Short reads cannot be placed on GRCh38 but can on T2T-CHM13: low-mappability coding sequence 25 points or more higher on GRCh38, and under 10% on T2T-CHM13. Added in v1.20 (2026-10-14); measured that day | 21 (9) |
| RPLACE | Short reads place the coding sequence on one reference but not the other (measured, 150 bp with one mismatch). Added in v1.25 (2026-10-24) | 6 (0) |
| RT2TNONE | No T2T-CHM13 comparison is available, and GRCh38 validates none of the coding sequence | 57 (4) |
| Difficult-region overlap | ||
| DADR | 50% or more of the coding sequence lies in a GIAB difficult region | 4,752 (1,100) |
| DADRp | 25% up to 50% of the coding sequence lies in a GIAB difficult region | 3,030 (901) |
| DSEG | 10% or more of the coding sequence lies in a segmental duplication | 2,034 (403) |
| DMAP | 10% or more of the coding sequence lies in a low-mappability region | 1,993 (373) |
| Technology and annotation | ||
| TPAR | Near-identical paralog — unresolvable by short reads on any reference. Fires on a Refractory (class 5) gene with half or more of its coding sequence in a segmental duplication | 349 (33) |
| TASM | Long-read assembly resolves sequence that short reads cannot. Fires when a quarter or more of the coding sequence is segmentally duplicated yet the assembly-based benchmark (v5.0q) still validates 90% or more of it, or when v5.0q validates at least 10 points more coding sequence than the short-read benchmark (v4.2.1). That second clause on its own says the newer benchmark reaches sequence the older one did not, not that short reads fail there, so on a Reliable, Caution or Reference-sensitive gene it does not turn the Sequencing tech chip red. | 1,710 (407) |
| TPLACE | Short reads (150 bp, one mismatch) cannot place at least 10% of the coding sequence on either reference. Added in v1.25 (2026-10-24) | 162 (8) |
| TBOC | v4.2.1 validated ≥25 points more coding sequence than v5.0q — the 2021-era benchmark over-stated confidence and the assembly-era benchmark withdrew it | 349 (69) |
A p suffix marks a partial criterion — the limitation is present but affects a minority of the coding sequence. Partial codes were introduced on 2026-08-29; before that, 777 class-2 genes carried a class with no stated reason. DADRp is now the only partial code: DSEGp and DMAPp were retired on 2026-09-18.
Counts measured on 2026-10-01 over all 19,250 genes with a RefSeq Select transcript, with the 5,694-gene medically relevant panel in parentheses. They are recorded here, not queried, so treat the date as part of the number.
The five GIAB stratification categories drawn beneath the exon view, plus Alu elements. Colors are from the Okabe–Ito colorblind-safe palette, and every track is always labeled — color is never the only carrier of meaning.
Segmental duplications and low-mappability intervals are drawn at their full extent, even where they run far beyond the gene; the other tracks are clipped to the gene body ±2 kb. A gene showing no track is not necessarily clean — it may sit in an assembly gap, where bases belong to no track at all; those genes carry an explicit unsequenced-percentage caveat on the gene card.
Seven results, in the order they matter. Each one is reproducible from the database the site runs on, and most of them can be seen on a gene card in a few seconds.
19,150 of 19,338 genes — 99.0% — have at least one base inside GIAB's
alldifficultregions track on GRCh38. A flag that fires on 99% of genes tells
you nothing about the gene in front of you.
So the platform does not report whether a gene touches a difficult region. It reports how much of the coding sequence sits inside one, which tracks are responsible, and whether the answer changes between references. That is the difference between a warning and a measurement.
Not merely difficult: every base of the exon lies in a GIAB segmental duplication or low-mappability region, where a read may align to another copy of the sequence instead of this one. On the gene card's exon map they are red where the sequence is low mappability, which short reads cannot place, and magenta where it is segmental duplication alone, where reads usually still place but a variant matching the other copy can be misassigned. These are the genes where a negative result for that exon carries the least information. They are 8.6% of the clinical panel.
For 299 of them the gene as a whole still rates Reliable or Caution — CFTR and TTN among them. The class describes the whole coding sequence, and one exon is a small share of it; the exon map on each card shows where the gap is.
Every gene is placed on a five-step ladder. The two ends are unsurprising; the middle three are the reason the ladder exists, because they fail for three different reasons and need three different responses.
| Class | Clinical | Research | All genes |
|---|---|---|---|
| 1 Reliablecallable end to end | 3,456 | 7,302 | 10,758 |
| 2 Cautiona region worth knowing about | 1,977 | 4,977 | 6,954 |
| 3 Reference-sensitivethe answer depends on which reference | 15 | 32 | 47 |
| 4 Technology-sensitivethe answer depends on the method | 202 | 889 | 1,091 |
| 5 Refractoryno short-read method sees it | 44 | 356 | 400 |
261 clinical genes — one in 22 — are class 3, 4 or 5. That is the population this ladder exists for. It is not the whole population with a blind spot, and reading it that way is the mistake the next finding is here to stop.
The class ladder asks can the sequence be read. It does not ask what can the assay not see at all, and those are different questions. A gene can be perfectly callable base by base and still hide a whole-exon deletion.
2,249 clinical genes — 39.5% of the panel — are class 1 or 2 and still carry a documented pathogenic deletion or duplication. That is 8.6 times the class 3/4/5 population, and it lands almost entirely on the genes the ladder calls readable. 1,723 of them have an event that fits entirely inside the gene, and for 1,566 of those the median event is under 50 kb — exon scale.
Why small-variant calling shows nothing: a heterozygous deletion leaves the remaining copy perfectly readable. Every base returns a correct call. What reveals the loss is the read count, not the read content, and small-variant calling does not look at the count.
This is not a claim that sequencing cannot find these events. Depth-based copy-number calling from the same reads finds the larger ones, and whether a given laboratory runs it — with which caller, at which resolution — is a step inside that laboratory's own validated pipeline. This platform has never measured that and does not name callers. What it measures is where the event sits relative to the gene, because that is what decides which assay resolves it.
CBS, ICOSLG and U2AF1 sit in a stretch of chromosome 21 that GRCh38 carries twice in error. On GRCh38 a 150 bp read cannot be placed on most of their coding sequence (90% of CBS); on T2T-CHM13 every base places. Nothing about the sequencing changed. The same reads, the same chemistry, the same pipeline — a different reference, and the gene goes from unplaceable to readable.
The benchmark differs between the references for many more genes: across the clinical panel, 121 genes score better on CHM13 and 47 score better on GRCh38. That difference is about what the truth set can check, not about the reads — CHD1L scores 0% on GRCh38 and 100% on T2T-CHM13 in the benchmark, yet short reads place it on both — so since v1.25 only a measured difference in placement makes a gene Reference-sensitive.
CFHR1 and CFHR3 are 0.0% on GRCh38 and have no native CHM13 gene model at all. Their criteria codes name the causes together — no benchmark-validatable coding sequence on GRCh38, segmental duplication, low mappability, and a benchmark that withdrew its earlier confidence — with no CHM13 model to fall back on. Class 5 is not a warning to read more carefully. It is a statement that this method does not answer the question, and the card says which codes led to it.
A T2T-CHM13 number can be measured on a native gene model, annotated directly on that assembly by NCBI, or on a Liftoff projection, a GRCh38 model mapped across (Shumate 2021, PMID 33320174). Comparing all 20,064 protein-coding placements in the Johns Hopkins CHM13 Liftoff annotation with the native NCBI annotation found 721 (3.6%), over 528 genes, that no native model corroborates.
The clearest case: KRT81 carried a CHM13 figure of 100.0, but native CHM13 annotates no KRT81 there. The projection lands on the interval annotated as KRT86, a neighboring keratin paralog, so the figure described a different gene. OR1B1, PLA2G10 and ZAN were withdrawn for the same kind of reason.
Twelve more land on the right gene, but the transcript every GRCh38 figure is measured on is not annotated on CHM13, so their numbers described a projection rather than a native model. One of them, TBCD, had been Reference-sensitive on that number alone and is now class 2. Every CHM13 figure on the site is now measured on a native model; Liftoff is used only as a cross-check.
The genes are still carried, and their cards say the CHM13 placement is unverified rather than showing a number. A withdrawn figure is a finding.
Of the 19,250 symbols carried here, 1,484 (7.7%) have an adjacent-transposition variant that is another real symbol on this platform. Restricted to the case where both are clinical: 165 genes. AMT and ATM. NF1 and FN1. PKD1 and PDK1.
Type one when you meant the other and you get a complete, accurate, entirely confident card — about a gene you did not ask for. Cards now disclose the neighbor, and a symbol that is not a gene at all offers the near miss instead of a dead end. Worth testing: search RMB20, then look at the ATM card.
Search a demo gene to see its class, the codes behind it, and the evidence for each.
Create a free account