Science Journaling Club Founded 2024

VOLUME 2, ISSUE 4 · SUMMER 2026 · METHODS

When the First Digit Test Works and When It Accuses the Innocent

Written jointly by the Science Journaling Club

Computational study · Peer-edited by the club review board · LaTeX source · Analysis code · Raw output · Interactive model

Abstract Benford's law says the leading digit of many collections of real numbers is 1 far more often than 9, following \(P(d) = \log_{10}(1+1/d)\), and it is now a standard test for cooked books, rigged elections and fabricated data. We put eight genuinely public datasets through the test, chosen for having nothing in common: country populations, CODATA physical constants, every FDIC-insured bank's total assets and total deposits, NASA's exoplanet orbital periods, a year of USGS earthquake magnitudes and the seismic moments those same earthquakes encode, and World Bank life expectancies. Two conformed closely (bank assets, MAD 0.0039). Two failed by a mean-absolute-deviation threshold while the chi-squared test called them unremarkable (populations, MAD 0.0152 against Nigrini's 0.015 cutoff, chi-squared \(p = 0.47\)). One passed the MAD band and still failed chi-squared at \(p = 4\times10^{-11}\) (exoplanet periods). Two failed everything, badly, because they span less than half an order of magnitude (earthquake magnitudes and life expectancy, MAD 0.166 and 0.177). We then simulated log-uniform data across a controlled spread \(S\) and found the deviation from Benford traces \(|\sin(\pi S)/(\pi S)|\) almost exactly, landing on zero at every whole number of decades and peaking near half-integers, which is the mechanism the whole test rests on and the reason two of our eight datasets could never have passed regardless of anyone's honesty. Finally we ran the false-accusation arithmetic directly: 40,000 simulated honest Benford datasets per sample size showed the chi-squared test correctly calibrated at every \(n\) (5.02% to 5.17% rejection against a nominal 5%, largest deviation 1.90 standard errors), while Nigrini's fixed MAD cutoff flagged 91.8% of honest datasets of size 100 and did not settle near its intended rate until \(n\) reached the low thousands. Honest lognormal data with \(\sigma < 0.3\) decades was rejected almost every time regardless of sample size. Five validations, including the closed-form digit law reproduced from first principles to 5.3 × 10−8, the club's chi-squared statistic against SciPy's to machine precision, and 2,000 powers of two checked against exact integer arithmetic, all passed. Seed 20260914. Every dataset was downloaded on 2026-09-14; none failed and none was substituted.

A Test With a Reputation

Somebody hands you a spreadsheet. Ten thousand invoice amounts, or a county's vote tallies, or a decade of a lab's measurements. You want to know whether it was made up. There is a test for that, and it takes thirty seconds to run: look at the first digit of every number and see whether 1 shows up about 30% of the time, 2 about 18%, all the way down to 9 at under 5%. Real, unmanipulated collections of numbers tend to obey this distribution. Fabricated ones tend not to, because people inventing numbers reach for the middle digits far more evenly than nature or arithmetic ever does. The test has a name, Benford's law, a following among forensic accountants and election monitors, and, we think, a reputation somewhat larger than its warrant.

We are not the people to debunk it. The mathematics of Benford's law is genuinely elegant and we spend a fair portion of this article admiring it. What we distrust is a narrower thing: the leap from "this is a real mathematical regularity" to "therefore a dataset that fails it is suspicious." That leap needs a second number nobody usually reports, which is how often an honest dataset fails anyway. We built that number from scratch, several times, under several assumptions, and it is nowhere near as small as the confident tone of a fraud-detection slide deck implies.

91.8%honest n=100 samples flagged by the MAD rule
0.0152country-population MAD, just over Nigrini's line
4×10−11chi-squared p-value for honest exoplanet data
8real public datasets tested, none invented

What the Law Actually Says

The astronomer Simon Newcomb noticed it first, in 1881, from nothing more than which pages of a table of logarithms were worn soft by use: page 1 dirty, page 9 clean [1]. It sat unexplained and largely unread for 57 years until the physicist Frank Benford rediscovered it independently and tested it against 20,229 numbers from 20 wildly different sources, rivers, baseball statistics, atomic weights, street addresses, and published the frequencies that now carry his name [2]. Neither man had the scale-invariance proof that actually explains it; that came from Pinkham in 1961 [3] and was sharpened by Hill in the 1990s [4][5]. State it carefully once and the rest of the article can lean on it. For a positive quantity \(X\), write it as \(X = m \times 10^{k}\) with \(k\) an integer and \(m \in [1, 10)\) the mantissa. The leading digit is \(\lfloor m \rfloor\). Benford's law is the claim that \(\log_{10} m\), the fractional part of \(\log_{10} X\), is uniformly distributed on \([0, 1)\). Digit \(d\) occupies the sub-interval \([\log_{10} d, \log_{10}(d+1))\), whose width under a uniform mantissa is exactly

$$P(d) = \log_{10}\!\left(1 + \frac{1}{d}\right), \qquad d = 1, \dots, 9.$$

Two facts follow immediately and both matter later. First, the law says nothing about any specific quantity; it is a statement about the mantissa of a whole collection, so it can only apply to collections whose logarithms are smeared smoothly across whole decades, never to a single measurement. Second, it is scale-invariant: multiply every value in a Benford-conforming set by any positive constant and the digit law is unchanged, because multiplication just shifts \(\log_{10} X\) and a uniform distribution on a circle (which is what a periodic mantissa is) is invariant to shifts. This is why the law does not care whether your bank balances are in dollars or centavos. It is also the single cleanest reason population sizes, market capitalisations and river lengths tend toward it and human-chosen quotas, minimum wages and speed limits do not: nobody picked a preferred scale for the first kind of number, and everybody did for the second.

We checked our own arithmetic before trusting it on anyone else's numbers. The club's table of \(P(d)\) was computed two independent ways: once from the closed form above, and once by literally measuring, on a grid of 4,000,000 points, what fraction of \(u \in [0,1)\) satisfies \(\lfloor 10^u \rfloor = d\). The two agree to 5.3×10−8, which is the quadrature grid's own resolution and nothing more. The chi-squared statistic we wrote by hand from its definition, \(\chi^2 = \sum_d (O_d - np_d)^2 / (np_d)\), was checked against SciPy's chisquare on the bank-assets table below and the two statistics agreed to the last printed digit, difference +0.000×100.

Eight Datasets, One Test

We picked eight series that share no author, no motive and mostly no unit, downloaded once on 2026-09-14 and cached under analysis/data/: country populations and life expectancies from the World Bank, CODATA 2022 physical constants from NIST, every FDIC-insured US bank's total assets and total deposits from a single quarterly Call Report filing, exoplanet orbital periods from NASA's Exoplanet Archive, and a full calendar year of USGS earthquake magnitudes above M3.5 together with the seismic moments those magnitudes encode. All eight downloads succeeded. Nothing here was substituted or invented; a dataset that failed to download would have been dropped and reported, and none did.

TagDatasetnDecades spanned χ²pMADCohen's wVerdict
D1Country population, 20232175.177.60.47260.01520.187nonconformity
D2CODATA 2022 constants355114.3412.90.11400.01720.191nonconformity
D3US bank total assets4,4116.098.00.42990.00390.043close conformity
D4US bank total deposits4,3549.137.80.45130.00390.042close conformity
D5Exoplanet orbital periods6,0169.6565.53.8×10−110.01040.104acceptable, but see §9
D6Earthquake magnitude, M≥3.519,6520.40120,959.6≈00.16622.481nonconformity
D7Earthquake seismic moment19,6527.957,470.8≈00.04860.617nonconformity
D8Life expectancy at birth, 20232170.201,063.03.8×10−2240.17692.213nonconformity
Nigrini MAD bands: close < 0.006, acceptable < 0.012, marginal < 0.015, nonconformity ≥ 0.015. χ² at 8 d.f.
1 2 3 4 5 6 7 8 9 leading digit 80% 0% D3 bank assets D5 exoplanet periods D6 quake magnitude - - - Benford expectation
Figure 1. Observed first-digit shares for three of the eight datasets against the Benford expectation (dashed step line). Bank assets track it closely. Exoplanet periods drift a little high on 1 and low on 6–9, enough to fail chi-squared at very large n (§9). Earthquake magnitudes, which span only 0.40 decades, are not close to any smooth digit law and could not be: 82% of the values in this dataset begin with 4, because almost every catalogued quake above the M3.5 cutoff has a magnitude between 4.0 and 4.9.

Plain Arithmetic

No simulation in this section. Just the sum a reader could redo with a calculator, because the country-population row above is the one place in this study where two standard verdicts disagree, and disagreements deserve to be shown rather than asserted.

217 countries and territories, 2023 World Bank population figures, first digit counted for each: 68 start with 1, 36 with 2, 30 with 3, 16 with 4, 25 with 5, 16 with 6, 8 with 7, 10 with 8, 8 with 9. Benford's expected share of 217 for each digit is \(217 \times P(d)\): 65.32, 38.21, 27.11, 21.03, 17.18, 14.53, 12.58, 11.10, 9.93. The chi-squared contribution of each digit is \((O-E)^2/E\):

dOEO−E(O−E)²/E
16865.32+2.680.110
23638.21−2.210.128
33027.11+2.890.308
41621.03−5.031.203
52517.18+7.823.560
61614.53+1.470.149
7812.58−4.581.667
81011.10−1.100.109
989.93−1.930.375
sum = χ²7.608

Add the last column and you get 7.61, which the script also reports as 7.6 after its own rounding. Look that up against a chi-squared distribution on 8 degrees of freedom and the upper tail is 0.4726: nearly half of all genuinely Benford datasets of this size would show a chi-squared statistic at least this large just from sampling noise. By that test, country populations are unremarkable.

Now take the mean absolute deviation instead: \(\text{MAD} = \frac{1}{9}\sum_d |O_d/n - P(d)|\). Divide each observed count by 217, subtract Benford's proportion, take the absolute value, average the nine numbers, and you land on 0.01521. Nigrini's published band calls anything at or above 0.015 nonconformity. Two thousandths of a unit above the line, on a statistic with a bootstrapped 95% interval of [0.0121, 0.0329] on this very n, decides whether the verdict reads "close enough" or "flagged." Both numbers came out of the same 217 population figures. Neither is wrong. They simply answer different questions, one about how surprising the whole pattern is and one about how far any single average deviation has drifted, and a threshold applied to the second without reference to sample size is exactly the failure mode the rest of this article measures.

The Mechanism: Spread Is Everything

Why did bank assets pass and earthquake magnitudes fail so badly? The working hypothesis, stated in §2, is that Benford conformity is really a statement about how widely a dataset's logarithm is smeared across whole decades. We tested that directly rather than assuming it. Draw \(n = 5{,}000\) values with \(\log_{10} x\) uniform on a window of width \(S\) decades, at a random offset so the answer cannot be an artefact of where the window happens to start, and measure the resulting MAD. Repeat 400 times per \(S\) and also compute the exact answer analytically, since a log-uniform window's digit law is just the measure of each digit band intersected with the window.

The result is not what a rough intuition "wider is better" would predict. It is scalloped. At every whole number of decades, that is \(S = 1, 2, 3, \ldots\), a log-uniform window covers each mantissa exactly once, so the MAD is exactly zero, not approximately zero, by construction. Move away from a whole decade and the deviation grows, peaks somewhere past the half-decade mark, then shrinks back toward zero as the next whole decade approaches. The envelope of those peaks decays like \(|\sin(\pi S)/(\pi S)|\), a genuine sinc function, because the mantissa density of a width-\(S\) window is a Fourier series whose \(k\)-th harmonic carries a factor \(\sin(\pi k S)/(\pi k S)\). We checked this prediction rather than merely illustrating it: at every half-integer \(S\) from 0.5 to 9.5, the ratio of the analytic MAD to the sinc envelope should land on one fixed constant regardless of \(S\), because every even harmonic cancels there by symmetry. Across ten independent windows the ratio held to better than one part in a million.

deviation is exactly zero at every whole decade 0 1 2 3 4 5 6 decades spanned, S 0.00 0.10 0.18
Figure 2. Analytic mean absolute deviation of a log-uniform window against how many decades it spans, averaged over 500 offsets per width. The curve touches zero at every integer S and decays like a sinc envelope. The two dots mark where our real D6 (0.40 decades) and D8 (0.20 decades) fall on the same axis: both sit on the steep rising edge, nowhere near a value where conformity was ever possible.

D2, the physical constants, is the case that resists this story and deserves saying so plainly. It spans 114.34 decades, from Planck-scale quantities near 10−65 to nuclear magnetic moments and inverse fine-structure figures at the other end, and it still fails nonconformity (MAD 0.0172). Spread is necessary but, on its own, not sufficient. CODATA's table is not 355 independent draws from a smooth distribution; many entries are exact algebraic multiples, reciprocals, or unit conversions of others (the Rydberg constant, the Rydberg constant times hc, the Rydberg constant times c, all three rows), so the effective sample size behind that spread is far smaller than 355, and the assumption of independence our chi-squared test leans on is simply false for this dataset. We say so in the script's own docstring rather than quietly and it is worth repeating here: a wide spread is what makes conformity possible. It does not by itself make conformity true.

For a mechanism this clean we wanted one more check with a known, computable answer rather than a simulated one: the leading digits of \(2^k\). Because \(\log_{10} 2\) is irrational, \(k \log_{10} 2 \bmod 1\) is equidistributed, a theorem rather than a tendency, so the first digit of \(2^k\) must converge to Benford's law exactly, and we can check our convergence against a right answer nobody needs to estimate. Naively computing this in double-precision floating point actually failed once in the first 2,000 terms: at \(k=3\), \(2^3 = 8\) exactly, but \(10^{3\log_{10}2}\) rounds to 7.999999999999998 in double precision and the floor takes 7 instead of 8. We fixed this by carrying \(\log_{10} 2\) to 50 decimal digits, split into a high part exact in double arithmetic and a low remainder, and confirmed all 2,000 terms then match exact integer arithmetic. At ten million terms the resulting MAD is 4.35×10−7, against roughly 7.4×10−5 for a random Benford sample of the same size, a genuine equidistribution converging roughly like \(1/N\) rather than the \(1/\sqrt{N}\) a random sample is stuck with.

powers of two random Benford sample 10 10³ 10⁵ 10⁷ terms, N (log scale) 10⁻¹ 10⁻⁵ 10⁻⁷
Figure 3. Convergence of the first-digit MAD of \(2^1 \ldots 2^N\) (solid) against a random sample drawn directly from Benford's law at the same N (dashed), log-log. The deterministic, equidistributed sequence converges roughly like \(1/N\); random sampling is stuck at \(1/\sqrt{N}\) and stays about two orders of magnitude noisier at \(N=10^7\). Both converge to zero, which is the theorem; the gap between them is a reminder that "the digits are Benford in the limit" is a weaker statement than "this particular finite sample looks Benford."

Working Notes From the Club Table

Session 1
Downloaded the World Bank population indicator first because it is the textbook Benford example. Got MAD 0.0152 and immediately worried we had a bug, because every popular write-up of this example calls population data a clean pass.

Session 1, later
No bug. Reran with the 2022 vintage of the same indicator out of curiosity: similar MAD, similar borderline call. The "population obeys Benford" folklore is doing some rounding of its own. It is close. It is not comfortably inside Nigrini's own band.

Session 2
Earthquake pull returned 29,202 events at M≥2.5 for 2025 and the USGS API refuses any query matching more than 20,000. Raised the threshold to M≥3.5 (22,819 would have still been too many at M≥3.0) rather than paginate around the limit, since paginating a live feed mid-query risks double-counting events reported with revised magnitudes. Final count 19,652.

Session 2
First look at the earthquake first-digit table: 82% start with 4. Someone asked whether the fetch script had a bug that truncated the field. It had not; the Gutenberg–Richter relation means small quakes vastly outnumber large ones, so a catalogue cut off at M3.5 is dominated by magnitudes in the low 4s, and the digit table is telling us exactly that.

Session 3
Someone proposed converting magnitude to seismic moment (an exponential transform) before testing, since moment is closer to the underlying physical quantity. It passed the spread requirement (7.95 decades) and still failed the test. Spent forty minutes assuming a units bug before finding the real cause in §9: one decimal place of reported precision in the magnitude field survives the exponential transform as only 20 distinct mantissa values.

Session 4
Argued for an hour about whether Nigrini's fixed MAD thresholds are "wrong." Settled on: they are not wrong, they are unconditional on n, and a threshold with no n in it is a threshold waiting to misfire at whatever n it was not calibrated on. That became §7.

Session 5
Seed fixed at 20260914. Full run: 21.1 seconds. Every number in this article traces to that one run of that one file.

How Often the Honest Get Accused

Here is the arithmetic a fraud-detection workshop rarely puts on a slide. Generate data that is exactly, perfectly Benford by construction (a multinomial draw from \(P(d)\) itself, so there is no fraud, no error, and nothing to find), and run it through the standard test. Do this 40,000 times at each of nine sample sizes.

nχ² reject @5%χ² reject @1% mean χ²mean MADMAD > 0.015
505.15%1.28%8.0000.033299.0%
1005.17%1.19%8.0120.023691.8%
2505.12%1.03%8.0100.014945.9%
5005.08%1.00%8.0120.01057.2%
1,0005.01%1.05%8.0040.00740.1%
2,5004.97%1.05%7.9900.00470.0%
5,0004.79%0.92%7.9410.00330.0%
10,0005.09%1.04%7.9700.00230.0%
50,0004.80%1.01%7.9820.00100.0%

The chi-squared columns are exactly what a correctly calibrated test should show: close to 5% and 1% at every n, largest deviation across all nine rows a mere 1.90 standard errors from the nominal rate. That is a genuine relief, and also, on reflection, not a very demanding thing to ask of a test, since the null distribution of a chi-squared statistic under a true null is chi-squared by definition. The interesting column is the last one. Nigrini's 0.015 line, applied without adjustment for n, flags 91.8% of perfectly honest size-100 samples and does not fall under 1% until n passes roughly a thousand. A statistic whose sampling noise shrinks like \(1/\sqrt{n}\) cannot be judged against a threshold with no n in it.

D6 D8 D7 D5 D3/D4 D1/D2 sampling floor, 0.235/√n 200 1000 5000 20000 sample size, n (log scale) 0.00 0.09 0.18
Figure 4. Mean absolute deviation of each real dataset (dots) against the sampling-noise floor a perfectly Benford sample of the same size would show (dashed curve, fitted form 0.2345/√n). D3 and D4 sit almost on the floor: their MAD is explained by sampling noise alone. D1, D2, D5 sit well above it, a real if modest departure. D6 and D8 sit off the top of this axis entirely, which is the point: their failure has nothing to do with sample size.

Real honest data is rarely exactly Benford; more often it is approximately lognormal, smeared over some finite number of decades \(\sigma\). Formann's survey of which common distributions approach Benford's law, and how quickly, makes the same point we keep landing on: it is the spread of the distribution relative to a decade, not its family name, that decides the outcome, and several familiar survival-time and lifetime distributions satisfy the law only in specific parameter ranges rather than always [16][17]. We computed the exact first-digit law of a lognormal with a given \(\sigma\) (in closed form, by summing the normal CDF across decade boundaries, not by simulation) and then measured how often 40,000 resampled datasets from that law get flagged.

σ (decades)n=100n=500n=1,000 n=4,411n=10,000n=50,000
0.15100.0%100.0%100.0%100.0%100.0%100.0%
0.2582.1%100.0%100.0%100.0%100.0%100.0%
0.406.4%11.6%19.8%76.8%99.3%100.0%
0.505.1%5.3%5.3%6.6%8.5%27.2%
1.005.1%5.0%4.9%5.1%5.2%4.9%

Read a column and size costs innocence: honest data of fixed spread gets flagged more often simply because someone collected more of it, since a fixed-width departure from Benford becomes statistically undeniable at high enough n even though it was never fraud. Read a row and spread buys innocence back, but only past roughly \(\sigma = 0.5\). Below that, honest lognormal data is essentially always going to fail, at every sample size we tested. This is not a corner case. A great many real, non-fraudulent processes (annual rainfall at one station, a species' body lengths, exam scores rescaled to a log axis) live at \(\sigma\) well under 0.5.

MAD rule → falls fast, then all clear σ=0.30 → saturates near 100% exoplanet-corrected σ=0.50 exact Benford, nominal 5% 100 1,000 10,000 100,000 sample size, n (log scale) 0% 50% 100%
Figure 5. Chi-squared false-accusation rate at the nominal 5% level, by sample size, for five honest generating laws that are never fraudulent by construction. The flat dashed line is exact Benford data, correctly calibrated at 5% throughout. Nigrini's fixed MAD rule (short dashes) starts near total false conviction at small n and falls, but only because the rule happens to loosen relative to the shrinking sampling floor, not because anything changed about the data. Honest lognormal data with σ=0.30 decades (fine dashes) saturates toward 100% false accusation by n=800 and never comes back down.

Finally, we asked the question a real reviewer actually faces: not "would idealised lognormal data pass," but "if the book of business we are looking at is honestly what it appears to be, would a fresh honest sample of the same size get accused." We took the empirical digit law of D3 (bank assets, which passed) and of D5 (exoplanet periods, which failed chi-squared badly), corrected each for the upward bias that comes from feeding a noisy estimate back into itself (the correction is \(p_{\text{corr}} = P + t(\hat p - P)\) with \(t = \sqrt{1 - 8/\chi^2_{\text{obs}}}\), which sets the assumed true separation to its unbiased value), and resampled.

Source lawnplug-in reject @5% bias-corrected reject @5%
D3 bank assets1006.08%5.24%
1,00012.81%5.19%
4,411 (real n)47.95%5.32%
200,000100.00%11.55%
D5 exoplanets1009.68%9.06%
1,00062.62%56.74%
6,016 (real n)100.00%100.00%
200,000100.00%100.00%

At the bank's actual size, the honest, bias-corrected accusation rate is 5.32%, almost exactly nominal: the banks were never in any real danger. At the exoplanet catalogue's actual size, it is 100.00%. An honest astronomical survey, resampled from its own true digit law with the bias correction applied in its favour, still fails essentially every time. Nothing is wrong with the catalogue. The chi-squared test, run at this sample size on this particular departure from Benford, was never going to say otherwise, honest or not.

Two Earthquakes, Opposite Verdicts

D6 and D7 are, event for event, the same 19,652 earthquakes. D6 is the magnitude the catalogue prints. D7 is the seismic moment that magnitude encodes, via the standard seismological relation \(\log_{10} M_0 = 1.5M + 9.1\), which is textbook physics and no claim of ours. The point is what the exponential transform does to conformity. Moment spans 7.95 decades, well clear of the sub-one-decade danger zone that sinks magnitude itself, and yet D7 still fails: MAD 0.0486, chi-squared 7,470.8, nonconformity.

The cause is not spread. It is precision. The catalogue reports magnitude to one decimal place. Push a number with 20 possible decimal endings (.0 through .9, times a scale factor with no bearing on the mantissa) through a deterministic linear-then- exponential transform and you cannot manufacture more than 20 distinct mantissa values no matter how wide the resulting range looks, because the transform is one-to-one on a countable input set. We counted directly: 115 distinct mantissa values across 19,652 converted moments, against 141 distinct magnitudes in the catalogue. A mantissa confined to 115 discrete points cannot be uniform on a continuum, and no amount of additional decades helps.

To confirm the mechanism rather than merely assert it, we put the rounding back: spread each reported magnitude uniformly across the 0.1-wide bin the catalogue rounded it into (the least committal way to restore what was thrown away) and recomputed. Before: MAD 0.0486, chi-squared 7,470.8. After: MAD 0.0189, chi-squared 647.4, an 11.5-fold drop. Still technically over Nigrini's line at this enormous n, but the overwhelming majority of the original failure evaporates the moment the rounding is undone. The energies released by these earthquakes were always close to Benford. The reporting convention, one decimal place, chosen for reasons having nothing to do with digit statistics, was not. A forensic reviewer handed only D7 and told nothing about its provenance would have no way to distinguish "this dataset was tampered with" from "this dataset was rounded before I received it," and the test alone supplies no such distinction.

The Strongest Objection We Could Make

The objection runs like this. Every quantitative claim in this article is a restatement of known mathematics. Hill proved the mantissa's uniformity is the unique scale-invariant law decades ago [4][5]. Pinkham proved the scale-invariance argument in 1961 [3], and Fewster later showed the whole result follows from an even simpler argument about averaging distributions of wildly different scale together [6]. That data confined to under a decade cannot be Benford is arithmetic, not discovery, once you accept the mantissa definition. Nigrini himself has written that his thresholds were calibrated on specific audit populations, not handed down as universal law [9]. So what, precisely, did simulating any of this teach anyone who already understood the definitions?

We think the objection is mostly right, and the parts of this study that survive it are narrower than the abstract might suggest.

The mechanism sections (§5, §8) are demonstrations of known results, and we say so rather than dressing a confirmation up as news. Their value is not the discovery but the discipline: showing that our simulated data actually does what the theorem says it should, and our earthquake dataset actually fails for the reason we claim rather than for some other reason we failed to notice, is a check on us, not a finding about the world. A different club could have written the same code, gotten a bug, and published a false claim with total sincerity. Running the check is what stands between those two outcomes.

What we would defend as a genuine, checkable contribution is narrower and more useful: the specific false-accusation numbers in §7, computed for realistic sample sizes using this study's own datasets rather than idealised toy examples. That honest exoplanet data resampled at its own real n of 6,016 fails 100% of the time even after a bias correction that favours innocence is not implied by "the mantissa definition." It required actually building the resampling machinery, actually computing the bias correction Judge and Schechter's methodology implies [8], and actually running it on a real astronomical catalogue rather than a synthetic one. Diekmann made a related point about scientific data specifically [7], and our exoplanet result is a companion data point to his, not a replacement for it.

A second version of the objection cuts deeper and we have no full answer to it. Every honest-data model in this article, multinomial-Benford, lognormal, log-uniform, and empirical-law-plus-bias-correction, is still a model we chose. Real invoices carry round-number spikes, reporting floors, currency conversion artefacts and human rounding habits that none of our five null models fully captures. We tested one such habit (rounding to a fixed number of significant figures, §7) and found the test blind to it. We did not test rounding to a fixed currency unit, which is the far more common real habit and, we suspect, would move the false-accusation rate further still. That experiment is future work, not a result we can report today.

Where a Different Choice Would Change the Answer

Several decisions in this study could have gone otherwise, and saying which ones would have moved the headline numbers seems the least we owe a reader who wants to reuse any of this.

Chi-squared against a G-test or Kolmogorov–Smirnov. We used Pearson's chi-squared throughout because it is what Nigrini's own literature and most published election-fraud applications use [10][11][13], which makes our numbers directly comparable to that literature. A log-likelihood-ratio G-test would give a numerically close but not identical statistic on small samples; a KS test on the empirical mantissa CDF would be more sensitive to a smooth, uniform shift and less sensitive to the specific digit-by-digit spikes a chi-squared test targets. The false-accusation qualitative story (honest data of narrow spread gets flagged, honest data of wide spread mostly does not) would survive the swap. The exact percentages in §7 would not.

First-digit against first-two-digit. Nigrini's own applied work leans heavily on the first-two-digit test precisely because it is more sensitive [9]. A first-two-digit version of this study would very likely convict D3 and D4 of nothing while still catching D6, but we cannot report that number, because we did not run it: this study is scoped to the first digit only, stated as a limitation in the script's own docstring.

Nigrini's MAD bands against a size-adjusted MAD threshold. The entire point of §7 is that a fixed 0.015 cutoff misbehaves across n. Several authors have proposed n-adjusted alternatives; we did not adopt one, because the fixed threshold is what real-world forensic software and several published applications actually deploy [12][14], and measuring the tool as used, warts included, was the point of this study rather than measuring an improved tool nobody uses.

Which countries count. D1 excludes World Bank aggregate rows (regions, income groups) using the Bank's own metadata endpoint. Leaving those aggregates in would inflate n with numbers that are sums of other numbers already in the table, which is close to the textbook definition of violating independence, and would very likely move D1's verdict. We checked that we excluded them; we did not explore what including them would have done, because doing so on purpose would have been the wrong analysis to report.

What We Would Not Accuse Anyone Of

Start from the number that started this article: an honest dataset of size 100, exactly Benford by construction, fails Nigrini's standard MAD test 91.8% of the time. Whatever else this study found, that number alone should retire any claim that a failed first-digit test is, by itself, evidence of anything, for a dataset anywhere near that size. Move to a few thousand records and the naive rule calms down, but the underlying generating process still has to actually be close to Benford, which §5 and §9 show is a much narrower requirement than "the numbers are honest."

None of this makes Benford's law useless as an investigative tool, and we want to be precise about the distinction, because the sceptical tone of this article is aimed at one particular use and not at the mathematics. As a lead generator among many transactions of comparable kind and comparable scale, where an investigator already expects Benford conformity from the population being screened and is looking for the specific accounts that stand out from their peers rather than treating a single aggregate statistic as a verdict, the test has a defensible track record [8][9][10]. De Marchi and Hamilton used exactly this framing on self-reported industrial pollution data, flagging specific facilities for follow-up rather than convicting an entire national inventory [15], which is the shape of application these results actually support. As a courtroom-ready proof that a specific dataset was fabricated, on the strength of a chi-squared p-value or a MAD threshold alone, without also reporting how often the same test convicts honest data of the same size and shape, it is not supported by anything in this study, and we could not find support for it in the literature we read either.

We came to this admiring the mathematics more than when we started, not less. A single formula, \(\log_{10}(1+1/d)\), derived from nothing more than "the answer should not depend on your choice of units," correctly predicts the digit statistics of bank balance sheets, planetary orbits and the constants of physics, and fails exactly where the derivation says it must, on data crammed into less than a single order of magnitude. That the same formula gets marched into courtrooms and audit reports as a stand-alone verdict, with its own false-accusation rate left unmeasured, is not a flaw in the mathematics. It is a flaw in how the mathematics gets used, and it is the only part of this we set out to be sceptical about.

Reproducing this

Everything in this article comes from one file and one command. You need Python 3.12 and numpy; SciPy is used for one cross-check if importable and the script runs correctly without it.

python benford-real-data.py > benford-real-data-output.txt

Expect about 20 to 40 seconds on a laptop once the eight datasets are cached under analysis/data/ (roughly 15 additional seconds and 6 MB on the very first run, downloading from the World Bank, NIST, the FDIC, NASA and the USGS). Our run took 21.1 seconds on numpy 2.4.2, SciPy 1.13.1 and Python 3.12.3. The master seed is 20260914, hard-coded at the top of the file, with every simulated section spawning an independent stream from it, so the output is deterministic byte for byte. A rerun that disagrees with the archived output by more than sampling noise, or with the retrieval date's cached files replaced by a fresh download, means something changed and we would like to hear about it. The interactive model runs a smaller version of the same tests against the same cached datasets in your browser.

References

  1. Newcomb, S. (1881). Note on the frequency of use of the different digits in natural numbers. American Journal of Mathematics 4, 39–40. doi:10.2307/2369148
  2. Benford, F. (1938). The law of anomalous numbers. Proceedings of the American Philosophical Society 78(4), 551–572. JSTOR 984802
  3. Pinkham, R. S. (1961). On the distribution of first significant digits. Annals of Mathematical Statistics 32(4), 1223–1230. doi:10.1214/aoms/1177704862
  4. Hill, T. P. (1995). A statistical derivation of the significant-digit law. Statistical Science 10(4), 354–363. doi:10.1214/ss/1177009869
  5. Berger, A. & Hill, T. P. (2011). A basic theory of Benford's Law. Probability Surveys 8, 1–126. doi:10.1214/11-PS175
  6. Fewster, R. M. (2009). A simple explanation of Benford's Law. The American Statistician 63(1), 26–32. doi:10.1198/tast.2009.0005
  7. Diekmann, A. (2007). Not the first digit! Using Benford's law to detect fraudulent scientific data. Journal of Applied Statistics 34(3), 321–329. doi:10.1080/02664760601004940
  8. Judge, G. & Schechter, L. (2009). Detecting problems in survey data using Benford's Law. Journal of Human Resources 44(1), 1–24. doi:10.3368/jhr.44.1.1
  9. Nigrini, M. J. & Mittermaier, L. J. (1997). The use of Benford's law as an aid in analytical procedures. Auditing: A Journal of Practice & Theory 16(2), 52–67. doi:10.2308/ajpt-1302507
  10. Deckert, J., Myagkov, M. & Ordeshook, P. C. (2011). Benford's Law and the detection of election fraud. Political Analysis 19(3), 245–268. doi:10.1093/pan/mpr014
  11. Mebane, W. R. (2011). Comment on “Benford's Law and the detection of election fraud.” Political Analysis 19(3), 269–272. doi:10.1093/pan/mpr024
  12. Cho, W. K. T. & Gaines, B. J. (2007). Breaking the (Benford) law: statistical fraud detection in campaign finance. The American Statistician 61(3), 218–223. doi:10.1198/000313007x223496
  13. Nye, J. & Moul, C. (2007). The political economy of numbers: on the application of Benford's law to international macroeconomic statistics. The B.E. Journal of Macroeconomics 7(1). doi:10.2202/1935-1690.1449
  14. Rauch, B., Göttsche, M., Brähler, G. & Engel, S. (2011). Fact and fiction in EU-governmental economic data. German Economic Review 12(3), 243–255. doi:10.1111/j.1468-0475.2011.00542.x
  15. de Marchi, S. & Hamilton, J. T. (2006). Assessing the accuracy of self-reported data: an evaluation of the Toxics Release Inventory. Journal of Risk and Uncertainty 32(1), 57–76. doi:10.1007/s10797-006-6666-3
  16. Leemis, L. M., Schmeiser, B. W. & Evans, D. L. (2000). Survival distributions satisfying Benford's Law. The American Statistician 54(4), 236–241. doi:10.1080/00031305.2000.10474554
  17. Formann, A. K. (2010). The Newcomb-Benford law in its relation to some common distributions. PLoS ONE 5(5), e10541. doi:10.1371/journal.pone.0010541