> ## Documentation Index
> Fetch the complete documentation index at: https://dune-automated-update-duneapi-openapi-files.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# solana.rewards

> Validator and staker reward distributions on Solana — staking rewards, voting rewards, and fee distributions. Use this data for APY calculations, validator economics research, staking yield analysis, and custodial reporting.

export const TableSample = ({tableName, tableSchema}) => <>
    <div className="hidden dark:block">
      <iframe src={`https://dune.com/embeds/3419983/5785629?table_schema_t6f0df=${tableSchema}&table_name_t6f0df=${tableName}&darkMode=true`} style={{
  width: '100%',
  height: '500px',
  border: 'none',
  marginTop: '10px'
}} />
    </div>
    <div className="dark:hidden">
      <iframe src={`https://dune.com/embeds/3419983/5785629?table_schema_t6f0df=${tableSchema}&table_name_t6f0df=${tableName}`} style={{
  width: '100%',
  height: '500px',
  border: 'none',
  marginTop: '10px'
}} />
    </div>
  </>;

## Table description

The `solana.rewards` table contains data about rewards paid out on Solana. One block may contain zero or more rewards, and each row corresponds to one reward.

## Table Schema

| Column           | Type        | Description                                                                                                     |
| ---------------- | ----------- | --------------------------------------------------------------------------------------------------------------- |
| `block_slot`     | `BIGINT`    | The slot number of the block in which this reward was distributed                                               |
| `block_time`     | `TIMESTAMP` | The timestamp of the block containing this reward                                                               |
| `block_hash`     | `VARCHAR`   | The hash of the block containing this reward                                                                    |
| `reward_type`    | `VARCHAR`   | The type of reward (e.g., 'Fee', 'Rent', 'Staking', 'Voting')                                                   |
| `lamports`       | `BIGINT`    | The reward amount in lamports (1 SOL = 1,000,000,000 lamports)                                                  |
| `pre_balance`    | `BIGINT`    | The recipient's balance in lamports before the reward was applied                                               |
| `post_balance`   | `BIGINT`    | The recipient's balance in lamports after the reward was applied                                                |
| `commission`     | `BIGINT`    | The validator commission percentage for staking and voting rewards; `NULL` from slot 433,296,000 onward         |
| `commission_bps` | `BIGINT`    | The validator commission in basis points for staking and voting rewards, populated from slot 433,296,000 onward |
| `recipient`      | `VARCHAR`   | The account address that received the reward                                                                    |
| `block_date`     | `DATE`      | The date of the block in which this reward was distributed                                                      |

## Commission fields

Solana's SIMD-0291 changed vote-account commission from a whole percentage to basis points at epoch 1003, beginning with slot 433,296,000. For a consistent basis-points value across both eras, use:

```sql theme={null}
coalesce(commission_bps, commission * 100)
```

## Table Sample

<TableSample tableSchema="solana" tableName="rewards" />
