Skip to main content
The reward mechanism described on this page is a proposal pending SafeDAO approval. Parameters and mechanics may change before launch. Follow the proposal on https://forum.safefoundation.org/.
Safenet Beta distributes rewards to Validators and Delegators every two weeks (the “reward period”) in recognition of their contribution to securing the network. Rewards are variable - your actual earnings depend on two factors: your proportional stake in the network and the performance of the Validator you delegate to. As a simple approximation: Variable reward rate approximation 4,500,000 SAFETotal SAFE staked across the network\frac{4{,}500{,}000\ \text{SAFE}}{\text{Total SAFE staked across the network}} However, this rate is not distributed uniformly. Each period, rewards are allocated based on:
  • Your average staked balance over the reward period, relative to total network stake
  • Your Validator’s participation rate in transaction attestations - Validators who miss attestations earn fewer rewards, which directly reduces Delegator earnings
  • Validator commission (fixed at 5%), deducted from Delegator rewards
  • Stake concentration caps - rewards growth is penalised for Validators holding disproportionate stake relative to the network average
There is no fixed or guaranteed reward rate. For further details please refer to the disclaimer. A Validator with low participation will earn materially less than one with full participation - and so will their Delegators. Always consider a Validator’s uptime and attestation track record before delegating. Actual rewards may also vary based on compliance requirements, including KYC obligations for rewards exceeding 1,000 USD per reward period. Time-weighted stake
  • Rewards are calculated using the average staked balance over the reward period, not a single snapshot.
  • For both Validators and Delegators, stake is treated as a time-weighted average of the balance held during the reward period.
Stake-weighted rewards with centralization caps
  • Rewards grow linearly with total stake up to a threshold T.
  • Above T, rewards grow sub-linearly (proportional to √x), reducing incentives for oversized Validators.
  • The threshold is defined as the total network stake divided by the number of active Validators.
Minimum Validator self-stake requirement
  • Validators must maintain a minimum time-weighted average self-stake (sˉi\bar s_i) of 3,500,000 SAFE over the reward period.
  • Validators below this threshold earn no commission on delegated stake for that period. Rewards on their own self-stake are unaffected.
  • Delegators who delegated to such Validators remain eligible to receive rewards, provided the Validator meets the participation requirement.
Participation-based eligibility
  • Rewards are conditional on Validator participation.
  • Validators with participation below 75% during the reward period generate no rewards.
  • If a Validator fails to meet the participation threshold, neither the Validator nor its Delegators receive rewards for that reward period.
Validator commission
  • Validators charge a 5% commission on rewards generated by delegated stake.
  • 95% of delegated rewards are distributed to Delegators.
  • 5% is retained by the Validator, in addition to rewards earned on their own stake (if eligible).
  • If the Validator’s registered Staker address changes during the period, the full period’s commission (including any earned before the change) is paid to the address registered at period end.
How rewards flow from the pool to a single Validator and its Delegators in a reward period. Simplified: omits the stake weight curve, participation filter, and minimum self-stake requirement. These affect the size of each Validator’s share but not the flow shown above. See Calculation for the full mechanics. Minimum payout threshold
  • Rewards are only paid out if the recipient is entitled to at least 1 SAFE token for the reward period.
  • This prevents economically inefficient micro-payouts.
  • Any unpaid rewards are carried forward and added to the reward pool of the next reward period.

Calculation

This section provides the formal definition of the Safenet Beta reward mechanism. All stake values are time-averaged over the reward period. Glossary Sets and participants
  • VV – set of Validators active at any point during the reward period
  • N=VN = |V| – number of Validators in VV
Stake
  • sˉi\bar s_i - average SAFE tokens self-staked by Validator ii over the reward period
  • dˉj,i\bar d_{j,i} - average SAFE tokens delegated by Delegator jj to Validator ii
  • dˉi=jdˉj,i\bar d_i = \sum_j \bar d_{j,i} - total average delegated stake to Validator ii
  • Sˉi=sˉi+dˉi\bar S_i = \bar s_i + \bar d_i - total average stake backing Validator ii
  • Sˉtotal=iVSˉi\bar S_{\text{total}} = \sum_{i \in V} \bar S_i - total average stake in the network
Participation
  • pi[0,1]p_i \in [0,1] - participation rate of Validator ii during the reward period
  • pmin=0.75p_{\min} = 0.75 - minimum participation threshold required to earn rewards
Minimum self-stake requirement
  • smin=3,500,000s_{\min} = 3{,}500{,}000 SAFE - threshold applied to sˉi\bar s_i, not to the balance at any single point in time
Rewards
  • Δt\Delta t - duration of the reward period
  • RR - total reward pool distributed in the reward period
  • RiR_i - reward allocated to Validator ii before commission
  • RiselfR_i^{\text{self}} - portion of RiR_i attributable to Validator self-stake
  • RidelR_i^{\text{del}} - portion of RiR_i attributable to delegated stake
  • RiValidatorR_i^{\text{Validator}} - total reward earned by Validator ii before minimum payout filtering
  • RiDelegatorsR_i^{\text{Delegators}} - total reward allocated to Delegators of Validator ii
  • Rj,iR_{j,i} - reward allocated to Delegator jj for delegation to Validator ii
Incentive parameters
  • TT - stake threshold where linear rewards stop
  • c=0.05c = 0.05 - Validator commission rate on delegated rewards
  • m=1m = 1 - minimum payout threshold (in SAFE tokens)
Weights
  • w(Sˉi)w(\bar S_i) - stake-based reward weight for Validator ii
  • w~i\tilde w_i - effective reward weight after participation filtering
Payouts
  • PiP_i - raw reward payout allocated to Validator ii before applying the minimum payout rule
  • Pj,iP_{j,i} - raw reward payout allocated to Delegator jj before applying the minimum payout rule
  • P^i\hat P_i - final reward payout transferred to Validator ii after applying the minimum payout rule
  • P^j,i\hat P_{j,i} - final reward payout transferred to Delegator jj after applying the minimum payout rule
  • RpaidR_{\text{paid}} - total rewards paid out in the reward period
  • RunpaidR_{\text{unpaid}} - rewards not paid out and carried forward
Time-averaged stake For any stake balance x(t)x(t) over the reward period [t0,t1][t_0, t_1] with Δt=t1t0\Delta t = t_1 - t_0, the time-average is defined as: xˉ=1Δtt0t1x(t)dt\bar x = \frac{1}{\Delta t} \int_{t_0}^{t_1} x(t)\, dt Here tt represents Unix time (seconds). Averages are not block-weighted. Stake threshold The linear reward threshold is defined as the average stake per Validator: T=SˉtotalNT = \frac{\bar S_{\text{total}}}{N} Stake weighting function Rewards grow linearly up to TT and sub-linearly beyond TT: w(Sˉi)={Sˉi,if SˉiTSˉiT,if Sˉi>Tw(\bar S_i) = \begin{cases} \bar S_i, & \text{if } \bar S_i \le T \\ \sqrt{\bar S_i \cdot T}, & \text{if } \bar S_i > T \end{cases} This penalizes oversized Validators and incentivizes delegation toward smaller Validators. The curve is linear from zero up to the threshold TT (the average stake per Validator in the network). Above TT, additional stake continues to earn rewards but at a diminishing rate. In practice: delegating to a Validator already above TT earns less marginal reward than delegating to one below it. Reward weight curve showing linear growth up to T and sub-linear growth above T Reward weight as a function of total stake. Below TT, each additional SAFE earns the same marginal reward. Above TT, marginal reward decreases smoothly. TT is recalculated each reward period as total network stake divided by the number of active Validators. Participation filter Validators must satisfy the minimum participation requirement in order for any rewards (Validator or Delegator) to be generated for that Validator: w~i={piw(Sˉi),if pipmin0,if pi<pmin\tilde w_i = \begin{cases} p_i \cdot w(\bar S_i), & \text{if } p_i \ge p_{\min} \\ 0, & \text{if } p_i < p_{\min} \end{cases} If pi<pminp_i < p_{\min}, no rewards are generated for Validator ii or its Delegators during that reward period. The minimum self-stake requirement affects Validator earnings only: if sˉi<smin\bar s_i < s_{\min} and pipminp_i \ge p_{\min}, the Validator forfeits its commission on delegated stake, while Delegator rewards remain unaffected. Reward allocation across Validators W=kVw~kW = \sum_{k \in V} \tilde w_k Validator ii‘s reward allocation: Ri=Rw~iWR_i = R \cdot \frac{\tilde w_i}{W} Split between Validator and Delegators Attribution by stake source Reward attributable to Validator self-stake: Riself=RisˉiSˉiR_i^{\text{self}} = R_i \cdot \frac{\bar s_i}{\bar S_i} Reward attributable to delegated stake: Ridel=RidˉiSˉiR_i^{\text{del}} = R_i \cdot \frac{\bar d_i}{\bar S_i} Commission split If sˉismin\bar s_i \ge s_{\min}: RiValidator=Riself+cRidelR_i^{\text{Validator}} = R_i^{\text{self}} + c \cdot R_i^{\text{del}} If sˉi<smin\bar s_i < s_{\min}: RiValidator=RiselfR_i^{\text{Validator}} = R_i^{\text{self}} Delegator earnings: RiDelegators={(1c)Ridel,if sˉisminRidel,if sˉi<sminR_i^{\text{Delegators}} = \begin{cases} (1 - c) \cdot R_i^{\text{del}}, & \text{if } \bar s_i \ge s_{\min} \\ R_i^{\text{del}}, & \text{if } \bar s_i < s_{\min} \end{cases} Validator commission and self-stake rewards are paid to the Validator’s registered Staker address as recorded at the end of the reward period. If the Staker address changes during the period, the full period’s Validator rewards (including commission accrued before the change) are paid to the address registered at period end. Per-Delegator reward Rj,i=RiDelegatorsdˉj,idˉiR_{j,i} = R_i^{\text{Delegators}} \cdot \frac{\bar d_{j,i}}{\bar d_i} Minimum payout rule Raw payouts: Pi=RiValidatorP_i = R_i^{\text{Validator}} Pj,i=Rj,iP_{j,i} = R_{j,i} Final payouts: P^i={Pi,if Pim0,if Pi<m\hat P_i = \begin{cases} P_i, & \text{if } P_i \ge m \\ 0, & \text{if } P_i < m \end{cases} P^j,i={Pj,i,if Pj,im0,if Pj,i<m\hat P_{j,i} = \begin{cases} P_{j,i}, & \text{if } P_{j,i} \ge m \\ 0, & \text{if } P_{j,i} < m \end{cases} Total rewards paid out: Rpaid=iVP^i+iVjP^j,iR_{\text{paid}} = \sum_{i \in V} \hat P_i + \sum_{i \in V} \sum_j \hat P_{j,i} Unpaid rewards: Runpaid=RRpaidR_{\text{unpaid}} = R - R_{\text{paid}} Unpaid rewards remain in the reward pool and are carried forward to the next reward period.

Distribution

Rewards are calculated offchain and distributed onchain via a Merkle distributor contract. Once allocated, rewards do not expire. Recipients must actively claim their rewards either:
  • Directly from the Merkle distributor contract, or
  • Through the dedicated staking / claiming interface.
Resources

Compliance

As rewards are funded by assets of the SafeDAO and/or the Safe Ecosystem Foundation (SEF) compliance requirements apply.
  • Addresses sanctioned by OFAC, as identified through Chainalysis’ on-chain oracle, are excluded from receiving rewards.
  • Addresses receiving rewards exceeding the equivalent of USD 1,000 within a two-week payout period are required to complete a compliance (potentially KYC/KYB) process prior to distribution.
For KYC inquiries or to initiate the verification process, please contact legal@safefoundation.org.