Compact Block Relay Details: How Blocks Travel Efficiently Across the Global Network

Compact Block Relay, defined in Bitcoin Improvement Proposal 152 (BIP 152) and widely adopted by all major PoW chains, is the single most important optimization that makes block propagation fast, bandwidth-efficient, and resilient. Without it, sending a full 1–2 MB block to hundreds of peers every 10 minutes would waste enormous bandwidth and create delays that increase orphan rates. Compact blocks solve this by sending only the essential “skeleton” of the block and letting each receiving node reconstruct the rest from data it already has.

How Compact Block Relay Actually Works

  1. Block Announcement (Header First)
    When a miner or pool finds a valid block, it immediately sends a short inv (inventory) message or a compact block header (≈80 bytes) to its connected peers. This tells every node: “I have a new block with this hash.”

  2. Compact Block Construction (The Sender Side)
    The sending node (miner or pool server) creates a compact block that contains:

    • The full 80-byte block header (including the winning nonce and Merkle Root).
    • A short list of transaction short IDs (usually 6-byte or 8-byte fingerprints instead of the full 32-byte txid).
    • A small “prefilled” set of transactions that the sender believes the receiver probably does not already have (most commonly the coinbase transaction that pays the miner’s reward, because it is unique to this block).

    The short IDs are generated using a double-SHA256 hash truncated and salted with a nonce to minimize collisions. In practice, collisions are extremely rare and handled gracefully if they occur.

  3. Reconstruction on the Receiver Side
    The receiving node does the following:

    • Checks the header is valid and the Proof of Work meets the current difficulty.
    • Looks in its own mempool (the local database of unconfirmed transactions it has already seen and validated) for transactions whose short IDs match the ones in the compact block.
    • Inserts any matching transactions into the correct positions.
    • Requests only the few missing transactions (usually just the coinbase and perhaps a handful of others) using a getblocktxn request.
    • Once it has all transactions, it reassembles the full block, verifies every signature and rule, and accepts it if everything is correct.
  4. High-Efficiency Relay in Practice
    In ideal conditions (which are common due to well-synchronized mempools across the network), a full 1.5 MB block can be transmitted as a compact block of only 10–30 KB. This represents a 50–100× bandwidth reduction. Propagation time for a new block to reach 95 % of global hashrate typically drops to 1–3 seconds instead of 10–30+ seconds in the pre-BIP 152 era.

Analogy: Think of a compact block as sending a table of contents and a few missing pages instead of the entire 500-page book. Most nodes already have 99 % of the “pages” (transactions) in their mempool because those transactions have been floating around the network for minutes or hours. The sender only needs to deliver the unique coinbase transaction and any rare new transactions that appeared in the last few seconds. The receiver quickly fills in the blanks like completing a nearly-finished jigsaw puzzle.

Why Compact Block Relay Is Critical for Miners and Network Health

Real-World Implementation Details

Major mining pools (F2Pool, ViaBTC, AntPool, Foundry, etc.) run highly optimized relay networks with dedicated servers in multiple continents. Many use Graphene or even newer compression layers on top of compact blocks for further gains. Some pools also support announce-and-request modes where nodes can explicitly request compact blocks only when they want them, further reducing unnecessary traffic.

For merged mining setups (Litecoin + Dogecoin), compact block relay works identically on both chains, with the parent block propagating first and the auxiliary proof following immediately.

Edge Cases Handled Gracefully:

In practice, compact block relay has become so effective that most miners never think about it — it runs silently in the background, turning what used to be a major bottleneck into a non-issue. It is one of the quiet engineering triumphs that allows the Bitcoin network to handle billions of dollars in daily transaction value with sub-second global consensus finality for new blocks.