Overview
The beaconcha.in V2 API provides comprehensive validator rewards data including consensus layer (CL) attestation, sync committee, and proposal rewards, plus execution layer (EL) MEV and tips.API Endpoints: This guide covers
/api/v2/ethereum/validators/rewards-aggregate for quick summaries and /api/v2/ethereum/validators/rewards-list for per-epoch breakdowns.All rewards data is available only for finalized epochs. Values are returned in wei (1 ETH = 10¹⁸ wei).
Quick Start Guides
Custom Range Rewards
Calculate rewards for any date range by iterating through epochs—months, quarters, or custom periods.
Tax Year Calculations
Calculate per-epoch rewards for Jan 1 – Dec 31 with fiat conversion for tax reporting.
Dashboard Private Sets
Query validators by
dashboard_id or filter by group_id instead of tracking indices.Epoch & Time Zones
Convert between epochs, timestamps, and local time zones for precise date calculations.
Choosing the Right Endpoint
| Endpoint | Best For | Response |
|---|---|---|
| Rewards Aggregated | Quick summaries over fixed windows (24h, 7d, 30d, 90d, all_time) | Single aggregated result |
| Rewards List | Per-epoch breakdowns, custom date ranges | Paginated list per epoch |
Use Rewards Aggregated when you need:
- Total rewards for the last 24h, 7d, 30d, 90d, or all time
- A quick summary without iterating through epochs
- Aggregated data for multiple validators combined
Use Rewards List when you need:
- Epoch-by-epoch reward breakdown for a specific epoch
- Individual validator rewards per epoch
- Custom date range calculations (requires iterating epochs)
Rewards Aggregated Endpoint
Returns cumulative rewards for validators over a fixed evaluation window.Basic Example
Available Evaluation Windows
All windows exceptall_time are rolling periods—continuously moving time windows that always end at the current epoch.
| Window | Description |
|---|---|
24h | Last 24 hours (rolling) |
7d | Last 7 days (rolling) |
30d | Last 30 days (rolling) |
90d | Last 90 days (rolling) |
all_time | Since validator activation |
What are rolling periods? A rolling period is a moving time window that shifts forward with each new epoch (~6.4 minutes). For example,
30d always returns rewards from exactly 30 days ago until now—not a fixed calendar month. As new epochs are finalized, older epochs drop out of the window and new ones are added.Using Dashboard Selector
Query all validators in your Validator Dashboard:Response Structure
Rewards List Endpoint
Returns per-validator rewards for a specific epoch. Requires iteration for date ranges.The
epoch parameter is required. To calculate rewards for a date range, you must iterate through each epoch. See Custom Range Rewards for complete examples.Basic Example
Pagination
The response includespaging.next_cursor when more data exists:
Daily Rewards
For the most recent 24-hour period, use the24h evaluation window:
Best Practices
Use Aggregated for Summaries
For quick totals over standard time windows, the aggregated endpoint is faster and simpler.
Use List for Custom Ranges
For precise date ranges not covered by evaluation windows, iterate through epochs with the list endpoint.
Use Dashboard Selectors
Create a dashboard to organize validators and query by
dashboard_id instead of tracking indices.Convert Wei to ETH
All values are in wei. Divide by 10¹⁸ to convert:
eth = wei / 1e18
