Which H01 Is It? Two Public Synapse Releases, Only One Matches the Paper — and How We Found Out the Hard Way
The public H01 human-cortex bucket holds two synapse layers. 20210601 is raw detection output; 20210729 matches the paper's per-cell Table S14 exactly. We used the wrong one in two posts. Here is how to tell them apart.
This is a technical note for anyone who reads the public H01 data, and a correction to two of our own posts.
한국어판: H01은 어느 버전인가
H01 is a synapse-resolution reconstruction of about one cubic millimetre of human temporal cortex (Shapson-Coe et al. 2024). Its data sit in a public Google Cloud bucket, gs://h01-release, that anyone can read over plain HTTPS. We have used it for two posts and two videos. Last week, while checking our numbers against the paper's supplementary tables, we found that we had been counting synapses in the wrong layer.
Short answer
- The bucket has two precomputed synapse layers for the c3 segmentation:
data/20210601/c3/synapsesanddata/20210729/c3/synapses. They are not two copies of the same thing. 20210601is raw detection output: 191,431,138 synapses, within 0.45% of the paper's count before duplicate detections were merged (190,576,758).20210729is the final set: 150,452,116 synapses, within 0.39% of the paper's final axon-presynaptic set (149,871,669). The official data page lists this one.- Per cell,
20210729equals the paper's Table S14 exactly: the total input count matched for all 8,461 tagged pyramidal neurons that join to S14, and for 200 of 200 randomly drawn S14 neurons outside that set.20210601almost never matches (0.3% of cells); it is about 1.24× higher per cell. - The excitatory share differs by source: 59.45% in
20210601, 72.87% in20210729, 74.25% in the paper. We could not reproduce the paper's figure from any public file. - Our mistake: two of our posts used
20210601. The biggest consequence was a claim that 36% of one neuron's input came from repeat connections. In the final release it is 7.7%.
What is in the bucket
We counted every annotation in both layers by streaming all spatial shards: 3.64 GB for 20210601, 2.87 GB for 20210729. Each count was then compared with the counts the paper reports at each stage of its pipeline (Shapson-Coe et al. 2024, supplementary text).
| Public layer or table | Synapses | Labelled excitatory (code 2) | Matches the paper's stage | Paper's count |
|---|---|---|---|---|
20210601/c3/synapses/precomputed | 191,431,138 | 59.45% | Raw detections, before duplicate merging | 190,576,758 |
…/synapses/exported (BigQuery export, Avro/JSON) | about 166.1 million (estimated) | about 61% (sample) | After duplicate merging, before the axon filter | 166,216,068 |
20210729/c3/synapses/precomputed | 150,452,116 | 72.87% | Final (presynaptic side on an axon) | 149,871,669 |
20210601/c3/tables/segments (per-segment counts, summed) | 149,871,669 | 72.87% | Final | 149,871,669 |
20210601/c3/err_synapses/precomputed | 193,811,729 | 51.16% | Not described in the paper | — |
Two details make this easy to miss. The older layer sits under the same 20210601/c3 path as the segmentation that the paper's supplementary figure links point to (those links are for the segmentation only), and it decodes cleanly. And it differs from the final set by about a quarter per cell, which is easy to mistake for biological variation.
A cell-level check supports the stage assignment. On six layer 2/3 pyramidal cells, 20210601 contained 1,457 pairs of synapses that share both the presynaptic and the postsynaptic segment and lie within 750 nm of each other, approximately the kind of near-duplicate the paper's merge step removes (our midpoint distance is not the paper's exact metric). 20210729 contained none, and every one of its synapses on those cells had a 20210601 synapse at the same coordinates.
The check that settles it: Table S14
The paper's supplementary Table S14 lists excitatory and inhibitory input counts for 15,289 neurons. Joined by cell ID:
| Source | Median ratio to S14 total (IQR) | Exact match |
|---|---|---|
20210729 total | 1.000 (1.000–1.000) | 8,461 of 8,461 cells |
20210601 total | 1.239 (1.213–1.277) | 0.3% of cells |
20210601 inhibitory | 1.771 (1.642–1.919) | 0.3% of cells |
The 20210729 match also held for 200 of 200 randomly drawn S14 neurons outside our pyramidal set (196 of them not pyramidal). If you want the paper's per-cell numbers, this is the layer, and Table S14 itself is the safest source for the paper's own excitatory/inhibitory split.
Which code is excitatory? The 20210601 info file declares type 1 = inhibitory, type 2 = excitatory. The 20210729 file has no labels, but keeps the coding: S14 excitatory counts track type 2 (r = 0.9992).
Four sources, four excitatory shares
| Source | Excitatory share |
|---|---|
20210601 layer, type 2 | 59.45% (all synapses) |
20210729 layer and per-segment tables, type 2 | 72.87% (all synapses) |
| The paper (supplementary text) | 74.25% (111,272,315 of 149,871,669) |
Precomputed segment properties NSIe/NSI | 56% of inputs to pyramidal cells (S14 gives 75%) |
The difference between 72.87% and 74.25% is about 2 million synapses. The supplement describes rule-based overrides applied after the classifier (by dendritic spine, and by the cell type of the presynaptic neuron). We applied the presynaptic cell-type override to the public per-segment tables: it changes fewer than 7,000 synapses, so it does not explain the gap. The H01 team's analysis scripts on GitHub read their labels from a BigQuery table (synapse_c3_eirepredict_clean_dedup); the paper notes that these databases need credentials and that their data are available as downloads from the project's data page. We could not identify which labels Table S14 or the 74.25% use, so the gap remains unexplained.
The per-cell NSI, NSIe and NSIi columns in the segment properties are not described in the paper. Their totals are close to the final set (1.04× S14), but their labels are far more inhibitory, so they should not be used as "the paper's E/I".
What it did to our numbers
We had read 20210601. Re-running the same analyses on the same cells with 20210729:
| Readout | 20210601 (what we published first) | 20210729 (final) |
|---|---|---|
| Inputs to our layer 5 neuron (cell 6644185383) | 6,131 | 4,797 |
| … of which labelled inhibitory | 2,119 (35%) | 1,256 (26%) |
| … presynaptic segments making exactly one synapse | 81% | 96.6% |
| … input from segments making two or more | 36% | 7.7% |
| … strongest single presynaptic segment | 17 synapses | 12 synapses |
| … inputs within 20 µm of the cell-body centre labelled inhibitory | 126 of 129 | 83 of 86 |
| Median inputs, 60 random layer 2/3 pyramidal cells | 2,427.5 | 1,958 |
Duplicate detections create apparent repeat contacts by construction, so the multiplicity numbers moved the most: 36% became 7.7%, a 4.7-fold inflation. The 96.6% single-synapse share in the final release agrees with the paper's volume-wide figure (96.49% of partner pairs make one synapse). The perisomatic pattern survived: within 20 µm of the cell-body centre almost every input is still labelled inhibitory (the labels partly reflect whether a synapse sits on a spine, so this is not an independent test).
Both posts now carry an update box at the top with the final-release numbers, and the original text is left below it so the correction stays visible: We followed one neuron through a map of the human brain (the share of input from repeat connections fell from 36% to 7.7%) and Human vs mouse vs fly (the human numbers fell by 11–29%; no round changed hands).
A checklist before you report a number from H01
- Use
20210729/c3/synapses(or thetables/segmentscounts) for anything you compare with the paper. Per-cell counts, connection multiplicities and excitatory/inhibitory proportions all differ in20210601. - Benchmark first. Count the inputs of a few cells and compare them with Table S14. They should match exactly.
- Name the label source. Layer type codes, the paper's Table S14 and the segment-property columns give different excitatory shares.
- Treat per-cell counts as lower bounds. H01 is a slab about 170 µm thick, and most dendrites leave it; the paper says so too.
Limits
- We counted and matched; we did not re-run the H01 pipeline. Stage assignments rest on totals that agree within 0.5% plus the cell-level checks above.
- We could not identify the label source of Table S14 or of the paper's 74.25%, and
err_synapsesis undocumented. - The analyses were run by an AI coding agent under our direction and checked by a separate review pass; the scripts are public so anyone can re-run them.
Code and saved outputs: github.com/shoo99/which-h01 (account-free readers for the H01 precomputed format, the whole-layer counts, and the Table S14 comparison).
References
- Shapson-Coe A. et al. (2024). A petavoxel fragment of human cerebral cortex reconstructed at nanoscale resolution. Science 384:eadk4858. doi:10.1126/science.adk4858 (main text, supplementary text and Tables S8, S13, S14)
- H01 data release,
gs://h01-release— CC BY 4.0
Data: H01 release (CC BY 4.0). Counts are our own analysis of the public data. Not medical advice.
관련 글
We Followed One Neuron Through a Map of the Human Brain — Methods, Numbers, and What We Got Wrong
10월 1일 · 9 min read
NeuroscienceHuman vs Mouse vs Fly: How We Measured Five Rounds of Brain-Cell Comparisons (and What We Got Wrong First)
10월 16일 · 15 min read
NeuroscienceWhy Do Some Allergy Pills Make You Sleepy? Eight Histamine Neurons, One Receptor Pocket, and a Door
10월 20일 · 11 min read
NeuroscienceWhy Is Nicotine So Hard to Quit? What the Real Receptor Structures Show
10월 3일 · 6 min read