Crackle Measured

The sound a magnet makes is the shape of a yield curve.

Put a coil around a bar of iron and magnetise it slowly. The amplifier does not hum — it crackles, because the metal goes over in jumps four orders of magnitude apart in size. Barkhausen heard that in 1919. This is the same measurement, made on a chain.

RUN — CHAIN

RUN / CHAINBase · 50,578,87550,665,274 · scanned 2026-08-30

The scan reads every Swap emitted by 10 Uniswap V3 pools over 86,400 consecutive blocks — 48 hours at 2.0 seconds a block — and computes the fee each swap paid from the amounts and the price carried in the event itself. No oracle, no vendor price, no dollar figure anywhere in the pipeline; every statistic below is a ratio, so the unit cancels.

Two selection rules, both stated because both are choices. The pools are the busiest by swap count across six samples spread through the window. Only pools whose factory() is Uniswap V3’s are kept, because the identical Swap signature is emitted by every fork of it — 3 different factories appeared among the candidates, and nothing in a log says which.

pools
10, all Uniswap V3 on Base
swaps read
194,284
window
86,400 blocks, 48 h
endpoint
base.drpc.org
API key
none, and there cannot be one
candidates dropped
17, listed in data/chain.json

The ruler

The same income, at twelve resolutions.

Nothing below changes except how wide a bucket you put the income into. At block resolution the median pool is empty 88.4% of the time; by the hour the median pool is never empty at all — while QUID/USDC 1.00% is still empty 73% of hours. All three are true. Only the first is what a depositor is exposed to, and only the second is what a rate is computed from.

0%25%50%75%100%1 block10 s1 min5 min20 min1 hQUID/USDC 1.00%WETH/USDC 0.01%how long an interval you average overshare of intervals paying nothing
Every pool, re-binned at twelve interval lengths from one block to one hour. Every point was measured — the whole block series re-summed at each width — because the shape of this curve is the claim. Measured
0%25%50%75%100%QUID/USDC 1.00%100.0WETH/cbBTC 0.05%92.8WETH/DEGEN 1.00%91.1WETH/VVV 1.00%90.1WETH/USDC 0.30%88.4USDC/Basecat 0.30%88.3SOSO/USDC 0.01%87.6WETH/USDC 0.05%81.2ETD/USDC 0.01%76.2WETH/USDC 0.01%61.8
Share of blocks in which each pool earned no fees at all. Measured

Every pool in the scan

Shape, with scale beside it.

A ratio says nothing about how much money is involved, and “heavy tails are an artefact of dead pools” is a fair objection a ratio cannot answer. So the fee income is here too — the deepest pool earned 138,101 USDC over the window; the pool with the most swaps earned 589.65 USDC across 55,446 of them.

PoolSwapsFee incomeBlocks paying nothingTop 1% of blocksGiniHold for ±10%
ETD/USDC 0.01% 20,603 3.86 USDC 76.2% 7.1% 0.817 0.6 h
SOSO/USDC 0.01% 22,332 288.53 USDC 87.6% 11.3% 0.895 1.3 h
WETH/USDC 0.01% 55,446 589.65 USDC 61.8% 30.8% 0.903 2.4 h
USDC/Basecat 0.30% 14,679 5,425 USDC 88.3% 51.9% 0.965 6.5 h
WETH/USDC 0.05% 25,704 6,977 USDC 81.2% 55.3% 0.971 10 h
WETH/cbBTC 0.05% 8,417 0.14 cbBTC 92.8% 83.2% 0.990 23 h
WETH/VVV 1.00% 15,676 0.22 WETH 90.1% 84.5% 0.987 89 h
WETH/USDC 0.30% 16,493 138,101 USDC 88.4% 97.2% 0.997 106 h
WETH/DEGEN 1.00% 14,713 0.16 WETH 91.1% 79.4% 0.983 130 h
QUID/USDC 1.00% 221 3.00 USDC 100.0% 100.0% 1.000 568 h
Sorted by holding time. Values in 48 h from block 50,578,875. A holding time in red is longer than the scan that measured it.
1 h6 h1 d7 dETD/USDC 0.01%0.6 hSOSO/USDC 0.01%1.3 hWETH/USDC 0.01%2.4 hUSDC/Basecat 0.30%6.5 hWETH/USDC 0.05%10 hWETH/cbBTC 0.05%23 hWETH/VVV 1.00%89 hWETH/USDC 0.30%106 hWETH/DEGEN 1.00%130 hQUID/USDC 1.00%568 hthe whole scan
Hours of holding before a pool’s realised fee income is within ten per cent of its own mean. The dashed line is the length of the entire scan; 4 pools are past it. Measured

The model Computed

Why a physicist would have expected this.

Alessandro, Beatrice, Bertotti and Montorsi described a domain wall driven against a restoring force and a pinning field that is Brownian in the wall’s own coordinate. The wall moves while the net force is positive and stops when it is not; the field is then raised by exactly the deficit and it repeats. The distance between two stops is one avalanche.

That model is worth having because it can be checked. During an avalanche the force is Brownian motion with drift, so an avalanche is an excursion above zero — a first-passage problem with a textbook answer and no free parameters:

ρ(S) ∝ S−3/2 e−S/Sc,   Sc = 4D/k²

The simulation is not fitted to that. It is run, and the build fails if it misses. The freely fitted exponent comes out 1.5120 ± 0.0070 against the exact 3/2, and the whole law survives a Kolmogorov–Smirnov test with nothing estimated at all.

10^110^210^310^410^510^-910^-810^-710^-610^-510^-410^-310^-210^-110^0Sc = 4D/k²slope −3/2avalanche size S, lattice spacingsdensity
Log-binned avalanche sizes with the analytic law drawn through them. The line is not a fit: its only parameter is 4D/k², which the simulation was given.
1.512 fitted exponent against the exact 1.5, over 2.2 decades.
0.87 D√n against the parameter-free law on 16,242 avalanches. The 5% critical value is 1.358.
1 median avalanche in lattice spacings, against a mean of 199.
103,882 avalanches before the mean is known to ten per cent. Bootstrap coverage there: 89.7%.

The same procedure, twice Measured

One of these numbers reproduced and one did not.

Run 35 minutes apart, over windows overlapping by 47.4 hours, with the same pool rule returning 8 of 10 the same pools.

First runSecond run Change
median share of blocks paying nothing88.3% 88.4%×1.00
median share carried by the busiest 1%51.8% 79.4%×1.53
median hours to know the mean to ±10%9.7 22.6×2.34
the worst pool, in hours162 568×3.51

That is the finding, applied to the instrument that found it.

The share of the clock that pays nothing is a property of arrival, measured across tens of thousands of blocks, and it comes back the same. The holding time is a property of the tail — set by the handful of blocks carrying most of the income — and forty-eight hours does not contain enough of those to pin it down. The number that moves is the number about rare events. Quote the shape; treat any single holding time as a floor with a window attached.

Re-run it Measured

On a window that did not exist when this page was written.

The panel below imports the same js/chain.js and js/stats.js the published scan used, picks a pool, and reads Base from your browser. If its numbers differ from the ones above, that is the finding: they are a property of a window.