PEARL orphan blocks

An orphan block is a validly-mined block that lost a chain race — two miners produced a block at the same height almost simultaneously, the network picked the other one, and yours got reorganised out. The miner gets nothing. Pearl has had 10 orphans tracked since we started watching, and Lord Of Pearls is the only explorer that recovers the miner address from the orphan's coinbase by parsing the raw block hex.

The miner most affected lately is prl1puv0gq…aqshKryptex Pool — they've had 3 blocks orphaned in the tracked window.

Recent orphans

HeightDetectedMinerLost rewardHash
#7491722m agoprl1puv0gq…aqshKryptex Pool−2,597 PRL406189be…45fe
#7491623m agoprl1pjlcup…4vwh−2,597 PRL9135948c…197a
#748424h agoprl1p2w3ru…xq7hAlphaMine−2,597 PRL6a1fdc86…b706
#748404h agoprl1pl7ch5…3xjw−2,597 PRLbd8d1106…57f6
#747886h agoprl1ph7wdz…paj2−2,598 PRLc4e875bc…2fba
#7463713h agoprl1p50ltk…hnnmPearlHash−2,599 PRL3ece70bc…401d
#7457117h agoprl1puv0gq…aqshKryptex Pool−2,599 PRLb10b5bd3…968d
#7456217h agoprl1puv0gq…aqshKryptex Pool−2,599 PRL80d0c6b6…bcda
#7446222h agoprl1pzc98k…qqem−2,600 PRL770f6861…4cdc
#7445323h agoprl1pspr7j…tsxpLuckyPool−2,600 PRLa3b735e3…24bd
#743991d 1h agoprl1pspr7j…tsxpLuckyPool−2,600 PRLb0b207c4…160f
#743031d 7h agoprl1puv0gq…aqshKryptex Pool−2,601 PRL64afda7d…f7e7
#743031d 6h agoprl1puv0gq…aqshKryptex Pool−2,601 PRL654b958a…a71b
#742951d 7h agoprl1pksfzr…ymmz−2,601 PRL1be6ec1c…69cb
#742781d 8h agoprl1p50ltk…hnnmPearlHash−2,601 PRL9a588310…d21f
#742241d 11h agoprl1puv0gq…aqshKryptex Pool−2,602 PRL3377543c…1147
#742051d 12h agoprl1puv0gq…aqshKryptex Pool−2,602 PRL309af64d…48d0
#742051d 12h agoprl1pl7ch5…3xjw−2,602 PRL8766eaab…d1ee
#741811d 13h agoprl1pl7ch5…3xjw−2,602 PRL4929d03f…a0a2
#741811d 13h agoprl1p50ltk…hnnmPearlHash−2,602 PRLe1fdad32…5f75
#741801d 13h agoprl1pksfzr…ymmz−2,602 PRLf9e0810f…f690
#741231d 16h agoprl1puv0gq…aqshKryptex Pool−2,602 PRL21e89151…befa
#739622d 1h agoprl1p2w3ru…xq7hAlphaMine−2,604 PRLc1ff913c…3193
#738112d 10h agoprl1p50ltk…hnnmPearlHash−2,605 PRL0d5e42b1…7b73
#737962d 10h agoprl1pksfzr…ymmz−2,605 PRLa955ba06…55ed
#737872d 11h agoprl1p50ltk…hnnmPearlHash−2,605 PRL3bee99d5…03a4
#737542d 13h agoprl1prdxmg…aypm−2,605 PRL978a43a6…b3f8
#736822d 17h agoprl1pksfzr…ymmz−2,606 PRL974ac310…8562
#736222d 20h agoprl1pksfzr…ymmz−2,606 PRLe330633e…59ee
#736052d 21h agoprl1pl7ch5…3xjw−2,606 PRL39c21889…6243

Why orphan blocks happen

Two miners, on opposite sides of the world, find a valid block at the same height within ~50ms of each other. Both broadcast their block to the network. Half the network sees one first, half sees the other — the chain temporarily forks. The next block to be mined picks a side, and within a few seconds every node converges on the longer chain. The losing block is now an orphan.

Orphans aren't a bug. They're a natural consequence of physics — light takes ~70ms to cross the planet, and block-finding is a memoryless Poisson process, so very-near-simultaneous wins are inevitable. The orphan rate is a function of network propagation speed and block frequency, not miner correctness.

Why miners care

An orphaned block is a lost block reward. At the current ~2,845 PEARL per block, every orphan costs the miner roughly $X (depending on PEARL price). For solo miners on rented GPUs that already operate on tight margins, even one orphan per day swings profitability noticeably. Knowing your orphan rate is a debugging signal — if you're losing more than the network average, your gateway latency, peer connections, or template-fetch loop probably needs tuning.

How miner attribution works

The Pearl full node returns -32603: not in main chain when you ask for an orphan block via the standard getblock RPC at verbosities 1 or 2. So most explorers can't show you who mined an orphan.

Lord Of Pearls works around this: we fetch the raw block hex via getblock <hash> 0 (which DOES work for orphans), then locate the coinbase transaction by its unique prevout signature (32 zero bytes followed by 0xFFFFFFFF — appears exactly once per block, in the coinbase tx's vin0). From there we forward-parse just that single tx, send its hex back to decoderawtransaction, and read the miner's address from the first non-OP_RETURN output.

The result: every orphan block on Pearl now has its miner address attributed, even the ones from before we started running this code. The historical backfill walked through every existing orphan after deploy.

Live updates

The dashboard home page shows the latest 3 orphans always-visible, with a "Show all" expander for the rest. New orphans appear within seconds of being detected. The full list refreshes every 5 seconds.