What is a blockchain indexer and how does it work?
A blockchain indexer reads raw on-chain data, organizes it into a searchable database and serves it to apps through an API, so they avoid scanning every block.
A blockchain indexer is software that reads raw blockchain data, turns it into organized records and makes them quick to query. Apps that show transaction histories, charts or search results often get that data from an indexer rather than from the blockchain directly. Without indexing, finding everything tied to one user would mean searching the chain block by block.
Why does blockchain data need indexing?
A blockchain stores data as a chain of blocks, in the order things happened. The Graph's documentation points out that there are no tables or indexes, contract state sits in low-level storage and event logs that must be decoded, and related data is often spread across many contracts.
The standard way to read a chain is through a node and its JSON-RPC interface. Ethereum's JSON-RPC methods answer narrow questions, such as the balance of one address at one block or the number of the latest block. The Graph notes that this interface has no built-in filtering, sorting or joining, and that historical questions need archive nodes. A question like "every trade in this pool over the last day" would mean pulling and decoding large amounts of data each time. For more on how apps reach nodes, see what is an RPC in crypto.
How does blockchain indexing work?
An indexer does the heavy reading once, ahead of time. It follows new blocks, picks out the transactions and events it cares about, transforms them into structured records and saves them in a database. Apps then query that database, which returns only the data they asked for.
Alchemy's overview describes this as precompiling and indexing event data in advance, so queries run faster and the app does not have to request everything from full or archive nodes. The trade-offs it lists include harder debugging, limits on customization, ongoing costs and indexing speed that varies with data volume.
What is a subgraph?
A subgraph is a set of instructions for indexing one slice of blockchain data, the format used by The Graph. According to Alchemy, it has three parts:
- A manifest listing the smart contracts, events and data sources to watch.
- A schema defining the records to build, such as a trading pool with its tokens, address and fees.
- Mappings, small programs that run when a chosen event appears and save the transformed data.
The finished data is served through GraphQL, a query language that lets an app ask for exactly the fields it needs. Subgraphs can run on self-hosted software, hosted services or The Graph's decentralized network.
What does a The Graph indexer do?
On The Graph's network, Indexers are node operators who process subgraphs and answer queries for apps. As of November 2026, The Graph's docs say they must stake at least 100,000 GRT, which can be slashed if they serve incorrect data. They earn query fees and indexing rewards funded by 3% yearly protocol inflation, and can share rewards with Delegators who stake alongside them. Hardware needs range from small setups for a few subgraphs to large ones that index everything in use.
This guide explains how things work. It is not financial, legal or tax advice. Last updated .