Quick answer
What is an archive node?
An archive node is a full node that never deletes old state. A full node can tell you a balance now. An archive node can tell you the balance, contract storage or call result at any block since the first one. You need one for history: indexers, analytics, tax and audit tools, and tracing old transactions. Wallets, bots and apps that read current data need only a full node.
- Full node: newest state, about the latest 128 blocks on Ethereum
- Archive node: every state since genesis
- Ethereum archive: 2.25 TB on Erigon, up to 20 TB+ on Geth hash mode
Sources: ethereum.org, Erigon docs, Geth docs. Checked October 2026.
CHAPTER 01
What an archive node is
An archive node is a full node that keeps every past state of the blockchain. Ethereum's own docs describe archive nodes as full nodes that verify every block from genesis and never delete any of the downloaded data.
To see why that matters, you need one word: state. State is the snapshot of who owns what at one block: every account balance and every value stored inside every smart contract.
Each new block changes the state a little. Your node checks the block, applies the changes, and now has a new snapshot. The question is what happens to the old one.
A full node throws old snapshots away after a short while. An archive node keeps all of them, back to the genesis block (the very first block).
- Block, kept by both
- State kept
- State deleted
Both nodes check and store every block. Only the archive node keeps the state that each block produced.
CHAPTER 02
Archive node vs full node, side by side
Both node types check every block and both can send your transactions. The archive node also answers questions about the past, and pays for it with several times more disk and a longer sync.
Here is the whole difference in one table. The Ethereum numbers come from Erigon's own docs, measured in September 2026.
| Question | Full node | Archive node |
|---|---|---|
| What it keeps | Every block, plus state for recent blocks only | Every block, plus the state of every block |
| "What is this balance now?" | Yes | Yes |
| "What was it at block 10,000,000?" | No, state deleted | Yes |
| Trace an old transaction | Slow or fails: old state must be rebuilt first | Yes, from any point in history |
| Send transactions | Yes | Yes |
| Disk, Ethereum (Erigon) | 534.94 GB | 2.25 TB |
| Sync time, Ethereum (Erigon test) | about 5 h 40 m | about 14 h 20 m |
| Best for | Wallets, bots, dApps, sending transactions | Indexers, analytics, tax and audit tools |
| RocketRPC price | from $139 a month | from $289 a month |
Disk: Erigon hardware requirements, measured as of 17 Sep 2026. Sync: same page, Erigon 3.6.1 on a 16-core machine with NVMe, download capped at 400 Mbps. Checked October 2026. Prices from our price list.
One question, two answers
The quickest way to feel the difference is to ask both nodes the same old question. Below, an app asks for an address's balance at block 10,000,000 using the standard eth_getBalance call.
> eth_getBalance(addr, 10000000)
error: missing trie node 6f2a... (path )
> eth_getBalance(addr, 10000000)
result: 0x1bc16d674ec80000
CHAPTER 03
How a full node deletes old state
A full node keeps state for a short, moving window of recent blocks and deletes anything older. This is called pruning. On Ethereum the window is typically the most recent 128 blocks.
Ethereum makes a block every 12 seconds when all validators are online. So 128 blocks is about 26 minutes of history. Ask for state older than that and a pruned node has nothing to read.
Every time a block arrives, the window slides forward by one. The newest state joins, the oldest one drops out.
128-block window: ethereum.org, nodes and clients, updated 13 Jul 2026. 12-second blocks: ethereum.org, blocks, updated 25 Jul 2026. Checked October 2026.
Can a full node rebuild old state?
Sometimes, slowly. Geth's tracing docs say a full node can rebuild older states by replaying blocks from a saved point, which can take a long time for distant transactions.
That is fine once. It is not fine for an indexer that asks a million old questions a day. That workload is exactly why archive nodes exist.
CHAPTER 04
How big is an archive node?
On Ethereum, an archive node takes from about 2 TB to more than 20 TB, depending on the client. Erigon measured 2.25 TB on 17 September 2026. Geth's older hash-based archive can exceed 20 TB.
Most articles quote one number with no client and no date. That number is usually wrong for you. Archive data grows every day, and each client stores it in its own format.
So here is every figure we could confirm in official docs, with its client, its source and the date it describes.
Gnosis, ErigonGnosis, Erigon: 0.8 TB
Ethereum, ErigonEthereum, Erigon: 2.25 TB
Ethereum, RethEthereum, Reth: 2.8+ TB
Arbitrum OneArbitrum One: 3.7 TB
BaseBase: 4.2 TB
BNB Chain, ErigonBNB Chain, Erigon: 4.3 TB
Avalanche C-ChainAvalanche C-Chain: 13+ TB
OP MainnetOP Mainnet: 14 TB
Ethereum, Geth hashEthereum, Geth hash: 20+ TB
Bars compare the figures in the table below. They come from different dates and measure slightly different things (on disk, snapshot or minimum), so read them as a rough picture, not a ranking.
Archive and full node size by chain
| Chain and client | Full node | Archive node | Source and date |
|---|---|---|---|
| 534.94 GB | 2.25 TB | Erigon docs, on disk as of 17 Sep 2026Checked October 2026 | |
| at least 1.2 TB | at least 2.8 TB | Reth docs, as of 23 Jun 2025 (v2.7.0)Checked October 2026 | |
| not stated | about 2 TB path-based; over 20 TB hash-based | Geth docs, page edited 24 Feb 2026Checked October 2026 | |
| 901.6 GB snapshot | 4.2 TB snapshot | Base snapshots, snapshot of 15 Oct 2026Checked October 2026 | |
| about 2.3 TB pruned snapshot | about 3.7 TB archive snapshot | Arbitrum full node docs and archive node docs, undatedChecked October 2026 | |
| about 700 GB snapshot | about 14 TB snapshot | Optimism docs, as of June 2025Checked October 2026 | |
| about 500 GB active state | about 13 TB or more, growing | Avalanche docs, undatedChecked October 2026 | |
| about 4.5 TB extracted snapshot | no official figure we could confirm | Polygon docs, undatedChecked October 2026 | |
| not stated | 4.3 TB (5 TB minimum disk) | BNB Chain docs, 23 Jan 2025Checked October 2026 | |
| 314.35 GB | 803.35 GB | Erigon docs, on disk as of 19 Sep 2026Checked October 2026 |
All sources opened and checked in October 2026. "Snapshot" means the download size the chain publishes; extracted data on disk can be larger. "Undated" means the page shows no date.
Why the same chain has such different sizes
Look at Ethereum in the table: from about 2 TB to over 20 TB for the same history. The difference is the client, not the chain.
Geth's older hash-based archive stores every historical state as complete Merkle Patricia tries, which is why it can pass 20 TB. Its newer path-based archive, added in v1.16.0, needs around 2 TB. Ethereum's own docs make the same point: most clients need more than 12 TB, while Erigon stores the same data in under 3 TB.
Reth shows the effect of storage format too. Its storage page lists an Ethereum archive at 2.99 TB in its old format and 2.31 TB in its new one, measured at block 24,396,823.
CHAPTER 05
Errors that mean you need an archive node
If a node says state is missing, pruned or unavailable for an old block, you asked a full node about the past. Querying a newer block will work; for old blocks you need an archive node.
These are the exact messages from the client source code and docs. Your provider may wrap them in its own text, so search for the key words.
| Error message | Client | What it means | Fix |
|---|---|---|---|
missing trie node <hash> (path <path>) | Geth | The state for that block was pruned, so the node cannot read the balance, storage or call you asked for. | Archive node, or ask about a recent block (or latest) if you only need current data. |
required historical state unavailable | Geth, tracing | You traced an old transaction and no saved state was close enough to rebuild from. The search window (reexec) is 128 blocks by default. | Archive node. Raising reexec can work once, but it is slow. |
state at block #N is pruned | Reth | The node deleted the state for block N. | Archive node. |
insufficient changesets to revert to block #N | Reth | The node no longer has the change history it needs to rebuild the state at block N. | Archive node. |
block #N is not available, history has expired | Reth | This node dropped old block data itself, not just state. The message also tells you the earliest block it still has. | A node that keeps full history; an archive node does. |
Sources: Geth trie/errors.go, Geth EVM tracing docs, Reth provider errors. Checked October 2026.
CHAPTER 06
When you need an archive node (and when you don't)
You need an archive node when your code reads state at old blocks, regularly. If you only read what is true now and send transactions, a full node does the job for less than half the price.
Most people need a full node. Here is how to tell which side you are on.
You need archive
- Indexers and explorers that rebuild balances and contract data block by block
- Analytics and dashboards that chart values over months or years
- Tax and accounting tools that need a balance on a past date
- Auditors and researchers who trace old transactions step by step
- Backtests that replay a strategy against past on-chain prices and pools
A full node is enough
- Wallets showing current balances and sending transactions
- Trading bots that act on the latest blocks
- dApps that read current contract data and submit transactions
- Listening for new events as they happen
- Looking up an old transaction: blocks and transactions are still stored
One grey zone: you need a few old values, once in a while. Then a public block explorer can show you past transactions without any node of your own.
CHAPTER 07
Which node do I need? A two-minute check
Answer three questions in order. If any answer sends you to "full node", stop there.
Question 1: Does your code read balances, contract storage or call results at blocks older than about 128 blocks (26 minutes on Ethereum)?
NOFull node
YESGo to 2
Question 2: Does it do that often, from your own code (not a few lookups by hand)?
NOFull node plus a block explorer
YESGo to 3
Question 3: Do you need the whole history, or only the last few days?
DAYSStore what you need as it happens, on a full node
WHOLEArchive node
Not sure yet? Start with a full node. On RocketRPC you can switch to archive later from your dashboard and pay only the difference for the rest of your term.
CHAPTER 08
What an archive node costs
A dedicated archive node on RocketRPC costs $289 a month for Ethereum, Base, Arbitrum, Avalanche and Optimism, and $869 a month for Polygon. A full node on the same chains starts at $139.
Archive costs more for one reason: disk. Chapter 4 showed archives are several times the size of a full node, and they need fast drives. Reth's docs, for example, recommend TLC NVMe for both.
Polygon is the exception on price because its data is far larger than the others.
| Chain | Full node | Archive node | Chain page |
|---|---|---|---|
| $139/mo | $289/mo | Ethereum archive node | |
| $139/mo | $289/mo | Base archive node | |
| $139/mo | $289/mo | Arbitrum archive node | |
| $139/mo | $289/mo | Avalanche archive node | |
| $139/mo | $289/mo | Optimism archive node | |
| $219/mo | $869/mo | Polygon archive node |
Our list prices per node, per month, in US dollars. Pay 3, 6 or 12 months ahead for 10, 15 or 25 percent off.
Running it yourself instead
You can run an archive node on your own server. You then pay for the machine and its disk, and you spend the time: the first sync, every client upgrade, and watching that it stays in step with the chain.
If you want the endpoint without the upkeep, every price is on our dedicated node pricing page, and every chain we run is on the dedicated nodes page.
QUESTIONS
Archive node questions
What is an archive node?
An archive node is a full node that never deletes old state. It can tell you any account balance or contract value as it was at any block since the first one.
What is the difference between a full node and an archive node?
Both check every block. A full node keeps state only for recent blocks (typically the latest 128 on Ethereum) and deletes the rest. An archive node keeps the state of every block, so it needs several times more disk.
How big is an Ethereum archive node?
It depends on the client. Erigon measured 2.25 TB on 17 September 2026, Reth lists at least 2.8 TB (June 2025), and a Geth hash-based archive can exceed 20 TB. Sizes keep growing, so always read them with a date.
Do I need an archive node for my app?
Only if your app reads balances, contract storage or call results at old blocks, or traces old transactions. Wallets, most bots and apps that read current data and send transactions need a full node.
How long does an archive node take to sync?
It varies by client, chain and hardware. In Erigon's own test on Ethereum (version 3.6.1, 400 Mbps download cap), an archive node took about 14 h 20 m and a full node about 5 h 40 m.
Can I turn a full node into an archive node?
Not in place: a full node has already deleted old state, so it has to sync again with archive settings. On RocketRPC you switch from your dashboard and pay the difference for the rest of your term.
How much does an archive node cost?
On RocketRPC an archive node is $289 a month for Ethereum, Base, Arbitrum, Avalanche and Optimism, and $869 for Polygon, with no setup fee.
Why do archive node sizes differ so much between sources?
Each client stores history in its own format, and the data grows every day. A size without a client name and a date is not useful for planning.
SOURCES
Sources and how we made this guide
We opened every source below in October 2026 and copied each figure with the date the page gives. Where a page shows no date, we say so. Where we could not confirm a figure on an official page, we left it out. Prices are our own list prices.
- ethereum.org: Nodes and clients (updated 13 Jul 2026)
- ethereum.org: Ethereum archive node (updated 3 Apr 2026)
- ethereum.org: Blocks (updated 25 Jul 2026)
- Geth docs: Archive node (edited 24 Feb 2026)
- Geth docs: EVM tracing (edited 7 Feb 2023)
- go-ethereum source: trie/errors.go
- Erigon docs: Hardware requirements (measured 17 and 19 Sep 2026)
- Reth docs: System requirements (as of 23 Jun 2025)
- Reth docs: Storage (block 24,396,823)
- Reth source: provider errors
- Base: Snapshots (snapshot of 15 Oct 2026)
- Arbitrum docs: Run a full node (undated)
- Arbitrum docs: Run an archive node (undated)
- Optimism docs: Running an OP Mainnet node (as of June 2025)
- Avalanche docs: Chain state management (undated)
- Polygon docs: Sync node using snapshots (undated)
- BNB Chain docs: Archive node (23 Jan 2025)
Written by
Abraham, blockchain researcher
Abraham is a self-confessed nerd with knowledge of nearly every blockchain that has ever existed, from the first Bitcoin forks to modern app chains.
Published . Last updated .