solana.gov Table: fact_stake_accounts Type: Base Table
Description
This table tracks stake accounts on the Solana blockchain, capturing stake delegation, activation, deactivation, and balance changes. Stake accounts represent delegated SOL that contributes to network security and validator voting power, enabling comprehensive staking analytics and delegation pattern analysis.Key Use Cases
- Track stake delegation patterns and validator selection
- Analyze stake account lifecycle and balance changes
- Monitor staking participation and delegation trends
- Study validator stake distribution and concentration
- Support staking analytics and reward distribution analysis
Important Relationships
- Links to
gov.fact_validatorsthroughvote_pubkeyfor validator-stake mapping - Connects to
gov.fact_vote_accountsfor vote account analysis - References
gov.fact_rewards_stakingfor reward distribution analysis - Provides stake context for
gov.fact_rewards_voting
Commonly-used Fields
epoch: Epoch number for time-series and epoch-based analysisstake_pubkey: Unique stake account address for account trackingvote_pubkey: Vote account that stake is delegated to (validator identification)authorized_staker: Address with staking authority over the accountauthorized_withdrawer: Address with withdrawal authority over the accountactive_stake: Current active stake amount in SOLactivation_epoch,deactivation_epoch: Epochs when stake becomes active/inactivetype_stake: Stake account type and statusaccount_sol: Total SOL balance in the stake accountlockup: Lockup configuration and restrictions
Sample Queries
Current epoch staking summary by delegator
Stake account lifecycle analysis
Validator stake distribution analysis
Large stake accounts monitoring
Columns
| Column Name | Data Type | Description |
|---|---|---|
| EPOCH | NUMBER | |
| STAKE_PUBKEY | TEXT | |
| VOTE_PUBKEY | TEXT | |
| AUTHORIZED_STAKER | TEXT | |
| AUTHORIZED_WITHDRAWER | TEXT | |
| LOCKUP | OBJECT | |
| RENT_EXEMPT_RESERVE | NUMBER | |
| CREDITS_OBSERVED | NUMBER | |
| ACTIVATION_EPOCH | NUMBER | |
| DEACTIVATION_EPOCH | NUMBER | |
| ACTIVE_STAKE | FLOAT | |
| WARMUP_COOLDOWN_RATE | NUMBER | |
| TYPE_STAKE | TEXT | |
| PROGRAM | TEXT | |
| ACCOUNT_SOL | FLOAT | |
| RENT_EPOCH | NUMBER | |
| FACT_STAKE_ACCOUNTS_ID | TEXT | A unique, stable identifier for each record in this table. The primary key (PK) ensures that every row is uniquely identifiable and supports efficient joins, lookups, and data integrity across models. The PK may be a natural key (such as a blockchain transaction hash) or a surrogate key generated from one or more fields, depending on the table’s structure and requirements. |
| INSERTED_TIMESTAMP | TIMESTAMP_NTZ | The timestamp when this transaction record was first inserted into the analytics database. Used for data freshness tracking and incremental model logic. Format: YYYY-MM-DD HH:MI:SS. Not derived from the blockchain, but from the ETL process. |
| MODIFIED_TIMESTAMP | TIMESTAMP_NTZ | The timestamp when this transaction record was last updated in the analytics database. Used for tracking updates and supporting incremental model logic. Format: YYYY-MM-DD HH:MI:SS. Not derived from the blockchain, but from the ETL process. |