The chain was never a wall of human messages. The bytes say something else.
Every discretionary write to Bitcoin’s OP_RETURN data channel, counted from a full-node census and split by era. Not a sample — the whole population, gap-free to block 958,893.
The romantic idea is that people write to the Bitcoin chain: love notes, manifestos, the Chancellor headline. So we counted every single OP_RETURN output ever mined — the channel built for exactly that kind of message — and classified each one as human-readable text, a Runes token message, binary data-carrier (Veriblock/OMNI timestamping), or other protocol.
Coverage: op_return full-chain census, blocks 0–958,893 · complete to tip The result inverts the story. Across all of Bitcoin history, human expression never exceeded ~13.5% of data outputs, and in the current era it is 1.4% against a 96.4% machine token flood.
OP_RETURN in every era — even at its 2023 peak, human-readable messages were only 13.5% of data outputs. The dominant machine simply changed flavor: 98.3% binary timestamping (Veriblock/OMNI) before ordinals, then 96.4% Runestones after the halving. Regenerate the counts with scripts/census/build-exhibit05-data.js.
OP_RETURN was machine-dominated in every era we can measure. What changed is the kind of machine (binary timestamping → token protocol) and the scale (the Runes era alone holds 3× more data outputs than the entire prior 767k-block history combined). There was never a virgin human age of Bitcoin messaging to lose. The chain has always overwhelmingly stored what protocols write, not what people write.
Machine side is real Runestones. getblock(840000, 3) on a full node — the Runes launch block — returns 3,050 txs with 2,033 OP_RETURN (nulldata) outputs, of which 2,004 (98.6%) begin OP_RETURN OP_13, the Runestone magic. At the very first block of the era, ~99% of all data outputs were already token-protocol messages.
Human side is real prose. Row at height 840,000, DB text “Vahe was here”: getrawtransaction returns a nulldata output whose asm hex decodes exactly to Vahe was here — a genuine human message, node-confirmed, not misclassified protocol.
Falsifier (explicit). The machine-dominance claim fails if (a) a byte-level reclassification of the 171.1M Runes outputs shows >20% are non-Runestone or human-readable, or (b) the 3.83M human-text count undercounts true human prose by >10× — enough to close the 45:1 gap below ~4:1. The block-840,000 spot-check (98.6% Runestone) did not trigger (a).
Witness inscriptions are deliberately left out of the lead. The witness text/plain bucket (111M items) conflates human prose with BRC-20 mint JSON and needs a prose classifier to split cleanly. Folding BRC-20’s 111M into the machine side would only strengthen the thesis, so omitting it is the conservative choice.
The 40,251 Runes-tagged outputs in the pre-840,000 boom era are OP_13 marker collisions the detector caught before official launch — immaterial to the ratio. Era boundaries are height-based approximations of protocol-launch blocks; a ±few-hundred-block shift moves no percentage materially.