Data Sources
ESR is calculated using data from Beaconcha.in.
Beaconcha.in is one of the most popular and reputed Ethereum 2.0 explorers. Beaconcha.in indexes and provides data sourced from the consensus and execution layer. The Beaconcha.in API is comprehensive and provides historical data as well as the latest real-time data.
Data Requirements
To compute the ESR for any observation period, the following information is required:
The first and last epochs of the observation period
The network effective balance at the start of each epoch
The proposer of each slot in all the epochs
The execution layer block number in each slot
The rewards earned by proposers in the epoch where they proposed
Attestation Inclusion reward
Sync Inclusion reward
Slashing Inclusion reward
The execution layer rewards for each block including Priority Fees and MEV Rewards
The list of slashed validators in each slot
The effective balance of validators at specific epochs
Using the above information, it is possible to compute the consensus layer rewards and slashings, the execution layer rewards and the network effective balance for each epoch in the observation period. These values are aggregated to the level of the observation period to compute the final ESR value.
Epoch Information
Source: /api/v1/epoch/{epoch}
Data Description: Epoch level information such as finalised status, number of blocks, global participation rate, network effective balance, etc.
Usage:
Retrieve the latest epoch to infer the start-of-day epoch and end-of-day epoch
Retrieve network effective balance and slashing counts
Slots in each Epoch
Source: /api/v1/epoch/{epoch}/slots
Data Description: Slot level information of every slot in a specified epoch. Includes information such as the proposer, slashing count and the corresponding execution layer information, such as the block number in the slot.
Usage:
Retrieve the proposer for each slot
Retrieve the execution layer block number
Proposer Inclusion Rewards
Source: /api/v1/validator/{indexOrPubkey}/incomedetailhistory
Data Description: Epoch level information on the consensus layer rewards and penalties earned by the specified validators. Includes attestation rewards, sync committee rewards, proposer rewards, etc.
Usage:
Retrieve the proposer inclusion rewards for:
Attestation Inclusion
Sync Inclusion
Slashing Inclusion
Execution Layer Rewards
Source: /api/v1/execution/block/{blockNumber}
Data Description: Data from the execution layer for each specified block. Includes priority fees, MEV rewards, transaction count, gas used, etc.
Usage: Retrieve the rewards earned on execution layer, which is either the priority fees or the MEV rewards
Attester Slashings
Source: /api/v1/slot/{slot}/attesterslashings
Data Description: Provides detailed data on the attestations performed on slots that have had an attestation slashing. It is possible to infer the slashed attesters by searching for the common validator across multiple attestations
Usage: Retrieve all the validators that got slashed due to illegal attestation
Proposer Slashings
Source: /api/v1/slot/{slot}/proposerslashings
Data Description: Provides detailed data on the slots that have had a proposer slashing and the proposer that got slashed.
Usage: Retrieve all the validators that got slashed due to illegal proposing
Validator Balance History
Source: /api/v1/validator/{indexOrPubkey}/balancehistory
Data Description: Historical balance of the specified validators for the specified epochs
Usage: Retrieve the balance changes for all the validators that got slashed at the epoch where they got slashed
Last updated