Open-source project
marbl/CHM13 avatar
marbl/CHM13

CHM13: the telomere-to-telomere human reference assembly and its many reference file flavours

The complete sequence of a human genome

1,064 stars105 forksUnknownNOASSERTION

At a glance

What is it?
The CHM13 repository publishes the complete sequence of a human genome, assembled from one cell line sequenced with five technologies, and it exists to serve the analysis set: the specific FASTA variants, masking choices and annotation files a mapping based researcher should use. The assembly itself is complete, but choosing the right file is still the hard part.
Who is it for?
The CHM13 repository fits a genomics team doing mapping based research that needs a gapless human reference, and that will take the time to pick the correct analysis set file rather than the headline assembly. It is the wrong source if you need the PacBio raw reads, which are hosted at NCBI SRA and only linked from here, and it is the wrong source if you need a pangenome of many genomes, since this is one cell line.
Can I use it commercially?
Check first. The repository uses a licence we do not classify automatically, so read its LICENSE file before any commercial use.
Is it still maintained?
Yes. The repository last received commits 113 days ago.
What is it written in?
GitHub does not report a main language for this repository.

Answers come from the project's GitHub data, last synced on October 24, 2026, and from our analysis. They are not legal advice.

Editorial analysis

One cell line, five sequencing technologies

The repository is the telomere-to-telomere consortium CHM13 project, and its scope is the complete sequence of a human genome.

The design decision that makes the reference possible is that it comes from one cell line. The CHM13hTERT human cell line was sequenced with a number of technologies, human genomic DNA was extracted from the cultured cell line, and because the DNA is native, modified bases will be preserved. That last point is the reason the project exists in this form, since a synthetic or amplified genome would not carry the methylation and modification information that a reference needs in order to be useful for anything studying the epigenome.

The coverage is what makes the assembly possible. The data includes 30x PacBio HiFi coverage, 120x coverage of Oxford Nanopore, 70x PacBio CLR, 50x 10X Genomics, as well as BioNano DLS and Arima Genomics HiC. That last one is the structural information, since HiC is what tells the assembler which sequences are adjacent to which, and without it a telomere-to-telomere assembly of a repetitive human genome is not achievable. The combination of long reads for the sequence and HiC for the structure is the standard modern recipe.

Most raw data is available from the project site, with one exception. The PacBio data was generated by the University of Washington and PacBio and is available from NCBI SRA rather than from here, and the README links the SRA BioProject listing. That is a sensible division, since the raw reads are enormous and NCBI's SRA is the right place for them, but it means the repository is a pointer for that portion of the data rather than a host.

The repository is a data publication rather than a codebase. The primary language is not recorded, and the top level contains LICENSE.md, README.md, Sequencing_data.md, Previous_assembly_release_CHM13.md, Previous_assembly_release_HG002.md, Earlier_assembly_releases_and_associated_data.md and a pbP6Cells directory. The last push was on 2026-07-03 and the repository is not archived, with no GitHub releases.

The analysis set, and why five FASTA files exist for one genome

The analysis set is the part of this repository that researchers actually use, and the reason there are several files is that the choice of reference is itself a scientific decision.

The set is hosted on AWS S3 with a README, and the headline file is chm13v2.0.fa.gz, the T2T-CHM13v2.0 assembly with sequences soft-masked using the repeat models discovered by the T2T team, with the original sequence accession numbers shown in the FASTA header.

From there, four more files encode the decisions.

chm13v2.0_noY.fa.gz excludes the Y chromosome, and this file only contains sequences derived from the CHM13 cell line and is identical to T2T-CHM13v1.1. It is the file to use for benchmarking assemblies of CHM13, because adding a chromosome to a reference changes every coordinate.

chm13v2.0_maskedY.fa.gz has the pseudoautosomal regions on chromosome Y hard masked to N, and chm13v2.0_maskedY.rCRS.fa.gz additionally replaces the mitochondrion with the rCRS, accession AC:NC_012920.1. The README singles this one out with an important note: when mapping short reads for variant calling, it is generally best to use a FASTA with the Y PAR masked. That is a real methodological point rather than a detail, because the pseudoautosomal regions are present on both X and Y, and a reference that does not mask them produces mappings that cannot be interpreted.

There is also chm13v2.0_PAR.bed, the pseudoautosomal regions as an interval file, so that the same regions can be handled in a BED-aware pipeline rather than by masking.

The one September 28 2022 update note applies to all of the analysis set files: they have all been re-compressed with bgzip, and the index files are on the same S3 index page with updated md5s in the README. That is a useful detail, because bgzip is what makes a FASTA indexable with tabix, and it means the files are meant to be queried rather than only read end to end.

The pattern across all of these is that the assembly is fixed and the reference is a set of choices. Which is why the repository ships them separately rather than as one canonical file.

The Y chromosome in v2.0, and where the annotations come from

The change between the two most recent assembly releases is the Y chromosome, and it is worth understanding because it changes the coordinate space of the whole genome.

T2T-CHM13v2.0, also called T2T-CHM13+Y, adds a finished chromosome Y from the GIAB HG002/NA24385 sample, which was sequenced by both GIAB and the Human Pangenome Reference Consortium. Before that, the assembly was the same genome without a complete Y, which is why the noY file is described as identical to v1.1.

The genome is available in three places: as the gzipped FASTA on the human pangenomics S3 bucket, as NCBI assembly GCA_009914755.4, and through the UCSC browser. The README also notes a detail that trips people up: even though the UCSC browser shows the Genbank accessions as sequence names on the browser itself, it can load annotations in BED, bigBed, BAM, CRAM, bigWig and other formats, or you can search using the chr1, chr2 style names. So the naming in the browser and the naming in the files differ, and the browser accepts both.

The gene annotation sets are where the curation work is visible. There are three main ones.

The JHU RefSeq plus Liftoff v5.3 file contains curated annotations of the ampliconic genes on the Y chromosome, correcting annotation errors in GENCODEv35 CAT/Liftoff and RefSeqv110. Additional copies found in T2T-Y were annotated to the closest available gene in RefSeq, which allows multiple genes to carry the same common name. This file was also modified to correct special character issues from the original.

The UCSC GENCODEv35 CAT/Liftoff v2 set comes with a sorted GFF and its tabix index for VEP, and a protein FASTA of the protein coding translated transcripts, with the warning that these are transcripts not genes and are only searchable by transcript ID, with IDs like LOFF_T rather than LOFF_G.

And NCBI RefSeqv110 is available from the NCBI FTP path.

The distinction between the curated JHU set and the automated CAT/Liftoff set is the important one. CAT/Liftoff is a tool that lifts annotations from a related genome onto a new one, which works well for the autosomes and poorly for the ampliconic regions of the Y, where the gene structure is repetitive and hard to resolve. The curated file exists because the automated one is wrong in exactly those places.

How to get the files, and where the sizes are the problem

The download paths are simple, and the difficulty is entirely about volume.

The assembly FASTA is a single gzipped file on the human pangenomics S3 bucket at human-pangenomics/T2T/CHM13/assemblies/analysis_set/. The analysis set index page on the same bucket lists everything, including the annotation files and the index files with their updated md5 sums in the README. The gene annotation sets live under the annotation/ prefix of the same bucket, except for the NCBI RefSeqv110 set, which is on the NCBI FTP path under GCF/009/914/755.

The pattern is worth understanding. A human reference genome is a few gigabytes compressed, and the annotation layers multiply that. The RefSeq plus Liftoff v5.3 GFF for the ampliconic genes, the GENCODEv35 sorted GFF for VEP, the protein coding translated transcripts FASTA, the index files, the Y PAR BED, and the four reference FASTA variants, add up to a substantial download, and a careless pipeline that pulls all of them per run will spend more time in the network than in the alignment.

The index files are the other half of the practical story. Because the analysis set fa.gz files were all re-compressed with bgzip on September 28 2022, they are designed to be queried with tabix rather than read whole, and the matching.tbi and.csi index files are on the same index page. A dotplot against a repeat family, or a targeted fetch of one interval, is a range request against an indexed file, and the alternative is downloading the whole genome to answer one question.

So the practical download advice follows from the layout. Take the FASTA variant that matches your analysis, take the annotation layer that matches your use, take the index file for whatever you intend to query, and check the md5 sums in the README while you are there.

The browser hub, the repeat dotplot, and the issue tracker

Three supporting resources sit alongside the data, and each solves a different problem.

The UCSC browser hub covers CHM13 and T2T-Primates, and the README says track updates will be made to this hub until it is integrated into the UCSC Genome Browser for hs1. The naming is the point, hs1 is the UCSC identifier for the T2T-CHM13 assembly, and until the integration lands the consortium maintains the hub itself. Legacy UCSC browsers are available for the v2.0, v1.0 and v1.1 versions, so older results remain viewable against the reference they were computed with.

The interactive dotplot visualisation of all genomic repeats is available from resgen.io, hosted as paper data for the T2T Nurk et al 2021 work. A dotplot against a repeat family is how you see whether a region is composed of a single repeat instance or of many near-identical copies, which is the question you need answered before you trust any read mapping or any variant call in a repetitive region.

And known issues in the assembly are tracked at a dedicated CHM13 issues repository, separate from this one. That separation is a good sign about the project's structure, because the assembly is a fixed artefact and the questions about it are about its contents, not about the files. An assembly with a known issue tracker is a much better foundation than one with a comment section.

The earlier work is also kept rather than discarded. Previous assembly releases are available for T2T-CHM13 versions v0.7 through v1.1 and for T2T-HG002XY versions v0.7 through v2.7, and there is a separate document for earlier assembly releases and associated data. For reproducibility, that matters: a paper that used v1.0 should be reanalysable against v1.0.

The sequencing dataset itself has its own page, Sequencing_data.md, and the raw data is reachable from there.

The final point is the licence. The repository records a custom licence that GitHub could not classify, with the terms in LICENSE.md. For a data publication this is a document worth reading carefully, because the questions of who may redistribute the assembly, in what form, and with what attribution are the questions a data licence exists to answer, and the answer is not something to infer from the file's origin.

Editorial conclusion

The CHM13 repository fits a genomics team doing mapping based research that needs a gapless human reference, and that will take the time to pick the correct analysis set file rather than the headline assembly. It is the wrong source if you need the PacBio raw reads, which are hosted at NCBI SRA and only linked from here, and it is the wrong source if you need a pangenome of many genomes, since this is one cell line. Before you build a pipeline on it, decide whether you want the Y chromosome, whether your PAR regions should be masked, and whether the mitochondrion should be the rCRS, because those three choices are exactly what the different FASTA files encode.

Frequently asked questions

What is the CHM13 assembly?

It is the telomere-to-telomere consortium reference for the CHM13hTERT human cell line, sequenced at 30x PacBio HiFi, 120x Oxford Nanopore, 70x PacBio CLR and 50x 10X Genomics, plus BioNano DLS and Arima Genomics HiC. Because the DNA is native, modified bases are preserved.

Which CHM13 reference FASTA should I use for short read variant calling?

The README states it is generally best to use a FASTA with the Y PAR masked, which is chm13v2.0_maskedY_rCRS.fa.gz, where the pseudoautosomal regions on chromosome Y are hard masked to N and the mitochondrion is replaced with the rCRS. A separate chm13v2.0_PAR.bed file gives the same regions for a BED-aware pipeline.

What is the difference between T2T-CHM13v2.0 and v1.1?

v2.0, also called T2T-CHM13+Y, adds a finished chromosome Y from the GIAB HG002/NA24385 sample, sequenced by GIAB and the Human Pangenome Reference Consortium. The noY file for v2.0 contains only sequences derived from the CHM13 cell line and is identical to T2T-CHM13v1.1, and it is the file to use for benchmarking assemblies of CHM13.

Where do I get the CHM13 raw sequencing data?

Most raw data is available from the project, with the exception of the PacBio data, which was generated by the University of Washington and PacBio and is available from NCBI SRA. The sequencing dataset generated for CHM13 has its own page in the repository, and known issues in the assembly are tracked in a separate CHM13 issues repository.

Official sources

  1. Issues
  2. marbl/CHM13 on GitHub
  3. README
Add this badge to your README

If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/marbl-chm13.svg)](https://hysenlabs.com/projects/marbl-chm13)

Was this useful?