Snapshot is a common term in computation. It means capturing the state of a system or data at a certain point in time. Snapshots are often used for reference, analysis, and monitoring changes. In blockchain, a snapshot includes information about transactions, addresses, balances, and other associated data up to a specific block.
For computers that need to store the history of a blockchain, snapshots are a practical solution. Instead of downloading all the blocks one by one, network participants can just download a snapshot. According to ethereum.org, all states of a blockchain can be retrieved from snapshots.
The concept can be confusing because it is used in different contexts. Crypto projects often announce snapshots before token airdrops or network updates, different blockchains use snapshots to allow new participants to sync to the network, and snapshots of the crypto market are used for price analytics. Below, we’ll discuss the mentioned use cases separately.
Snapshots Are Used for Airdrops and Community Engagement
Here and there, you can see a crypto project announce a snapshot before a token airdrop. During an airdrop, a project sends tokens to users' wallet addresses as a reward for their participation and to promote wider adoption of the token. A snapshot is a practical way to record the balance of each token holder at a specific time and distribute rewards accordingly. One of the latest projects that has announced a snapshot was the interoperability platform LayerZero. On May 2, the team tweeted that snapshot #1 was completed, likely hinting that there will be several airdrops.
Snapshots Are Used for Network Updates
Blockchain protocols often take snapshots before network upgrades, like forks. A fork is when a new version of a blockchain is created with new rules. Snapshots, here, help developers and network participants to ensure that the new chain will have the same history of transactions, addresses, balances, and other data as the original. For this purpose, a snapshot of a blockchain state is recorded by the project team or by services and products that are related to it. For example, after the Ethereum Merge in 2022, a group of Ethereum miners initiated a fork of the blockchain called Ethereum Proof of Work. They used a snapshot to copy data and distribute new ETHW tokens to users. Note that this fork was not part of the official Ethereum Merge upgrade, which involved transitioning Ethereum from a proof-of-work to a proof-of-stake consensus mechanism.
Snapshots Are Used for Syncing New Nodes to a Network
Bitcoin, Ethereum, and other blockchains function as decentralized databases. Their information is verified and stored in multiple computers connected to one another. These computers are called nodes. Public blockchains are open for everyone to join in and run a node. To do so, new participants need to catch up with the latest validated transactions and consensus, hold the latest state of the blockchain, and install software to communicate with other nodes. State snapshots allow new nodes to sync with the network more quickly including recent data on the blockchain. Otherwise, nodes would need to download and verify every transaction from the very first block of the blockchain, which can take several days or weeks. Snapshots reduce this time to several hours. Taking into account that there are new ways to optimize snapshots and compress data size, snapshots are a convenient way for node onboarding.
Snapshots Are Used for Crypto Market Analysis
Real-time and historical data about the crypto market are also captured through snapshots. Crypto exchanges, data aggregation platforms, trading apps, and other platforms provide snapshots for analytics and information purposes. For example, on CoinMarketCap’s Historical Data Snapshot section, you can see how the crypto market has changed over the years, starting from April 2013.
Crypto Market Snapshot from May 19, 2013. Source: coinmarketcap.com
Final Notes
Snapshots have different use cases in crypto. Taking a snapshot of a blockchain state and crypto market requires technical knowledge and is typically implemented by developers. With time, the process gets more automated and less complex. If you want to learn about how to take snapshots or use them to run a node, check the help guides of certain projects. However, if you’ve been searching for what snapshots are and what they are used for, we hope this overview has given you some answers.