beacon.validator.income table provides a daily snapshot of the consensus & execution layer income (MEV rewards) of active validators.
There is one unique income record per active validator per day. For each validator, there will be an entry until the validator is fully withdrawn.
Consensus Layer Income
Validators on Beacon Chain earn consensus layer income from the following sources:- rewards (attestation, block proposing, sync committee rewards)
- penalties for missed or incorrect attestation votes and inactivity leaks (already netted into the attestation and sync committee rewards above)
beacon.raw.total_rewards) for every single active validator.
The daily consensus layer income received by each validator is calculated by summing the total attestation rewards (from beacon.raw.total_rewards), sync committee rewards (from beacon.raw.sync_committee_rewards) and slot proposing rewards (from beacon.raw.block_rewards). Slashing penalties are not included in the consensus layer income. The income can be negative if the validator received penalties.
For granular consensus income data, please query beacon.validator.consensus_income model - this table provides slot-level consensus income from attestations, block proposing and sync committee reward paritcipation.
Execution Layer Income
Execution Layer Income of the validator is dependent on whether there is proposer-builder separation (PBS).-
PBS Blocks: These are blocks where the builder sends an MEV payout to the Proposer Fee Recipient (block proposer), which typically happens in the last transaction of a block. There The payout is sometimes sent directly from the builder’s block fee-recipient address, and sometimes from a separate wallet the builder uses specifically to disburse proposer payouts — see the
has_mev_rewarddetection logic onethereum.raw.block_rewardsfor how both cases are identified. - Non-PBS Blocks: For blocks that do not have build -> proposer MEV payout, the execution layer income will be the total builder priority fee reward from transactions + the** total direct ETH transferred** to block builders.
execution_income is derived entirely from the blocks that validator proposed that day (matched by proposer_index on ethereum.raw.block_rewards):
execution_income_pbs— the sum ofproposer_mev_rewardacross that validator’s blocks for the day, for blocks wherehas_mev_rewardis true.execution_income_non_pbs— the sum ofbuilder_priority_fee_reward+builder_direct_rewardacross that validator’s blocks for the day, for blocks wherehas_mev_rewardis false.execution_income=execution_income_pbs+execution_income_non_pbs.
execution_income and its two components are 0 — only consensus_income accrues. Because execution_income is entirely downstream of has_mev_reward, its accuracy depends on that classification being correct — see the caveats below.
Assumptions
- the proposer fee recipient (MEV Reward) on the Execution Layer is the same entity as the Validator that is proposing the block on the Consensus Layer.
Update: July 28, 2026 — execution income correction
execution_income(and the derivedtotal_income, rollingincome_7d/income_30d/income_90d, andapr_7d/apr_30d/apr_90d) previously over-stated payouts on blocks where the builder routed the MEV payout through a separate wallet rather than its own fee-recipient address. These blocks were misclassified as non-PBS, and the model attributed the builder’s full gross capture instead of the actual, smaller proposer payout. See thehas_mev_rewarddetection logic onethereum.raw.block_rewardsfor the corrected logic.- Scope: across the post-Merge period, roughly 4% of validator-days have a corrected
execution_income(and thereforetotal_income), affecting about 15% of validators that have ever proposed a block. In aggregate, total execution income across the period is reduced by roughly 1.2% — a smaller share oftotal_incomeoverall since consensus income is typically the larger component. For most affected validator-days the change is a few thousandths of an ETH; a smaller number of validator-days, concentrated among a handful of large builders, were overstated by tens to hundreds of ETH and will see a more noticeable change to rolling 7d/30d/90d income and APR figures for the affected period. - Historical data is being backfilled for all post-Merge dates (September 15, 2022 onward). This table is incremental, so historical rows will only update once the backfill runs — not on the next regular refresh.

Execution Income Pre-MergeBefore the Ethereum merge, there was no execution (L1) income for validators because validators on the Beacon Chain did not propose blocks. Block proposals and transaction execution were managed by miners on the Ethereum mainnet (proof-of-work chain).Post-merge, Ethereum switched to proof-of-stake, where Beacon Chain validators propose blocks built by block builders on the execution chain. Execution income, including MEV rewards, is mapped from these blocks to validators.
Sample Query
Finding daily income of active validators by ETH1withdrawal_address specified in withdrawal credentials.

Table Columns
Unique Key:slot_timestamp (daily) + validator_index