Skip to content
You are reading Hyperledger Besu development version documentation and some displayed features may not be available in the stable release. You can switch to stable version using the version box at screen bottom.
Last update: March 29, 2021

Full and archive node types

Besu supports two node types, commonly referred to as full nodes and archive nodes.

Full nodes have the current state of the blockchain so cannot serve the network with all data requests (for example, the balance of an account as at an old block). Full nodes can guarantee the latest state for the blockchain (and some older states, but not all). You can check current balances, sign and send transactions, and look at current Dapp data.

Archive nodes have all of this and they also store the intermediary state of every account and contract for every block since the genesis block. An archive node can do everything a full node does, and it can access historical state data.

For Besu on MainNet, Archive nodes require significantly more disk space (approximately 3TB) than full nodes (approximately 750GB).


Besu running on other public testnets, such as Ropsten, and other Ethereum clients will have different disk space requirements.

To run an archive node, enable full synchronization using --sync-mode=FULL.

To run a full node, enable fast synchronization using --sync-mode=FAST.

Fast synchronization

Instead of a full synchronization (--sync-mode=FULL), which starts from the genesis block and reprocesses all transactions, fast synchronization (--sync-mode=FAST) downloads the block headers and transaction receipts, and verifies the chain of block headers from the genesis block.


Fast synchronization is the default for named networks specified with the --network option, except for the dev development network.

Fast synchronization is also the default if Ethereum mainnet is being connected to by not specifying the --network and --genesis-file options.


In Besu, pruning reduces the storage required by removing state trie nodes that are unreachable from recent blocks.


Using pruning with private transactions is not supported.

Pruning might increase block import times, but it does not affect the ability of nodes to stay in sync.

Questions or feedback? You can discuss issues and obtain free support on Hyperledger Besu chat channel.
For Hyperledger Besu community support, contact the mailing list