Archive nodes and historical state

What Is an Archive Node? Historical Data for Blockchain Teams

Understand what archive nodes retain, when teams need historical state, and what to verify before choosing an archive data source.

By DTEAM Infrastructure Team · Updated

The short answer

An archive node is configured to retain historical blockchain state so applications can query state associated with older blocks. This differs from a pruned node, which limits the historical state it keeps readily available. The precise meaning of “archive” and the supported history depend on the chain and client.

For Ethereum, archive data can answer questions such as an account balance or contract storage value at a past block. Ordinary current-state interactions do not usually require an archive node. Ethereum's archive-node documentation describes the tradeoff between retaining historical state and the storage and operating requirements involved.

Workloads that may need historical state

Historical state can matter to block explorers, analytics systems, security investigations, audit workflows, and applications that compare account or contract state across time. Other workloads need historical blocks or transaction logs but not historical state; those are different data requirements and may not need an archive node.

Write down the questions your system needs to answer before choosing an endpoint:

  • Which block ranges must be queryable?
  • Do you need historical state, historical blocks, logs, traces, or proofs?
  • Which RPC methods and chains must be supported?
  • How frequently will the application query older data?
  • What data freshness and response-time requirements apply?

The answers matter because archive capabilities are not interchangeable across chains, node clients, and service plans.

Operate an archive node or use a provider?

Running your own node gives a team direct control over configuration and operations, but it also requires infrastructure, storage planning, client maintenance, monitoring, and recovery procedures. Using a provider can reduce the amount of node operations the team manages, but it introduces service-policy, access, support, and provider-dependency questions.

Evaluate the full service rather than assuming that the phrase “archive RPC” guarantees every historical method. Ask which history is retained, how the provider tests that history, whether it is available on the required network, and what limits or service commitments apply. For client-specific behavior, consult that client's current documentation; for example, Geth documents its archive modes and historical-state tradeoffs.

Questions to resolve before deployment

  1. Confirm the exact query types and block ranges with the application team.
  2. Verify that the chosen node or service supports those queries on the target chain.
  3. Test representative historical queries, including the oldest required range.
  4. Review retention, request limits, backup, monitoring, and escalation policies.
  5. Decide how the application will behave if its primary historical data source is unavailable.

If a managed setup is a better fit, review DTEAM's dedicated RPC and node infrastructure and ask the team to confirm coverage for your specific network and query requirements.