Bond Risk Reduction Mechanism
Covers the Bond Risk Reduction Mechanism: what triggers it, how the fee is calculated, and what validators need to do to avoid it.
When a validator's bond falls below the minimum required coverage for their Marinade stake allocation, Marinade will undelegate a portion of their stake so that the remaining stake is still covered by their bond, and charge a fee from their bond. The fee compensates stakers for the cost of that redelegation.
Why This Exists
Under-bonded validators used to push the cost of redelegation onto stakers. This mechanism shifts that cost back to the validator responsible for it.
When Marinade delegates stake to a validator, stakers are placing trust in that validator. The bond is the collateral that backs that trust. It covers obligations like PSR settlements and auction bid costs across multiple epochs. If a validator's bond is too small relative to their stake allocation, stakers are exposed to risk without adequate protection.
Historically, when validators remained in the auction without maintaining adequate bond coverage, Marinade was forced to undelegate their stake. Stakers absorbed the cost of that process, including the warmup period and opportunity cost of moving stake to a properly bonded validator. This was not fair to stakers.
The Bond Risk Reduction Mechanism fixes this. When underfunding occurs, a portion of the validator's stake is undelegated and a fee is charged from their bond to cover the cost of that redelegation. Stakers are compensated directly. The cost falls on the validator, not the staker.
This is not a penalty for bad behavior. It is risk compensation. If a validator maintains adequate bond coverage, the mechanism never triggers.
Not the same as the Bid Reduction Penalty
The Bond Risk Reduction Mechanism and the Bid Reduction Penalty look similar from the outside (both charge the validator's bond and may move stake away), but they address different situations:
Trigger
Validator lowers their static bid versus the previous epoch
Validator's claimable bond is too small for the stake they hold
What it measures
Whether past bids are being honoured
Whether the bond can cover future obligations
Action on stake
Stake may be reallocated away (separate rebalancing step)
Stake is directly undelegated in the same epoch the fee is charged
Can both apply in one epoch?
Yes, they are independent checks
Yes, they are independent checks
A validator keeping their bid high but letting their bond drift down will not trigger the Bid Reduction Penalty but may well trigger the Bond Risk Reduction Mechanism. Conversely, cutting the bid with an adequate bond triggers the Bid Reduction Penalty but not the Bond Risk Reduction Mechanism.
How It Works
Each epoch, if the bond is too small for the stake it holds, Marinade undelegates enough stake to restore coverage and charges a fee from the bond to cover the cost.
Every epoch, Marinade checks whether a validator's bond balance is sufficient to cover their current stake allocation. If the bond falls below the minimum threshold, two things happen:
A portion of the validator's stake is undelegated, sized so that the remaining bond adequately covers the remaining stake.
A fee is charged from the bond and distributed to stakers to compensate for the cost of that redelegation.
If the remaining stake after partial undelegation would require less than 7 SOL in bond, complete undelegation will occur rather than leaving a small underfunded position.
When the Mechanism Triggers
The mechanism runs once per epoch and fires when the claimable bond covers less than 5 epochs of revenue on the current Marinade stake.
The mechanism triggers when a validator's bond balance falls below the minimum required to cover their current Marinade stake allocation for at least 5 epochs of revenue.
A key point for validators: expectedMaxEffBidPmpe can never exceed the validator's own bid. Maintaining a bond that covers your own bid for the required number of epochs is always sufficient to avoid the fee. If your bond covers less than that, you are at risk. Validators can see their expectedMaxEffBidPmpe and other relevant values in the SAM auction data results.
How Much Bond Is Required
5 epochs of coverage is the floor that avoids the fee. 13 epochs is the target that keeps you eligible for new stake.
To avoid triggering the mechanism, a validator's bond must cover at least 5 epochs of revenue for their stake allocation.
To receive new stake from Marinade, the bond must cover 13 epochs. Maintaining 13 epochs of coverage is the recommended target and ensures a validator is both protected from the fee and eligible for additional delegation.
The practical rule: maintain a bond that covers your own bid for 13 epochs across your current stake allocation. Since expectedMaxEffBidPmpe can never exceed your own bid, this is always a safe and sufficient target.
Validators can monitor their bond coverage on the PSR Dashboard. The column is color-coded for quick reference (expressed in raw epochs of coverage):
π΄ Red
1 epoch or below
Stake limited. At risk of Bond Risk Reduction Mechanism triggering
π Orange
2-5 epochs
Top up immediately
π‘ Yellow
6-12 epochs
Stake limited. Top up to increase capacity
π’ Green
13 epochs or above
Bond not limiting stake
Bond Notifications will alert validators when their bond coverage drops below 5 epochs, before the fee triggers. Setting up notifications is the easiest way to stay ahead of this.
On the bondGoodForNEpochs field. The SAM auction output exposes a related value named bondGoodForNEpochs. It is shifted so that zero marks the fee threshold: positive means headroom, negative means a fee is due this epoch. The dashboard's color coding above uses the raw number of epochs of coverage (where 5 marks the fee threshold). Both describe the same health state in different scales; use whichever is more natural for your tooling.
How the Fee Is Calculated
The undelegation and fee are sized together so that after the fee is paid, the remaining bond covers the remaining stake for 13 epochs.
In plain terms: the fee covers the cost of undelegating enough stake so that what remains is fully backed by the remaining bond.
For validators who want the full detail, the calculation works as follows.
Variables:
bondBalance: The validator's current bond balance in SOL. Pending withdrawals count fully against this. Only the claimable portion supports coverage.
marinadeStake: The validator's current Marinade stake allocation in SOL.
expectedMaxEffBidPmpe: The maximum effective bid in PMPE expected for this validator. This can never exceed the validator's own bid. Visible in SAM auction data results.
onchainDistributedPmpe: The on-chain distributed PMPE for the epoch.
auctionEffectiveBidPmpe: The validator's actual effective bid in the auction.
Step 1: Coverage coefficients
The minimum coverage coefficient (5 epochs):
The ideal coverage coefficient (13 epochs):
The fee coefficient (actual revenue rate per 1,000 SOL per epoch):
Step 2: Undelegation amount
The amount of stake undelegated is calculated so that the remaining bond covers the remaining stake for 13 epochs after the fee is paid:
Step 3: Fee
Invariant: After the fee is paid, the remaining bond covers the remaining stake for 13 epochs:
Example
Using approximate values from recent epochs (winning PMPE around 0.35β0.40, so expectedMaxEffBidPmpe β 0.75 as a conservative upper bound), and assuming bondRiskFeeMult = 1.
Given a validator with:
Bond balance: 180 SOL
Marinade stake: 50,000 SOL
onchainDistributedPmpe= 0.35,expectedMaxEffBidPmpe= 0.75,auctionEffectiveBidPmpe= 0.75
Trigger check: Does the bond cover the minimum 5 epochs?
minBondCoef = (0.35 + 5 Γ 0.75) / 1000 = 0.0041
Required bond: 50,000 Γ 0.0041 = 205 SOL
180 SOL < 205 SOL β mechanism triggers.
Fee calculation: Size the undelegation so that the remaining bond covers the remaining stake for 13 epochs after the fee is paid.
idealBondCoef = (0.35 + 13 Γ 0.75) / 1000 = 0.0101
feeCoef = (0.35 + 0.75) / 1000 = 0.0011
base = max(0, 50,000 β 180 / 0.0101) = max(0, 50,000 β 17,822) = 32,178 SOL
coef = 1 β 0.0011 / 0.0101 = 0.8911
undelegation = min(50,000, 32,178 / 0.8911) = β 36,111 SOL (partial)
bondRiskFeeSol = 1 Γ 36,111 Γ 0.0011 β 39.7 SOL
Result: Approximately 36,111 SOL is undelegated and β 40 SOL is charged from the bond and distributed to stakers. The validator keeps β 13,889 SOL of Marinade stake, and the remaining bond (β 140 SOL) covers that amount for the ideal 13 epochs, restoring the invariant.
When the bond is very small relative to stake, the undelegation step saturates at the full stake (complete undelegation). For example, the same parameters with a 26 SOL bond and 45,000 SOL stake produce undelegation = 45,000 SOL (complete) and bondRiskFeeSol β 49.5 Γ bondRiskFeeMult SOL.
Configuration Reference
minBondBalanceSol
7 SOL
Minimum bond balance before complete undelegation occurs
idealBondEpochs
12
Target bond coverage in epochs (13 epochs total)
Last updated
Was this helpful?