~~~
Have a look at
https://fork.observer/ (you might need to drag the graph or zoom out a bit to see recent reorgs).
Occasionally two miners or rather mining pools find a new block at roughly the same time. Each pool broadcasts its new block but block propagation isn't instant. Some mining pools see new block
1 first, other pools see new block
2 first and the other new block little later. Which new block "survives" will depend at which of these chain forks the next new block will be connected.
The chain with the most cumulative work wins. The mostly one block leaves that loose are ignored, but nodes can still record them in their blockchain data, only that such "abandoned" blocks and their transactions are not accounted to the coinstate.
If you run your own Bitcoin node, you can request details of all chaintips and leaves with the RPC command
getchaintips.
One of my longer running nodes gives this output:
$ bitcoin-cli getchaintips | jq
[
{
"height": 846946,
"hash": "00000000000000000001261cae018c5aa025ccfd52de0a74afb225a4d498a8bc",
"branchlen": 0,
"status": "active"
},
{
"height": 845627,
"hash": "0000000000000000000011018adf88550ea5d3e90ed0cfba89976aebc4e7f098",
"branchlen": 1,
"status": "valid-headers"
},
{
"height": 829613,
"hash": "0000000000000000000357088139cba6dc295875d7d3b2dd1fd764705727e451",
"branchlen": 1,
"status": "valid-fork"
},
{
"height": 827853,
"hash": "00000000000000000002c7de4016a0d09a47c19075cb73947e7f66e3461efd27",
"branchlen": 1,
"status": "valid-fork"
},
{
"height": 826152,
"hash": "00000000000000000000d4e6d4c176163b6c0608aee462ada8dd95b2e694dea1",
"branchlen": 1,
"status": "valid-headers"
},
{
"height": 823226,
"hash": "0000000000000000000365e705dbbea406f6e383f510d400fa23e40eae71e056",
"branchlen": 1,
"status": "valid-fork"
},
{
"height": 822941,
"hash": "00000000000000000003aaaacecbebd40417c2e6c39b5774a8a212d5b324052b",
"branchlen": 1,
"status": "valid-headers"
},
{
"height": 822261,
"hash": "00000000000000000003cc5fcca883d8474fe09d4d5fbbaaf526a201c61be2fb",
"branchlen": 1,
"status": "headers-only"
},
{
"height": 819343,
"hash": "0000000000000000000262af3fb1dd3bc62ad5a119c48a57267a3b96145ce82c",
"branchlen": 1,
"status": "valid-fork"
},
{
"height": 818038,
"hash": "000000000000000000029afbc6cbd660df5548a90ca9202e80866c5c680f29e4",
"branchlen": 1,
"status": "valid-fork"
},
{
"height": 816358,
"hash": "00000000000000000001d5f92e2dbbfcbc1e859873117e7983dd574857da5e14",
"branchlen": 1,
"status": "valid-headers"
},
{
"height": 815202,
"hash": "0000000000000000000093917031004a140b6db5c6adec217f814db98d7f0bde",
"branchlen": 1,
"status": "valid-fork"
},
{
"height": 813210,
"hash": "000000000000000000021c9f203786c0adcd7ae9a68a25d5e430d2a3dba613d5",
"branchlen": 1,
"status": "valid-fork"
},
{
"height": 811703,
"hash": "0000000000000000000270d5eed2457bf394e45f5035c1d721f4f3ccecbb2ba5",
"branchlen": 1,
"status": "valid-headers"
},
{
"height": 809478,
"hash": "000000000000000000006840568a01091022093a176d12a1e8e5e261e4f11853",
"branchlen": 1,
"status": "invalid"
},
{
"height": 804900,
"hash": "00000000000000000004c20bfe0ed1a9b714fbc07710531b8252dc998f9ccd67",
"branchlen": 1,
"status": "valid-fork"
},
{
"height": 803389,
"hash": "00000000000000000002ea858e57fc91ec34ae26a1d2a53720d7d4e08334fba2",
"branchlen": 1,
"status": "valid-fork"
},
{
"height": 800786,
"hash": "000000000000000000020e419bbdd75f21609d5a050a24bafe45b73a1574127d",
"branchlen": 1,
"status": "valid-fork"
},
{
"height": 792379,
"hash": "000000000000000000032956cbfd8721abe0572d81542e75e38e6185312bee09",
"branchlen": 1,
"status": "valid-fork"
},
{
"height": 789603,
"hash": "00000000000000000002cf6c7ae527fb21ce7721a7772c1da2998aa866b8a37a",
"branchlen": 1,
"status": "valid-fork"
},
{
"height": 789147,
"hash": "000000000000000000044390f8c5e9cfec8b27ba6d876d3cb7986b961f0eb30d",
"branchlen": 1,
"status": "valid-fork"
},
{
"height": 789135,
"hash": "0000000000000000000271e983f5999ee41b8fada533ffeb77a750e7d3a47c31",
"branchlen": 1,
"status": "headers-only"
},
{
"height": 788837,
"hash": "00000000000000000002f51100fafb5c60b2dc9623554c219afef3cf398cecbe",
"branchlen": 1,
"status": "valid-fork"
},
{
"height": 788805,
"hash": "0000000000000000000313dae7541b4c58e93832ddeaf96f8d6a5b5f8157d494",
"branchlen": 1,
"status": "valid-headers"
},
{
"height": 784121,
"hash": "000000000000000000046a2698233ed93bb5e74ba7d2146a68ddb0c2504c980d",
"branchlen": 1,
"status": "invalid"
},
{
"height": 783830,
"hash": "0000000000000000000366d2c12772a350f507879a5325203424e58ec440249b",
"branchlen": 1,
"status": "valid-fork"
},
{
"height": 783478,
"hash": "0000000000000000000446f7d3093688ae697386fed3f52a63812678ea6b251d",
"branchlen": 1,
"status": "valid-headers"
},
{
"height": 783426,
"hash": "00000000000000000002ec935e245f8ae70fc68cc828f05bf4cfa002668599e4",
"branchlen": 1,
"status": "invalid"
},
{
"height": 782129,
"hash": "000000000000000000036f461ab63c78f08401d3907a67fd2237166d8a373193",
"branchlen": 1,
"status": "headers-only"
},
{
"height": 781487,
"hash": "0000000000000000000125e5d7c0d2e1b83982e5284ea21e08f5a73b8109d41b",
"branchlen": 1,
"status": "valid-headers"
},
{
"height": 781277,
"hash": "0000000000000000000388f42000fa901c01f2bfae36042bbae133ee430e6485",
"branchlen": 1,
"status": "valid-fork"
},
{
"height": 772981,
"hash": "0000000000000000000682990a0dae862b48e0451d619938215dd47ed9560200",
"branchlen": 1,
"status": "valid-headers"
},
{
"height": 763445,
"hash": "000000000000000000065d0f6847466feeeaffa9663895cedde33aa12c262e00",
"branchlen": 1,
"status": "valid-headers"
},
{
"height": 759781,
"hash": "000000000000000000025edbf5ea025e4af2674b318ba82206f70681d97ca162",
"branchlen": 1,
"status": "valid-fork"
},
{
"height": 733430,
"hash": "00000000000000000006ead1cff09f279f7beb31a7290c2a603b0776d98dc334",
"branchlen": 1,
"status": "valid-headers"
},
{
"height": 730848,
"hash": "000000000000000000029ec31578132d01696910f299f8d104f29b8f8bbdc24f",
"branchlen": 1,
"status": "valid-headers"
},
{
"height": 723102,
"hash": "00000000000000000006a970fdd8e537521747aff917d909bf3a78b4b68143e1",
"branchlen": 1,
"status": "valid-headers"
},
{
"height": 714637,
"hash": "00000000000000000009f819d004fea5bcb77bda25f4906d0a39e79c9ba19590",
"branchlen": 1,
"status": "valid-fork"
},
{
"height": 705970,
"hash": "00000000000000000002328fe71f98eff128c9566bbf344d76234570b4a96e69",
"branchlen": 1,
"status": "valid-headers"
},
{
"height": 697008,
"hash": "000000000000000000077247c3ca9bae18511418667c4562fc6f92477b5d339e",
"branchlen": 1,
"status": "valid-headers"
},
{
"height": 696145,
"hash": "00000000000000000007c8948e5a89cd01804b7e5c6f454597c49d5b3b368b66",
"branchlen": 1,
"status": "valid-headers"
},
{
"height": 694157,
"hash": "00000000000000000006e24bdc5c1875fa40909ace270fb2b8756ac652ede82d",
"branchlen": 1,
"status": "valid-headers"
},
{
"height": 693118,
"hash": "00000000000000000011563e0ffef300d61465d69c92875e510050fc332bbe99",
"branchlen": 1,
"status": "valid-headers"
}
]
There are even invalid blocks recorded where the miner's software fucked up and assembled and mined a block with too many SigOps rendering the block invalid and discarded by other nodes. Very rare and shouldn't happen, but software and bugs...