Every day we read our own bitcoin node and measure what moves in and out of the 264 payout addresses of 115 mining pools — and we count a coin leaving ONCE, at the moment it leaves the address that was paid.
294 BTC paid in, and moved out · arrivals on the payout addresses on Oct-22 2026, the last day in this build, measured and published by askthetape.com.
A mining pool is paid at an address it published. This page watches 264 such addresses belonging to 115 pools, reads them off a public chain archive up to 2025-10-24 and our own bitcoin node since 2025-10-25, and prints two things a day: what arrived there, and what left. Leaving is counted ONCE — the first hop off the address that was paid — and we do not follow the coin any further. On 2026-10-22, the last closed day in this build, 293.61 BTC arrived and 245.36 BTC left, so the addresses ended the day 48.25 BTC heavier. Over the whole window, 2020-10-02 → 2026-10-22, 1,358,233.04 BTC arrived and 1,341,557.08 BTC left in 318,810 moves; 1448 of the 2212 days ended heavier than they started. The heaviest day out was 2020-12-28 (14,893.03 BTC). The one thing we can check ourselves is the money coming IN: the block reward we see has to equal the whole day's reward times the share of blocks whose payout address is on our list. On this build that ratio has a median of 1.0138 over 1756 days (0.9435 to 4.1047), and our list catches 78.48 % of the chain's blocks. 🩸 Mind what this is NOT. It is not a pool's whole wallet: we watch a published list of payout addresses, we do not co-spend-cluster an operational wallet, and we do not add workers' addresses. 🩸 And it is not a trace: where the money went after it left the payout address is a separate question, and this page does not answer it. A coin that moved to an exchange and a coin that moved to a cold address look exactly the same here.
| leg | a public chain archive, built once, to 2025-10-24, then our own bitcoin node, read block by block by the node bridge of the data line. An event is one (transaction, pool) pair; its value is the net bitcoin that transaction added to, or removed from, that pool's payout address set, and events under 0.01 BTC are not kept. `inflow_coinbase` is the block reward landing on a payout address, `inflow_other` is anything else arriving, `outflow` is the FIRST HOP out. Aggregation is done in integer satoshi; days are UTC days of the block header time. |
|---|---|
| what this is NOT | not a clustered pool wallet: only the 264 listed payout addresses of 115 pools are watched, workers' addresses are not added, and no operational wallet is inferred from co-spending. Not a hop-2 trace: the page stops at the first spend away from the payout address. Not complete emission: a block whose coinbase paid an address outside the list is invisible here. |
| coverage | 78.4790 % of the blocks the extract read paid their coinbase to an address on our list: the passport counts 252,697 such blocks over the whole span it read, and the 2212 days published on this page carry 252,546 of them (2020-10-02 → 2026-10-22). The rest are blocks of an unlisted pool, or of a pool paying from an address the map does not know yet; they are missing from this page, never guessed into it. |
| our own control | the only number on this page we can verify without anybody else: the coinbase we SEE must equal the whole day's block reward times the share of blocks our address list catches. Re-measured on this build from two files of this site — this series and the daily emission behind «block rewards by mining pool» — the ratio has a median of 1.0138 over 1756 days, between 0.9435 and 4.1047, on a DAILY share of blocks caught whose median is 0.9590 (the coverage row above counts the same thing over the whole span at once, which is why the two numbers are close but not equal). A shortfall means a coinbase output of the same block paid an address outside the map, which is exactly what coverage counts. |
| cadence | daily. The node bridge extracts the new blocks and the builder rewrites the files; fresh through D−1 after ~06:10Z. A UTC day is published only once a block with a header time at or after D+1 00:00Z exists, so no partial tail day ever reaches this page — the last day drawn is always a complete one. Updated through 2026-10-22 in this build. |
| the off-scale days | Two days in this window run off the top: on Aug-05 2026 MARA Pool's payout addresses sent out 4,518 BTC in 9 transactions (92 % of the day's departures), on Aug-21 997 BTC in 3 (76 %) — one pool moving its own coins, not the pools' everyday flow. The axis stops at p99.5 × 1.2 and marks those days at the top. |
| history | 2020-10-02 (public chain archive, built once, blocks 650732..920566); our own node from 2025-10-25 (pruneheight 920566). Earlier history exists only in an archive back-fill of the same addresses, and that is NOT built: what is not on this page is not a quiet zero, it is absent. |
| guards | the first day of an extract window is partial by construction (the bridge starts mid-day at the node's prune horizon) and is dropped — 2020-10-01; the running tail day is dropped until a later block exists — 2026-10-23; a hole larger than 30 blocks in the height sequence takes the days around it out of the published range — none in this build. Days published here: 2212, with 0 calendar gaps. |
| what is not built yet | addresses_count (needs address-level events; the bridge aggregates a transaction to one pool); in_house_flow (needs address-level events: a move between two addresses of the same pool nets to 0 here); mpi (needs 365 days of outflow: available from 2026-10-25 without the archive). Each of those needs address-level events or a year of our own outflow, and neither is invented here. |
| the level line | reserve is the balance of the 264 addresses, anchored by a full scan of the chain's unspent outputs. The height is real now, not only the shape: that scan stood at block 966,976 on 2026-09-14 and found 35,580.55 BTC sitting on them. The last published day, 2026-10-22, is the balance of the same addresses at block 972,674 — 33,478.60 BTC; between the scan and that block the addresses sent out a net 2,101.95 BTC, and that difference is the whole gap between the two numbers. Every earlier day is that same level walked back through its own netflow, so the anchor moved the height of this line, not its shape. |
| the address list and the scan | the map lists 264 payout addresses and every line on this page counts all of them. 7 of the 264 are entries of the TEST chain — addresses that cannot receive or hold a real bitcoin — so the full scan of unspent outputs that anchors the level line reads the other 257 and skips those 7 by name. Nothing is lost by the skip: a test-chain address can never appear in a block of this chain, so it can never carry a flow or a balance here. Both numbers come from the scan's own record of what it read and what it stepped over, and they are checked against the map's own count on every build — if they stop agreeing, this row disappears rather than rounds. |
| one block, two pools | a day's own count treats a coinbase block ONCE; the per-pool rows count it once for every pool on our list that the same coinbase paid. Re-measured on this build from the two files: on 21 of the 2212 published days, the first of them 2026-08-10, the pool rows carry 24 block-payments more than the days' own count — 252,570 against 252,546 — and each extra one is a single coinbase paying a second mapped pool in the same transaction. That is the definition, not a defect: the bitcoin columns of those same rows agree to 0.00000000 BTC, and it is only the block COUNT that can be read two ways. In the table below the pool rows are counted the pool way and the total row the day way, which is why the rows add up to 24 more blocks than the total. |
| units | BTC with 8 decimals in the file, aggregated in integer satoshi. Events below 0.01 BTC are not kept, so both the counts and the sums on this page are «moves worth noticing», not every output. |
| provenance | public chain archive, built once, one pass; checked against our own node bridge on blocks 925001-927000: 2394 of 2394 events equal (19.10.2026); node bridge bridge_extract.py over our own pruned bitcoind (pult); pool payout map v1 (two open MIT-licensed mining-pool lists (commits f678a4a6 and 75d54404), plus coinbase scriptSig tags read from our node). The blocks are consensus data — the same bytes on anybody's node; the payout map and the attribution are ours, and the reading is deterministic: the same block gives the same pool on every run. |
| 🩸 where it is thinner | the map is a published list, so a pool that starts paying from a brand-new address falls out of the coverage until the list catches up — that is the 21.52 % of blocks we do not see, and it is printed rather than smoothed. 55 of the 115 listed pools produced any event at all in this window: the rest mined nothing we could see. And the first hop is a floor on movement, not a measure of selling: a pool that shuffles between its own addresses shows up here as an outflow. One row of the table below looks wrong and is not: OCEAN shows 1,098 blocks against only 669.83 BTC arriving, 0.61 BTC a block where every other pool lands near 5.75. That is a pool paying its miners straight out of the coinbase — the payout address is on our list, the reward mostly never touches it. We print the row as measured rather than drop the pool, because the gap between the blocks it mined and the coins we saw is itself the fact. |
| policy | no backfill · the running day is never drawn · pool brands are named, individual miners are not · export: from 2025-10-25 (rows before that day are the exchange's own archive and stay here) |
| this build | data to Oct-22 2026 |
| policy | no backfill · read it here · export: from 2025-10-25 (rows before that day are the exchange's own archive and stay here) |
| pool | coinbase blocks | reward in, BTC | other in, BTC | moved out, BTC | net, BTC | days with an event |
|---|---|---|---|---|---|---|
| Foundry USA | 63,240 | 289,695.01 | 79753.39 | 369,448.17 | 0.22 | 1984 of 2212 |
| F2Pool | 43,281 | 234,288.13 | 3568.69 | 237,981.09 | −124.27 | 2212 of 2212 |
| AntPool | 37,973 | 161,588.11 | 20645.99 | 182,084.83 | 149.28 | 1495 of 2212 |
| Binance Pool | 19,507 | 118,748.10 | 4061.09 | 94,543.87 | 28,265.32 | 2212 of 2212 |
| BTC.com | 10,639 | 67,380.93 | 11078.64 | 78,794.59 | −335.02 | 1898 of 2212 |
| ViaBTC | 15,899 | 50,798.57 | 0.01 | 50,770.28 | 28.30 | 914 of 2212 |
| Braiins Pool | 8,520 | 48,984.68 | 8158.68 | 57,163.25 | −19.89 | 2199 of 2212 |
| Poolin | 7,173 | 44,336.92 | — | 44,336.92 | −0.00 | 1390 of 2212 |
| MARA Pool | 9,647 | 41,878.98 | 2049.14 | 43,807.17 | 120.95 | 1866 of 2212 |
| Luxor | 6,620 | 30,169.08 | 3463.34 | 33,580.94 | 51.47 | 1713 of 2212 |
| SpiderPool | 8,703 | 29,081.53 | 1398.47 | 30,348.02 | 131.97 | 1301 of 2212 |
| Huobi.pool | 3,438 | 23,892.77 | 417.86 | 25,315.88 | −1,005.25 | 403 of 2212 |
| SECPOOL | 4,867 | 16,597.45 | 40.00 | 16,624.88 | 12.56 | 1071 of 2212 |
| SBI Crypto | 3,022 | 13,668.77 | 1.01 | 13,583.95 | 85.84 | 1238 of 2212 |
| 1THash | 1,862 | 12,994.85 | — | 13,078.21 | −83.37 | 392 of 2212 |
| Carbon Negative | 1,263 | 7,002.87 | 4.27 | 6,987.74 | 19.40 | 1034 of 2212 |
| BTC.TOP | 845 | 5,935.98 | — | 5,971.84 | −35.85 | 273 of 2212 |
| ULTIMUSPOOL | 982 | 4,861.21 | — | 4,861.20 | 0.00 | 1020 of 2212 |
| Lubian.com | 495 | 3,490.69 | — | 14,167.27 | −10,676.59 | 88 of 2212 |
| WhitePool | 803 | 2,834.76 | — | 2,354.78 | 479.97 | 628 of 2212 |
| Rawpool | 392 | 2,606.60 | 90.11 | 2,696.69 | 0.01 | 148 of 2212 |
| EMCDPool | 309 | 1,977.86 | — | 1,977.86 | 0.00 | 166 of 2212 |
| Terra Pool | 200 | 1,270.69 | — | 1,270.69 | −0.00 | 170 of 2212 |
| OKKONG | 185 | 1,254.14 | — | 1,370.55 | −116.41 | 183 of 2212 |
| Mining Squared | 382 | 1,205.19 | — | 1,205.19 | 0.00 | 295 of 2212 |
| Sigmapool.com | 149 | 1,006.63 | — | 1,040.39 | −33.77 | 142 of 2212 |
| NiceHash | 125 | 801.24 | — | 801.24 | 0.00 | 157 of 2212 |
| BTCPool (unidentified) | 112 | 777.75 | — | 777.75 | 0.00 | 75 of 2212 |
| OCEAN | 1,098 | 669.83 | — | 659.70 | 10.12 | 688 of 2212 |
| KuCoinPool | 90 | 571.98 | — | 571.98 | 0.00 | 125 of 2212 |
| GDPool | 134 | 496.68 | — | 496.68 | −0.00 | 185 of 2212 |
| ArkPool | 61 | 413.57 | — | 413.20 | 0.36 | 52 of 2212 |
| Innopolis Tech | 126 | 396.22 | — | 396.22 | −0.00 | 174 of 2212 |
| PEGA Pool | 48 | 306.94 | — | 306.94 | 0.00 | 32 of 2212 |
| Titan | 38 | 242.37 | 40.77 | 283.14 | 0.00 | 71 of 2212 |
| MiningCity | 33 | 231.99 | — | 286.51 | −54.52 | 10 of 2212 |
| RedRock Pool | 70 | 220.43 | 42.00 | 262.13 | 0.30 | 366 of 2212 |
| Mining-Dutch | 31 | 134.44 | 3.00 | 137.44 | 0.00 | 58 of 2212 |
| CKPool | 32 | 124.56 | 0.37 | 124.93 | 0.00 | 49 of 2212 |
| BitFuFuPool | 31 | 98.67 | — | 98.67 | 0.00 | 42 of 2212 |
| CleanIncentive | 98 | 93.53 | 0.99 | 94.35 | 0.17 | 95 of 2212 |
| Zulupool | 11 | 76.44 | — | 76.18 | 0.26 | 35 of 2212 |
| BlockFills | 9 | 56.84 | — | 56.84 | 0.00 | 14 of 2212 |
| UKRPool | 6 | 44.28 | — | 126.55 | −82.28 | 8 of 2212 |
| MaxiPool | 8 | 26.23 | — | 26.23 | 0.00 | 15 of 2212 |
| AAO Pool | 2 | 13.23 | — | 13.23 | 0.00 | 3 of 2212 |
| OKMINER | 2 | 12.78 | — | 12.77 | 0.01 | 3 of 2212 |
| Neopool | 4 | 12.72 | — | 12.72 | 0.00 | 7 of 2212 |
| Est3lar | 4 | 12.52 | 20.46 | 32.77 | 0.21 | 238 of 2212 |
| SoloPool.com | 1 | 0.06 | — | 0.06 | 0.00 | 2 of 2212 |
| BitcoinIndia | 0 | 0.00 | — | 63.57 | −63.57 | 5 of 2212 |
| BTCC | 0 | 0.00 | 0.06 | 0.07 | −0.01 | 2 of 2212 |
| BitClub | 0 | 0.00 | — | 50.00 | −50.00 | 1 of 2212 |
| wiz | 0 | 0.00 | 8.86 | 8.86 | −0.01 | 72 of 2212 |
| Phoenix | 0 | 0.00 | 0.06 | 0.06 | 0.00 | 2 of 2212 |
| every pool in the window | 252,546 | 1,223,385.77 | 134847.27 | 1,341,557.08 | 16,675.96 | 2212 of 2212 |
The chart itself is drawn in the browser: turn JavaScript on to hover a day, pick a window and draw your line. The numbers above come from the last build, Oct-23 2026 21:24Z.
What the tape says today · what's new · all 111 metrics