3 posts.
June 25, 2026 · 4 min read
eth_call defaults to the latest block, but you can point it at any past block to read state as it was then — a balance last Tuesday, an oracle price at a specific block. The catch: historical state reads need an archive node. Here's how to do it in viem, ethers, and web3.py, and why a full node returns 'missing trie node'.
Read →June 14, 2026 · 5 min read
Most developers either overpay for an archive node they don't need or hit a wall on a full node that can't answer their query. The difference comes down to one thing — historical state — and here's the simple test for which one your app actually requires.
Read →May 29, 2026 · 6 min read
What an Ethereum archive node actually costs today — hardware, sync time, bandwidth, hosted options — and the threshold where renting one beats running it yourself.
Read →