UTXO set and chainstate
Terms used in this lesson
- UTXO
- Unspent transaction output: one discrete chunk of bitcoin that can be used as a transaction input.
Bitcoin Core separates block storage, indexes, mempool state, and the active UTXO database.
Loading lesson visuals...
Learn the idea
Bitcoin Core stores related but distinct data. Block files contain serialized blocks. The block index stores metadata and chain relationships. Chainstate is the active UTXO database plus tip information. The mempool is an in-memory and optionally persisted set of policy-accepted unconfirmed transactions. Optional indexes support extra queries but are not consensus state.
Receive and store block data
Validated or pending block bytes can be written to block files, while index records track hash, parent, work, status, and disk location.
Inspect every idea above to open it.
Mempools differ across nodes because arrival order, configuration, capacity, and policy differ. Confirmed block and UTXO validation provide shared consensus behavior.
The questions unlock after every required learning activity
Inspect every guided idea, open the worked example, rebuild its mechanism, and complete the deterministic lesson tool. Your progress is saved automatically.