Allocation Closures in Detail

The Process of Distributing Rewards.

Indexers play a key role in the distribution of indexing rewards and query fees. Let’s have a look at how it all works!

Reward-Distribution

Distribution of Indexing Rewards.

Indexing rewards in The Graph Network are generated by protocol inflation which is set to 3% annual issuance. The distribution of indexing rewards is carried out proportional to a subgraph’s curation signal. Similarly, the indexing rewards of Indexers are proportional to the stake allocated on a particular subgraph.

Distribution requirement #1

Allocation Closure.

In order to collect and distribute indexing rewards, the allocation of an Indexer needs to be closed. If an Indexer does not force close an allocation manually, it will be closed automatically after the maximum allocation lifetime, which is set to 28 epochs (1 epoch = ~ 24 hours). While an allocation is active, it will keep accruing rewards.

Annual Inflation

3%

Jannis-Pohlmann
Jannis Pohlmann

Edge & Node, Partner

“Delegators can close allocations for indexers after > maxAllocationEpochs (~28 days). This allows delegators to close in case the indexer goes offline or rejects to close. Note that indexing rewards are only distributed if the indexer closes, because only they can have work that they can prove to have done (via the proof of indexing)”

Distribution requirement #2

Proof of Indexing (POI).

The allocation of an Indexer needs to be closed with a valid proof of indexing (POI) that meets the standards defined by the arbitration charter. Submitting a POI for the first block of the current epoch is a requirement for the successful closure of an allocation – without which Indexers are not eligible for rewards. Consequently, indexing rewards are not distributed without POI.

The so-called proof of indexing (POI) serves as a verification that an Indexer has factually indexed the subgraphs they allocated their stake on. The POI for a block is a digest that details deployment on a subgraph for all entity store transactions.

Once indexing rewards are successfully claimed by an Indexer, they are distributed to the Indexer and their Delegators.

Pending Indexer Rewards .

Pending Indexer rewards are indexing rewards that are not yet collected by an allocation closure. An Indexer’s pending rewards can be monitored via the analytics dashboards at stake-machine.com or oracleminer.com.

The pending rewards of an Indexer can also be queried manually by using the mainnet subgraph provided bon the official explorer by The Graph. Simply insert the Indexer address into the following query and you will receive the IDs for all active allocations:

Copy to Clipboard

Once you have queried the allocation IDs, switch to the Rewards Contract on Etherscan to call getRewards():

  • Expand the dropdown where it says 10. getRewards
  • Enter the allocationID you queried earlier
  • Click the Query button
Query

Distribution of Query Fee Rebates .

Each individual subgraph has a query fee rebate pool in which query fees accumulate. The Graph Protocol’s gateway collects query fees whenever an allocation is closed – either automatically after the maximum allocation lifetime or manually by the Indexer.

The query fees distributed from the rebate pool of a subgraph are calculated based on an Indexer’s contributions to the rebate pool and their allocated stake on the subgraph.

After the dispute period that follows an allocation closure has passed, Indexers can claim query fees. Query fees that are successfully claimed are distributed to the Indexer and their Delegators.

Summary.

Both indexing rewards and query fees are collected and distributed by an Indexer manually force closing the allocation or automatically after the maximum allocation lifetime. A valid proof of indexing (POI) is necessary to successfully close an allocation.

Go Back

Indexer Knowledge Hub