Material: How many bits is a genome? (hypothesess.com), measured 2026-11-01 by claude-platform-q7c2
Material for the site's writer, not an article. The owner asked for DNA and information theory as topics (2026-11-01). We downloaded a real bacterial genome and measured its information content three ways. Script: scratchpad/materials/scripts/genome_bits.py (Python standard library: gzip, zlib, bz2, lzma). Every figure below is its output unless marked as a source or as reasoned.
What we measured and on what
The complete genome of Escherichia coli K-12 substrain MG1655, NCBI RefSeq assembly GCF_000005845.2 (ASM584v2), downloaded from NCBI's FTP site as the gzipped FASTA GCF_000005845.2_ASM584v2_genomic.fna.gz (1,379,902 bytes) [1]. One circular chromosome.
- Length: 4,641,652 bases.
- Composition: A 24.62%, C 25.42%, G 25.37%, T 24.59%. GC content 50.79%.
Finding 1: letter by letter, DNA is almost perfectly balanced (order-0 entropy)
Shannon's entropy of the four-letter alphabet with those frequencies is 1.9998 bits per base, against a maximum of 2.0000 for four equally likely letters [2]. So counting letters alone, a genome is as unpredictable as four-sided dice. Packing each base into 2 bits gives 1.160 MB for E. coli (4,641,652 x 2 / 8 bytes); the FASTA text file holds the same letters as 1 byte each, 4.64 MB.
Finding 2: context helps a little, then the estimate breaks (order-k conditional entropy)
Knowing the previous k bases, how uncertain is the next one?
| Context length k | Conditional entropy, bits per base |
|---|---|
| 0 | 1.9998 |
| 1 | 1.9814 |
| 2 | 1.9632 |
| 3 | 1.9507 |
| 4 | 1.9429 |
| 6 | 1.9296 |
| 8 | 1.8888 |
| 10 | 1.4304 (not trustworthy, see below) |
| 12 | 0.3558 (not trustworthy, see below) |
The honest reading stops at k = 8: about 1.89 bits per base, a 5.5% saving over 2 bits. The drops at k = 10 and 12 are an artefact: there are 410 = 1,048,576 and 412 = 16,777,216 possible contexts but only 4.6 million positions, so most contexts are seen once or twice and the estimator mistakes undersampling for predictability. (Writer: keep this caveat; it is the kind of mistake the piece should teach.)
Finding 3: general-purpose compressors cannot even reach 2 bits per base
Compressing the raw letters (one byte each) with standard tools, measured as output bits per base:
| Compressor | Bits per base (E. coli) | Bits per base (same letters shuffled) |
|---|---|---|
| zlib, level 9 | 2.2412 | not run |
| bzip2, level 9 | 2.1579 | 2.1874 |
| xz / LZMA, preset 9 extreme | 2.0446 | 2.1533 |
All three do worse than naive 2-bit packing (2.0000). The shuffled control, which has the same letter counts but no order, costs the compressors only 0.03 to 0.11 bits per base more than the real genome: to a general compressor a genome is nearly indistinguishable from random letters. Specialised DNA compressors that model repeats and reverse complements do better than 2 bits; the published benchmark figures for bacterial genomes are around 1.9 bits per base (writer: cite the GeCo3 paper [4] only with its own numbers, fetched; our run did not use it).
Finding 4: the human genome, by the same yardstick (reasoned from sources, not measured here)
- About 3.1 billion bases [5]. At 2 bits per base: 775 MB. At E. coli's xz rate (2.0446 bits per base): about 792 MB. Either way roughly one CD-ROM, less than a two-hour HD film.
- The information that is yours alone is far smaller. The 1000 Genomes Project reported that a typical human genome differs from the reference at 4.1 to 5.0 million sites [3]. Reasoned figure: recording each difference as a position in 3.1 billion (log2(3.1e9) = 31.5 bits) plus the new letter (2 bits) costs about 33.5 bits per site, so 4.1 to 5.0 million sites take 17 to 21 MB before any compression. That is why a personal genome ships as a list of differences (a VCF file), not as 3.1 billion letters.
The point the piece can make
The letters of a genome carry about 1.9 to 2.0 bits each and barely compress; by Shannon's measure the genome looks like noise. Yet it builds an organism. The resolution is that Shannon entropy measures how surprising the letters are to a statistical model, not what they mean or do: a random string and a genome of the same length have nearly the same entropy, and only one of them grows into a bacterium. "Information" in the engineering sense and in the biological sense are different quantities, and this measurement is the cleanest way to show the difference.
Formulas for the simulation block: H = -sum over letters of p log2 p; bits for a genome of n bases at H bits per base = n x H; bytes = bits / 8; personal-genome bits = sites x (log2(genome length) + 2).
Unsure / to check by the writer
- The GeCo3 figure "around 1.9 bits per base for bacteria" is from memory; fetch [4] and use its table or drop the number.
- Human genome length "about 3.1 billion" is the GRCh38 reference size; the telomere-to-telomere assembly (T2T-CHM13, 2022) is 3.055 billion bases [6]. Say "about 3.1 billion" or cite [6] for 3.055.
- doi.org links to Oxford University Press and Science answered 403 to our link check (a bot wall, the pages exist); the writer's reader may see the same.
Sources
- NCBI Datasets, genome assembly GCF_000005845.2 (ASM584v2), Escherichia coli str. K-12 substr. MG1655. https://www.ncbi.nlm.nih.gov/datasets/genome/GCF_000005845.2/ ; file read: https://ftp.ncbi.nlm.nih.gov/genomes/all/GCF/000/005/845/GCF_000005845.2_ASM584v2/GCF_000005845.2_ASM584v2_genomic.fna.gz
- C. E. Shannon (1948), "A Mathematical Theory of Communication", Bell System Technical Journal 27, 379-423. https://doi.org/10.1002/j.1538-7305.1948.tb01338.x
- The 1000 Genomes Project Consortium (2015), "A global reference for human genetic variation", Nature 526, 68-74 ("a typical genome differs from the reference human genome at 4.1 million to 5.0 million sites"). https://doi.org/10.1038/nature15393
- M. Silva, D. Pratas, A. J. Pinho (2020), "Efficient DNA sequence compression with neural networks" (GeCo3), GigaScience 9(11), giaa119. https://doi.org/10.1093/gigascience/giaa119
- International Human Genome Sequencing Consortium (2001), "Initial sequencing and analysis of the human genome", Nature 409, 860-921. https://doi.org/10.1038/35057062
- S. Nurk et al. (2022), "The complete sequence of a human genome", Science 376, 44-53. https://doi.org/10.1126/science.abj6987
Link check 2026-11-01: [1] 200, [2] 202 (Wiley), [3] 200, [4] 403 (OUP bot wall), [5] 200, [6] 403 (Science bot wall).