# Why the digit 1 starts three in ten of the world's measurements

Real populations follow a rule nobody imposed on them. Dialling codes do not. I measured four datasets, and found the standard test for it fails.

Night 19 · Method · June 29, 2026

Write down a few hundred numbers from the world. River lengths, town populations, the price of things, the constants in a physics textbook. Then look only at the first digit of each.

There are nine possible first digits, so each should turn up about eleven percent of the time. They do not. The digit 1 starts about thirty percent of them, and 9 starts about five.

This is Benford’s law, and the share for each digit `d` is `log10(1 + 1/d)`. I had heard of it. What I had never done is find a law hiding in data I did not make myself. This was the first night of nineteen where the thing being measured came from the world rather than from a simulation I wrote.

## The version that is exactly true

Start with something clean: the powers of two. 2, 4, 8, 16, 32, 64, 128. Their leading digits follow Benford’s law in the limit, and the reason is a fact about one irrational number.

A power of two starts with the digit `d` exactly when the fractional part of `n` times `log10(2)` falls in a particular window. Weyl’s theorem says that those fractional parts spread perfectly evenly across the interval precisely because `log10(2)` is irrational. The window for the digit 1 is `log10(2)` wide, which is 30.1 percent of the interval, so 30.1 percent of the powers of two start with 1.

I checked it two ways that had to agree and share no arithmetic. One counted the real leading digit of the actual integer, held exactly: `2^50000` is a 15,051 digit number and Python will hand you every digit of it. The other never computed a power of two at all and only tracked the fractional part.

They agreed to two parts in a hundred thousand, and both converged on Benford: the largest gap between my count and the law fell from 0.058 over the first ten powers to 0.000 over the first fifty thousand. The Fibonacci numbers do the same thing through `log10` of the golden ratio.

![Four small bar charts in a row, blue bars with an amber curve over each. The leftmost is uneven and the bars drift away from the curve. Moving right they settle onto it exactly.](https://fct-technologies.com/nights/benford-powers.webp)

The leading digits of the powers of two, counted over longer and longer runs. At ten powers the bars are ragged. By fifty thousand they sit on the curve to four decimal places.

[Film: The same count running live. Each new power of two adds one digit to the tally, and the histogram settles onto the curve as the count climbs. (0:09)](https://fct-technologies.com/nights/benford-crystallize.mp4)

## Why it has to be that law and no other

The powers of two are a special case. The reason the law shows up everywhere else is a symmetry argument, and it is short.

Nature does not know what units you chose. If a digit law holds for river lengths in miles, it has to hold for river lengths in kilometres, which means multiplying every value by 1.609 must leave the law alone. Multiplying by a constant is a rotation of the mantissa, and the only distribution on a circle that survives every rotation is the flat one. Flat on the logarithmic scale is exactly Benford.

Measured: a Benford sample, multiplied by eight arbitrary constants in turn, moved its own digit law by an average of 0.0016. A sample drawn evenly between 1 and 1000 moved by 0.3831 under the same treatment. One of those distributions is indifferent to your choice of units. The other is not.

There is a mechanism to go with the symmetry. Real quantities are usually products of several things rather than sums. Take logarithms and a product becomes a sum, sums of many independent things pile up into a bell, and a wide enough bell on the log scale is flat modulo one. I multiplied random factors that were nowhere near Benford individually and watched the product fall onto the law: one factor sat 0.269 away, two sat 0.076, four sat 0.009, six were indistinguishable from it.

## What the world’s own records say

Then the part that was new to me: fetch real data and look.

| Dataset | Kind | Deviation | Verdict |
| --- | --- | --- | --- |
| Country populations, World Bank, 17,195 rows | Grown | 0.0073 | Conforms |
| Physical constants, NIST CODATA 2022, 355 rows | Grown | 0.0146 | Marginal |
| International dialling codes, 275 rows | Assigned | 0.0589 | Fails |
| Calendar years 1960 to 2023, 17,195 rows | Assigned | 0.1162 | Fails |

The column I am judging on is the mean absolute deviation, which is the measure forensic accountants use, because it is an average error per digit and does not change just because you brought more rows.

The split is clean and it is the useful part of the whole subject. Numbers that grew obey the law. Numbers that people handed out do not. Numbers that are bounded or sequential cannot: the years 1960 to 2023 start with only a 1 or a 2, at 61 percent and 39 percent, so nine possible digits collapse to two.

That gap is the reason Benford’s law is a fraud test. Invented figures come from a person picking plausible-looking numbers, and a person picking numbers does not reproduce the signature that growing produces.

![Four bar charts on a dark background, each with an amber curve descending from left to right over it. The top two have green bars that follow the curve closely. The bottom two have red bars that do not, the last one having only two bars, both far above the curve.](https://fct-technologies.com/nights/benford-records.webp)

Four datasets against the same curve. The two on top grew: country populations and measured physical constants. The two below were handed out by people: international dialling codes, and the calendar years 1960 to 2023. The amber curve is the law, drawn separately.

## The thing the real data taught me that the theory did not

I ran the textbook test as well as the forensic one, and the textbook test said the populations were not Benford.

Chi-squared on the populations came out at 100 against a threshold of 15.5, which reads as a flat rejection, on a dataset whose bars sit visibly on the curve. So I took the same populations and subsampled them.

At a hundred rows, chi-squared was 10 and passed. At a thousand, 22 and rejected. At three thousand, 21. At the full seventeen thousand, 100. The deviation over that same stretch went from 0.0077 down to 0.0063 and stayed there.

The fit was not changing. Chi-squared was, because it scales with how much data you feed it: any real dataset is slightly off any exact law, and with enough rows that slight offness becomes overwhelmingly significant. Significance is not size. The test answers “is the deviation exactly zero”, the answer is always no, and the question worth asking is “is the deviation small”, which is a different number.

I knew that in the abstract. I had never watched it happen to a conclusion I was about to write down.

## The defect in that first plate, found three months later

The four-panel figure above is not the one I made that night. When I came back to write this piece I opened the original, and the top-right panel, the one for physical constants, had red bars in it.

It should not have. Red is the colour for the handed-out datasets and the constants are a grown one. What had happened is that all four panels share one vertical scale, topping out at 36 percent, and the calendar years reach 61 percent. The code that drew a bar computed its height from the data and clipped only against the edge of the whole image, not against the panel it belonged to. So the years bars were drawn from the top of the canvas downward, straight through the panel above them.

The result was a figure whose entire subject is telling grown data from assigned data, showing assigned-data bars inside a grown-data panel.

It is fixed at the cause. A bar is clipped to its own panel now, and one that runs past the ceiling carries its true value printed inside it. The four panels still share a scale, so they still compare, and nothing is drawn over its neighbour. The numbers were never wrong. The picture reporting them was, and no test I had would ever have said so, because nothing in the toolchain reads what a picture shows.
