block size
Block size determines how much transaction data a single Bitcoin block can hold. The base limit is 1 MB, extended in practice to roughly 2-4 MB via the SegWit upgrade, which introduced a weight-based measurement system.
The 1 MB base block size limit was introduced by Satoshi Nakamoto in 2010 as a temporary spam prevention measure. Because every full node must download and validate every block, the limit also controls how much storage and bandwidth the network requires. A smaller block size keeps node operation accessible to more participants, supporting decentralization. A larger block size allows more transactions per block, reducing fees and confirming more payments in each 10-minute interval.
SegWit (Segregated Witness), activated in August 2017, restructured how block data is measured. Instead of raw bytes, the new unit is called block weight, with a limit of four million weight units per block. Legacy transaction data counts as four weight units per byte, while signature data (the "witness") counts as one. This discount incentivizes the use of SegWit transaction formats and effectively allows blocks to carry more transactions, with typical sizes reaching 1.5-2 MB in practice.
The block size debate was one of the most contentious in Bitcoin's history. One faction argued for larger blocks to support more on-chain transactions and lower fees directly. Another argued that large blocks would price out independent node operators, centralizing validation around well-resourced entities. The deadlock contributed to the creation of Bitcoin Cash in August 2017, which hard-forked to an 8 MB block size limit. Bitcoin retained the 1 MB base limit and pursued scaling through SegWit and the Lightning Network.