How to Operate a Graph Indexer? Staking, Service, and Exit

 / 
OKX
 / 
1

Running a The Graph indexer today is not the same as it was a year ago. Staking itself is not complicated. What is complicated is whether you can actually earn rewards after staking. In 2025, 15.2% of indexing rewards went to indexers that did not actually provide query services. In response, The Graph launched the Reward Eligibility Oracle (REO): an indexer must successfully respond to eligible queries on at least 5 days within a rolling 28-day window to keep reward eligibility. In other words, if you only stake and do not serve queries, you can no longer earn rewards. If you plan to meet the minimum self-stake of 100,000 GRT, first ask yourself whether you can reliably handle real query traffic.

OKX Exchange
A leading global cryptocurrency platform,suitable for both beginners and experienced traders.
New user benefit: 20% off trading fees upon registration!!

Staking: First understand the difference between "staked" and "available"

On The Graph, staking GRT into the protocol does not mean those GRT can immediately be used for indexing. Graph Horizon introduced an intermediate step: provisioning. You first need to allocate your staked GRT to a specific data service (currently mainly SubgraphService), and then you can use that "provisioned" stake to create allocations and index specific subgraphs. This adds one more step compared to the old version, but the benefit is that you have clearer control over which service your stake is used for.

The minimum self-stake is 100,000 GRT, with no upper limit. You also need to set up an operator address to separate the keys that control funds from the keys used for daily allocation execution and query serving. This is a basic security measure. Do not use the same wallet to manage funds and run the node.

After staking, your delegation capacity is 16 times your self-stake. For example, if you self-stake 100,000 GRT, you can accept up to 1.6 million GRT in delegation. Delegated GRT increases your total stake used for allocations, but rewards must be shared between you and delegators according to the indexingRewardCut and queryFeeCut you set.

Service: REO determines whether you can earn rewards

This is the most important part of running an indexer right now. The REO rules are specific: within a rolling 28-day period, you must have eligible queries on at least 5 days. An eligible query is defined as: an HTTP 200 response returned within 5,000 milliseconds; the indexer's chain head is within 50,000 blocks; and the subgraph being queried has at least 500 GRT of curation signal. Eligibility is updated on-chain daily and lasts for 14 days.

This standard is currently "intentionally low," but The Graph has already announced tightening plans: the first tightening will require an indexer to start indexing at least 5 eligible subgraphs on each active day. If you do not plan to seriously serve queries and just want to lock GRT to earn issuance rewards, that path is being closed off.

The technical stack for serving queries is not light. You need to run Graph Node, connect to RPC endpoints for the relevant chains, run an IPFS node for fetching subgraph metadata, and run a PostgreSQL database. Only the ports needed for the indexing service should be exposed publicly. Management ports such as Graph Node's 8030, the index management API's 18000, and Postgres's 5432 should not be exposed to the public internet. Use Prometheus and Grafana for monitoring, and use the graphman tool for daily maintenance.

Another change brought by Horizon is that collecting query fees requires locking stake as collateral. When collecting query fees, you must temporarily lock a portion of GRT according to a "stake-to-fee" ratio. For example, collecting 10 GRT in fees may require locking 50 GRT of stake. This means your available stake must not only cover allocations but also leave room for collateral when collecting fees.

Exit: 28 days is a hard constraint, but first make sure there are no "legacy allocations"

Exiting as an indexer involves two levels: closing allocations and unstaking. After Horizon launched, there was a transition period: legacy allocations you created before can still be closed on the old system, but new allocations can only be created through SubgraphService. If you decide to exit before migration is complete, you need to handle all legacy allocations first. Otherwise, they may end up in a state you cannot properly manage.

Unstaking itself does not have the 28-day unbonding issue that delegators face. That is a delegator rule. As an indexer, your self-stake must go through a protocol-defined waiting period after unstaking before it can be withdrawn. The exact waiting period depends on the staking contract you use and current protocol parameters. There is no official fixed number of days that applies to everyone. You need to check the Graph Explorer or the on-chain state of the staking contract.

A more practical exit obstacle is the time window. REO eligibility is calculated on a rolling basis. If you stop serving queries during the exit process, eligibility will expire within 14 days, but this does not affect rewards you have already accumulated but not yet claimed. The real issue is this: if you close allocations and only then realize there are still unclaimed rewards, under Horizon allocations no longer need to be force-closed every 28 days, but POIs must be submitted regularly to keep allocations "fresh." If you miss the submission window, the rewards for that period are gone. Before exiting, first confirm that POIs for all active allocations have been submitted and rewards have been claimed. Only then start unstaking.

A judgment call: Is it still worth entering now?

Messari's Q2 2025 data can serve as a reference: indexing rewards in GRT terms fell 19.1% quarter-over-quarter, and annualized inflation dropped from 2.84% to 1.05%. The reward pool is shrinking, and REO is concentrating rewards in the hands of indexers that actually provide services. If you can reliably serve queries, maintain your node, and meet REO requirements, the competitive environment is actually cleaner than before. Indexers that only stake without doing work will be filtered out. But if you have no experience operating Graph Node, or cannot guarantee continuous uptime, the 100,000 GRT self-stake requirement combined with REO service requirements may not be a suitable "let me just try it" investment.

A more practical way to start is: do not stake yet. Use Subgraph Studio or a hosted service to test your familiarity with Graph Node operations. Confirm that you can reliably handle indexing and queries before committing GRT to enter the network. Once you stake, exiting costs more time and involves more operational complexity than entering.

Completion standard

It is not "the node is running" or "the allocation was created." It is: within a continuous 28-day period, your indexer successfully responded to eligible queries on at least 5 days, the REO dashboard shows eligibility is valid, and you can confirm on Graph Explorer or on-chain that current-period rewards have accumulated and are claimable. If REO eligibility is broken, rewards will not be paid to you even if the allocation is active. Check REO status first, then allocation status.

OKX Exchange
A leading global cryptocurrency platform,suitable for both beginners and experienced traders.
New user benefit: 20% off trading fees upon registration!!

References