Compare Indexers
An accurate, honest comparison of Envio against alternative indexers. Benchmarks you can run yourself, and every claim linked to its source.
Capability data checked 1 October 2026. Benchmark tables refresh automatically, last run 2 November 2026.
Aerodrome
Yield Basis
Curve
Caldera
WLFI
MetriBenchmark Comparisons
Indexing is not one workload, so one number cannot rank it. Pick a scenario to see what it tests and how each indexer did.
How well does a tool cope with data it has to read back? Every rETH transfer changes a balance, so each one means finding the row, updating it and saving it again.
How fast can a tool write? Every USDC transfer is stored once, with nothing to aggregate and nothing to look up first. This is the ingestion path on its own.
Not everything a tool needs is in the logs. On the eight busiest ERC-20s, every approval with a non-zero value is followed by a read of the allowance at that block. The benchmark answers all 15,703 calls itself at a fixed 200ms, so what this measures is how many a tool keeps in flight at once.
What happens when you do not know the contracts up front? The tool watches the Safe proxy factories, and each of the 82,268 proxies they create becomes another contract it has to follow from that moment on.
Every USDC transfer on Solana, through the chain's busiest program. Transfers hide inside swaps and routers, and many never say which token they moved, so the work is in resolving them rather than reading them.
| Tool | Crash recovery | Reorgs | RPC faults | Data fidelity | Head latency | Total |
|---|---|---|---|---|---|---|
Envio Subgraph | 11 of 11 | 7 of 7 | 16 of 16 | 6 of 6 | 4 of 4 | 44 of 44 |
Envio Indexer | 11 of 11 | 7 of 7 | 16 of 16 | 6 of 6 | 4 of 4 | 44 of 44 |
Squid SDK | 11 of 11 | 7 of 7 | 12 of 16 | 6 of 6 | 4 of 4 | 40 of 44 |
Ponder | 8 of 9 | 7 of 7 | 14 of 16 | 5 of 6 | 4 of 4 | 38 of 42 |
Subgraph (Graph Node) | 7 of 10 | 7 of 7 | 13 of 14 | 6 of 6 | 4 of 4 | 37 of 41 |
SubQuery | 11 of 11 | 0 of 7 | 14 of 14 | 6 of 6 | 3 of 4 | 34 of 42 |
Rindexer | 11 of 11 | 1 of 7 | 8 of 14 | 6 of 6 | 4 of 4 | 30 of 42 |
What does a tool do when something goes wrong? These checks restart its database mid-write, rewrite the chain underneath it, make the node it reads from fail, and hand it values that are legal but awkward, then look at what ended up in the database. They also time how long a new block takes to become readable.
How this is measured
The benchmark is maintained by Envio. Multipliers are worked out from the rates shown, so they can differ from the repository's own column by a rounding step. In the four EVM throughput scenarios every RPC row reads the same endpoint, Envio HyperRPC, and ground truth on the EVM scenarios is rebuilt from HyperSync logs. Envio Subgraph rows run each scenario's unmodified subgraph directory on a pinned subgraph build of envio from npm. External contract calls has no Substreams row, because the call would run on the Substreams server rather than against the endpoint the benchmark provides. The reliability checks read a generated chain instead of a real network, and tools with no plain RPC path, such as Substreams, are not in that table.
Run the whole suite the way CI does, then compare what you get with the table above.
git clone https://github.com/enviodev/open-indexer-benchmark && cd open-indexer-benchmark && ENVIO_API_TOKEN=your-token SQD_API_KEY=your-key node scripts/run-benchmarks.tsNote: the repository asks for Node 23.6 or newer, Docker, an Envio API token and an SQD API key. Some numbers may differ from the table, since these runs happen on GitHub's standard CI machine and your hardware, your network and the rate limits on whichever endpoints and tokens you use are all your own.
Competitor Comparison
Open the tool you are weighing us against. Every cell links to the page it came from, and the benchmark tables are regenerated from the repository on every deploy. Anything we could not confirm from a public source says so.
Envio vs The Graph
How does Envio compare with The Graph?
A subgraph is deployed once per network, while one HyperIndex indexer can cover several EVM chains. The Envio Indexer on HyperSync leads Graph Node on every EVM scenario in the benchmark. Graph Node is MIT and Apache-2.0 licensed, and Envio's is a custom EULA. A subgraph's schema carries over to HyperIndex with small changes, the manifest becomes a config.yaml and mappings are ported from AssemblyScript to TypeScript.
Is Envio faster than The Graph?
On these workloads, yes. In the 2 November 2026 run of the Open Indexer Benchmark, the Envio Indexer reading HyperSync recorded 287.7 times the events per second of a subgraph on Graph Node reading RPC on state aggregation, 410.4 times on the decoded event stream and 186.3 times on external contract calls, the three scenarios where Graph Node's data was verified. On factory contract registration the Envio Indexer on HyperSync recorded 258.7 times Graph Node's rate, against a Graph Node run that did not pass the data check in full.
Can I migrate a subgraph from The Graph to Envio?
Yes. The schema carries over with small changes, the manifest becomes a single config.yaml and AssemblyScript mappings are ported to TypeScript. There is a migration guide, Claude skills that guide an AI assistant through it, and a white-glove service that will do the migration for you.
When is The Graph the better choice?
When you want a decentralised, token-incentivised network rather than a single vendor, when you want to query the ecosystem of public subgraphs that already exist, or when an OSI licence is a requirement. Graph Node is MIT and Apache-2.0 licensed and can be self-hosted.
Envio vs SQD
How does Envio compare with SQD?
SQD's public Portal lists 109 datasets, which it counts per dataset rather than per chain, and Envio has first-class HyperSync support for 81+ EVM chains and will index any EVM chain over your own RPC. The Squid SDK is Apache-2.0, and Envio's is a custom EULA. Both index Solana and Hyperliquid's EVM chain. Envio adds Fuel, and SQD adds Substrate, Bitcoin, TRON and Hyperliquid HyperCore. On the benchmark the Envio Indexer on HyperSync leads the Squid SDK on state aggregation, the decoded event stream, external contract calls and factory contract registration. Both Squid SDK runs on factory contract registration did not match ground truth.
Is Envio faster than SQD?
On these workloads, yes. In the 2 November 2026 benchmark run the Envio Indexer on HyperSync recorded 21.9 times the Squid SDK's rate on state aggregation, 6.2 times on the decoded event stream, 1.1 times on external contract calls and 4 times on factory contract registration. Both Squid SDK runs on factory contract registration did not match ground truth.
Do I need an API key for Envio or SQD?
SQD's public Portal answers with no key, rate limited to 20 requests per 10 seconds. HyperSync needs an Envio API token, which is free, and indexers deployed to Envio Cloud do not need you to supply one.
When is SQD the better choice?
When you need non-EVM coverage Envio does not have, such as Substrate, Bitcoin or Hyperliquid HyperCore, when you want a public endpoint that answers with no key, or when you want a decentralised network rather than a single vendor. The Squid SDK is Apache-2.0, can write to any TypeORM-compatible database, and SQD Network pays independent worker operators in its own token.
Envio vs Goldsky
How does Envio compare with Goldsky?
Goldsky is a managed service listing 152 chains across 273 networks, with cross-chain subgraphs on its paid plans. Envio can be run yourself or on Envio Cloud, and it publishes throughput figures in the Open Indexer Benchmark, which does not currently run a Goldsky configuration, so the two have no current measured comparison.
Can I self-host Goldsky or Envio?
Goldsky is a managed service, though its Turbo engine, Streamling, can run on your own machine without Goldsky's chain data. HyperIndex can be run yourself, reading HyperSync with a free API token or any EVM chain from your own RPC.
What does Goldsky cost compared with Envio?
Goldsky gives a one-time $100 credit, then charges as you go, with subgraph worker hours at $0.05 after the first 2,250 a month and entities at $4 per 100,000 after the first 100,000. Envio has a free Development plan that is deleted at 30 days or sooner on usage limits, and Production Small hosting at $70 a month.
When is Goldsky the better choice?
When you want data delivered into your own systems with no infrastructure to run. Turbo pipelines stream into PostgreSQL, ClickHouse, Kafka, S3 and webhooks, their chain list is longer than Envio's first-class list, and existing subgraphs move over unchanged, deployed with Goldsky's own CLI.
Envio vs SubQuery
How does Envio compare with SubQuery?
SubQuery lists 304 networks on its own count, the most of any indexer on this page, across Polkadot, Cosmos, Stellar, NEAR, Concordium, Solana, Algorand and Starknet, and it is GPL-3.0, where Envio's is a custom EULA. Envio covers EVM chains, Solana and Fuel, and the Envio Indexer on HyperSync leads SubQuery on every EVM scenario where SubQuery recorded a rate.
Which indexer supports more chains, Envio or SubQuery?
SubQuery, on its own count. It lists 304 networks. Envio has first-class HyperSync support for 81+ EVM chains, plus Solana and Fuel, and will index any EVM chain over your own RPC endpoint.
Is Envio faster than SubQuery?
In the 2 November 2026 benchmark run, yes. The Envio Indexer on HyperSync recorded between 514 and 2,980.2 times the events per second of SubQuery across the three scenarios where SubQuery recorded a rate. Two of SubQuery's runs did not pass the data check in full, and the tables say why. SubQuery indexed nothing inside the 300 second cap on factory contract registration.
When is SubQuery the better choice?
When your chains are outside EVM and Solana. SubQuery lists 304 networks including Polkadot, Cosmos, Stellar, NEAR, Concordium, Algorand and Starknet, and it is GPL-3.0, so you can run and modify it yourself. Envio has first-class HyperSync support for 81+ EVM chains, plus Solana and Fuel.
Envio vs Ponder
How does Envio compare with Ponder?
Ponder is MIT licensed, runs on any EVM chain over your own RPC and is self-hosted with no vendor pricing. Envio's is a custom EULA, and Envio Cloud is a managed option with a free Development plan and paid Production plans. Ponder indexes EVM chains only. Envio also covers Solana and Fuel, and the Envio Indexer on HyperSync leads Ponder on every EVM scenario in the benchmark.
Is Envio faster than Ponder?
In the 2 November 2026 benchmark run, yes. The Envio Indexer on HyperSync recorded between 48.8 and 372.5 times the events per second of Ponder across the four scenarios. One of Ponder's runs did not pass the data check in full, and the table says why.
How do Ponder's and Envio's licences compare?
Ponder is MIT licensed. Envio's code is public under a custom EULA that allows self-hosting but not offering it to others as a hosted service, and generated code is free to use, copy and modify. Ponder's licence is the more permissive of the two.
When is Ponder the better choice?
When you want a small MIT-licensed framework you run entirely yourself, with no vendor in the path and no licence restrictions, and your chains are EVM. It also serves SQL over HTTP and Postgres directly alongside GraphQL.
Envio vs Ormi
How does Envio compare with Ormi?
Ormi hosts The Graph-compatible subgraphs and lists 47+ networks on its chain list. Several rows in the table above are marked not verified because Ormi's public docs do not cover them, and Ormi does not appear in the Open Indexer Benchmark.
What does Ormi cost compared with Envio?
Ormi publishes a 14 day free trial and $75 per subgraph a month. Envio has a free Development plan that is deleted at 30 days or sooner on usage limits, and Production Small hosting at $70 a month.
Is Ormi subgraph compatible, and is Envio?
Both take existing subgraphs. Ormi runs AssemblyScript mappings as The Graph does. HyperIndex keeps the schema with small changes, turns the manifest into a config.yaml and ports mappings to TypeScript, and Envio also offers subgraph hosting with a subgraph-compatible GraphQL endpoint.
When is Ormi the better choice?
When you want existing subgraphs hosted with flat, predictable pricing. Ormi charges per subgraph per month rather than metering queries or entities, and takes existing manifests, mappings and schemas as they are.
Migrate An Existing Indexer
A subgraph's schema carries over with small changes, the manifest becomes a single config.yaml and AssemblyScript mappings are ported to TypeScript.
See what changes in the code
The manifest becomes a config.yaml that can hold several chains, and the handler moves from AssemblyScript to TypeScript, with save replaced by a context set.
- kind: ethereum/contract
name: PositionManager
network: mainnet
source:
abi: PositionManager
address: "0xbD216513d74C8cf14cf4747E6AaA6420FF64ee9e"
startBlock: 21689089
mapping:
language: wasm/assemblyscript
eventHandlers:
- event: Transfer(indexed address,indexed address,indexed uint256)
handler: handleTransfername: uni-v4-indexer
chains:
- id: 1
start_block: 21689089
contracts:
- name: PositionManager
address: "0xbD216513d74C8cf14cf4747E6AaA6420FF64ee9e"
events:
- event: Transfer(address indexed from, address indexed to, uint256 indexed id)export function handleSubscription(event: SubscriptionEvent): void {
const subscription = new Subscribe(event.transaction.hash + event.logIndex);
subscription.tokenId = event.params.tokenId;
subscription.address = event.params.subscriber.toHexString();
subscription.save();
}indexer.onEvent(
{ contract: "PoolManager", event: "Subscription" },
async ({ event, context }) => {
context.Subscription.set({
id: event.transaction.hash + event.logIndex,
tokenId: event.params.tokenId,
address: event.params.subscriber,
});
},
);Both examples are shortened from the Uniswap v4 pair in the migration guide. Read the full guide
Envio Mythbusters
Things written about Envio that are not true today. Each is quoted from its live page, next to the Envio page that disproves it.
"manual account mapping; no automatic IDL/Anchor decoding"
Source: sqd.dev/compare/sqd-vs-envio, facts verified June 2026HyperIndex decodes Solana instructions from an Anchor, Shank or Codama IDL. Discriminators, argument layouts and account names, including nested account groups, all come from the file. A layout is declared by hand only for a program with no IDL, or to override one.

Hosting model "Self-hosted", and "requires teams to manage infrastructure, scaling, monitoring, and reliability themselves"
Source: blog.ormilabs.com, Best Blockchain Indexers in 2026, last updated May 2026HyperIndex can be self-hosted, and it can also run on Envio Cloud, a fully managed hosting service that provides the infrastructure, scaling and monitoring for you.

HyperSync is not EVM only. HyperIndex indexes Solana through HyperSync for Solana, the same data engine behind its EVM indexing, and Fuel through HyperFuel, its Fuel equivalent.
"HyperIndex doesn't support Solana." and, in their table, "Non-EVM chains: Not supported"
Source: indexing.co/compare/envioHyperIndex supports Solana in production, reading data from HyperSync instead of an RPC node. It also covers Fuel.
Pricing listed as "Not public (contact via Discord)"
Source: indexing.co/compare/envioEnvio publishes its prices. Hosting runs from a free Development plan to Production plans at $70, $300 and $800 a month, with Dedicated priced on request, and HyperSync has its own published plans.

"Reorgs in Envio require handler-level logic in application code."
Source: moralis.com/data-feeds-by-continuumReorg handling is built into HyperIndex and on by default, covering reorgs up to 200 blocks deep on most chains. Arbitrum and OP Mainnet default to a depth of 0, which you can raise in config. It rolls back every entity your handlers wrote, and detection is guaranteed when reading from HyperSync. Only side effects outside the database, such as calls to external APIs, are yours to handle. In the Open Indexer Benchmark's reliability suite, which measures every tool on its RPC path, the Envio Indexer passes all 7 reorg checks.
Frequently Asked Questions
Who runs these benchmarks?
The Open Indexer Benchmark started in May 2025 as a fork of Sentio's research. That repository was later closed, and Envio has maintained the public fork since, so the whole repository is public and anyone can check or rerun it. In the four EVM scenarios shown here, each tool runs in GitHub CI, one job per tool per data source, started the way its own documentation recommends for production. Each tool's output is checked against ground truth rebuilt from HyperSync logs, and every RPC row reads the same endpoint, Envio HyperRPC. The repository notes contributions from the SQD team, and issues or pull requests are the way to correct a row that looks wrong.
Which blockchain indexer is fastest?
It depends on the workload, which is why the benchmark runs several scenarios rather than one. In the 2 November 2026 run, counting only rows whose data was verified, HyperIndex is fastest on Solana USDC transfers. It is joint fastest with Envio Indexer (ClickHouse) on state aggregation. It is joint fastest with Envio Indexer (ClickHouse) on factory contract registration. Rindexer, which reads Envio's HyperSync, is fastest on the decoded event stream. Envio Indexer (ClickHouse), which reads Envio's HyperSync, is fastest on external contract calls. Every scenario is in a public repository you can clone and run.
How do indexers cope with crashes, reorgs and RPC failures?
The Open Indexer Benchmark includes a reliability suite. It restarts a tool's database mid-write, rewrites the chain underneath it, makes the node it reads from fail and hands it values that are legal but awkward, then checks what ended up in the database. In the latest results Envio Subgraph and the Envio Indexer passed all 44 checks. The Squid SDK passed 40 of 44, Ponder passed 38 of 42, Graph Node passed 37 of 41, SubQuery passed 34 of 42 and Rindexer passed 30 of 42. Every check runs on a generated chain, so each tool is measured on its RPC path, and a check counts only if it passes on every run. The repository itself says a full score means a tool survived the situations written down so far, which is a smaller claim than reliable. Its reliability README lists each check and what a pass means.
How much faster is Envio than The Graph?
It depends on the workload and on the data source. In the 2 November 2026 run of the Open Indexer Benchmark, the Envio Indexer reading HyperSync recorded 287.7 times the events per second of a subgraph on Graph Node reading RPC on state aggregation, 410.4 times on the decoded event stream and 186.3 times on external contract calls, the three scenarios where Graph Node's data was verified. On factory contract registration the Envio Indexer on HyperSync recorded 258.7 times Graph Node's rate, against a Graph Node run that did not pass the data check in full. Much of that gap is the data source, so it is worth reading the rows where both read the same RPC endpoint.
Can I move an existing subgraph to Envio without rewriting it?
In some cases, yes, with no rewrite at all. The pinned Envio Subgraph build runs an existing subgraph directory as it is, which is what the benchmark's own Envio Subgraph rows do. For a full move to native HyperIndex, the schema carries over with small changes, the manifest becomes a single config.yaml and AssemblyScript mappings are ported to TypeScript. There are guides for The Graph and for Alchemy Subgraphs, which Alchemy sunset on 8 December 2025, HyperIndex ships Claude skills that guide an AI assistant through the migration, and Envio's white-glove service will do the migration for you.
Does Envio support Solana?
Yes, and it's production-ready. HyperIndex reads Solana data from HyperSync, not an RPC node. Add an Anchor, Shank or Codama IDL and every instruction is decoded, including CPIs, with optional SPL Token and Token-2022 balances. Config, TypeScript handlers and Envio Cloud deploys work as on EVM, but a Solana indexer runs separately from an EVM one.
Can one indexer cover EVM chains and Solana at the same time?
No. An indexer's config.yaml has a single ecosystem field that selects the chain family it targets, either evm, svm or fuel, so one indexer covers one of them. Ethereum and Monad sit in the same indexer because both are EVM, and Solana runs as its own indexer alongside it, with its own config.yaml and handlers. Both deploy to Envio Cloud the same way.
Do I need an API token to use Envio?
To read from HyperSync, yes, and the token is free. HyperSync returns 401 without one, so an indexer you run yourself needs it set. Indexers deployed to Envio Cloud do not need you to supply one.
What is the difference between an indexer and an RPC provider?
An RPC provider serves raw chain data one request at a time. An indexer reads that data continuously, runs your logic over it, and writes the result into a database you can query. Alchemy, QuickNode, Infura and Helius are mainly RPC providers. The Graph, SQD, Goldsky, SubQuery, Ponder, Ormi and Envio are indexers, and some of them, including Goldsky and Envio, also offer RPC endpoints. Most production teams use both.
Try Envio on your own indexer
Start free and have your indexer running on Envio in minutes, or talk to the team about moving a production workload.