Genome Builds: GRCh37 vs GRCh38 and Liftover
The same variant can carry two different position numbers depending on your file's genome build - here is what GRCh37, GRCh38, and liftover actually mean.
Open two raw DNA files and look up the same variant, and you might see two completely different position numbers. Neither file is wrong. They are simply written against different reference maps of the human genome, and understanding that difference saves you from a lot of confusion.
What a genome build actually is
A genome “build” is a reference coordinate system - an agreed-upon numbering of every position along each chromosome. When your file says a variant sits at position 136608646 on chromosome 2, that number only means something relative to a particular reference assembly. The build is the ruler. Change the ruler, and the same physical spot on your DNA gets a different number.
Reference assemblies are maintained and updated over time as scientists correct errors, fill gaps, and refine the sequence. Each major update shifts many coordinates, because inserting or removing even a small stretch in the reference nudges everything downstream of it.
GRCh37 and GRCh38
Two builds dominate consumer genetics:
- GRCh37, also widely called hg19. This is the older assembly, and many consumer raw files - especially ones downloaded a few years ago - use it.
- GRCh38, also called hg38. This is the newer assembly, with corrected and refined coordinates.
The names are just aliases. GRCh37 and hg19 refer to the same coordinate system; GRCh38 and hg38 refer to another. You will see both naming styles depending on which tool or service produced the file.
Why the same variant has two positions
Here is the key idea: a variant does not move, but its address does. Consider a single SNP. Its rsID stays the same across builds because that identifier points to the biological variant itself. But its position number changes, because the surrounding reference sequence was re-measured. The variant rs4988235 might be listed at one coordinate in a GRCh37 file and a different coordinate in a GRCh38 file, even though it is the exact same spot in your DNA.
This is why comparing raw position numbers across files is risky unless you first confirm they share a build. Two files can look like they disagree when they are just speaking different coordinate dialects.
What liftover means
“Liftover” is the process of translating coordinates from one build to another - taking a position written in GRCh37 and computing where that same spot lands in GRCh38, or the reverse. Specialized tools use detailed maps of how the two assemblies line up to convert positions in bulk.
Liftover is routine, but it is not always perfect. A small number of regions changed enough between builds that a position cannot be mapped cleanly, and those are usually flagged rather than guessed. For most common variants, though, liftover is reliable and lets tools reconcile files from different eras.
Finding your file’s build
Most raw exports tell you the build right in the comment header - the lines near the top that begin with #:
# build 37
# rsid chromosome position genotype A line like # build 37 means GRCh37. If your file says build 38, it is GRCh38. If the header is missing or ambiguous, the service’s help documentation or the file’s own metadata usually resolves it. When you inspect a file line by line, that header is the first thing worth reading, because everything else depends on it.
Keeping builds consistent
The practical rule is simple: always know your file’s build, and never compare positions across builds without converting first. When you look up a variant in a reference database, make sure you are reading the coordinate for the right assembly. When you compare two DNA files, a good tool matches variants by their rsID rather than by raw position precisely to sidestep this problem - the identifier is stable even when coordinates are not.
Good analysis tools handle build differences quietly for you, matching on stable identifiers and keeping the coordinate bookkeeping out of your way. That is one more reason to let software do the parsing while you focus on the results. With on-device DNA analysis, all of that reconciliation happens locally in your browser, so your file never has to leave your device to be understood.
This article is educational and is not medical advice.