hypothesess.com's own data, 1 November 2026.

Read the article: E. coli Genome Contains 1.9 to 2.0 Bits Per Base

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.

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)

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

Sources

  1. 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
  2. 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
  3. 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
  4. 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
  5. International Human Genome Sequencing Consortium (2001), "Initial sequencing and analysis of the human genome", Nature 409, 860-921. https://doi.org/10.1038/35057062
  6. 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).