A new post on the blog explains the two EVM block models behind Substreams and what “extended” support changes for developers. Summary and links below for discussion.
Two integration paths, two block models. A chain can be onboarded to Substreams through an RPC Poller integration or through full node instrumentation. Each produces a different block model:
- Base block (RPC Poller): captures what a standard RPC endpoint exposes, meaning blocks, transactions, receipts, and logs. It needs only a normal full node for live data and an archive node for history, so it is fast to stand up. Most recently added chains start here, and it is enough for most event-based indexing.
- Extended block (full node instrumentation): carries the complete internal record of each block, including internal calls, balance changes, storage changes, and contract code changes, plus nonce changes and the Keccak preimages that let a hashed storage slot be walked back to its mapping key when the contract’s storage layout is known. The same Protobuf structure carries both models, and each block records its own detail level. On a base block, the instrumentation-only fields come back empty (per the Substreams docs, reading internal calls on a base block returns an empty list).
Why extended matters. Internal calls, balance changes, storage diffs, and code changes are not in the standard JSON-RPC surface. Pulling them from RPC means debug_traceTransaction, the trace_ namespace, or state-diff tracers across archive state, which are expensive, rate-limited, and often gated or disabled. Extended blocks capture that data at execution time, for every block, and Substreams serve it with parallel replay, determinism, and reorg awareness.
How to check a chain. The Supported Networks page, powered by the networks registry, is the canonical source. Every EVM entry carries an evmExtendedModel flag and a blockFeatures field (base, extended, or extended@<block>). As of September 2026, extended support spans a large set of EVM networks. Arc, Robinhood Chain, HyperEVM, and Ink recently joined the extended model, alongside Ethereum, Base, BNB Smart Chain, Polygon, Arbitrum One, OP Mainnet, Unichain, Linea, Monad, and World Chain. Arbitrum One and OP Mainnet are hybrid: extended from a specific block height onward.
Full write-up: https://thegraph.com/blog/extended-blocks-for-substreams
Supported Networks Docs: Supported Networks | Docs | The Graph
Of course, many thanks to StreamingFast and Pinax for all their great work driving Substreams and support for these great chain ecosystems!
If there’s a chain you need on the extended model, note it here or email The Graph Foundation. Chain-support requests and integration questions are welcome in this thread.