For the complete documentation index, see llms.txt. This page is also available as Markdown.

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.

TL;DR: Triggers when the bond covers fewer than 5 epochs of obligations on existing stake. Marinade undelegates a portion of stake and charges a fee from the bond. Avoid it by maintaining bond coverage at the 13-epoch target.

Overview

When a validator's bond falls below the minimum required coverage for their Marinade stake allocation, Marinade undelegates a portion of their stake so that the remaining stake is still covered by their bond, and charges 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:

Aspect
Bid Reduction Penalty
Bond Risk Reduction Mechanism

Trigger

Validator lowers their static bid versus the previous epoch

Validator's funded 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.

When the Mechanism Triggers

The mechanism runs once per epoch and fires when the funded bond covers less than 5 epochs of revenue on the current Marinade stake.

The mechanism triggers when a validator's funded bond amount falls below the minimum required to cover their current Marinade stake allocation for at least 5 epochs of revenue. The "5 epochs" figure refers to the current epoch plus 4 future epochs of projected obligation. In the source configuration, this is named minBondEpochs = 4 (future epochs only). Both ways of counting describe the same threshold.

A key point for validators: expectedMaxEffBidPmpe can never exceed the validator's own bid. Maintaining a bond that covers their own bid for the required number of epochs is always sufficient to avoid the fee. If a validator's bond covers less than that, they 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 (current epoch + 4 future epochs).

To receive new stake from Marinade, the bond must cover 13 epochs (current epoch + 12 future epochs, named idealBondEpochs = 12 in source). 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 the validator's own bid for 13 epochs across the current stake allocation. Since expectedMaxEffBidPmpe can never exceed the validator's own bid, this is always a safe and sufficient target.

Safety multiplier: All required bond calculations are scaled upward by bondObligationSafetyMult = 1.1 (a 10% safety margin) before comparison against the actual bond balance. The numbers presented in the formulas below already incorporate this multiplier. A validator targeting exactly the minimum coverage will be considered under-bonded due to the safety margin, which is why 13 epochs is the recommended operational target rather than 5.

Validators can monitor their bond coverage on the PSR Dashboard. The column is color-coded for quick reference (expressed in raw epochs of coverage):

Color
Coverage
Meaning

πŸ”΄ 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 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 the bond is under-covered. 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 the validator's tooling. Note that runway and coverage indicators are derived from the funded amount minus outstanding claims, which include signaled withdrawals, while the fee itself is derived from the funded amount only. A validator with a pending withdrawal may therefore see a negative coverage reading without a fee being due (see the FAQ below).

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 funded bond amount in SOL. The trigger and fee are sized from this funded amount. Signaling a withdrawal does not reduce it, so a pending withdrawal does not by itself trigger or increase the fee. Runway and coverage indicators use a separate figure (the funded amount minus outstanding claims, which include signaled withdrawals).

  • marinadeStake: The validator's current Marinade stake allocation in SOL.

  • expectedMaxEffBidPmpe: The maximum effective bid in PMPE (per 1,000 SOL per epoch) 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: current + 4 future):

The ideal coverage coefficient (13 epochs: current + 12 future):

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

Parameter
Production
Description

minBondEpochs

4

Minimum coverage in future epochs (5 epochs total including the current epoch). Falling below triggers the fee.

idealBondEpochs

12

Target coverage in future epochs (13 epochs total). Maintaining this keeps the validator eligible for new stake.

bondObligationSafetyMult

1.1

Safety multiplier applied to all bond obligation calculations (10% margin).

minBondBalanceSol

7 SOL

Minimum bond balance before complete undelegation occurs.

bondRiskFeeMult

varies

Multiplier on the fee calculation. Adjustable by governance.

Frequently Asked Questions

Q: Does submitting a bond withdrawal request trigger the Bond Risk Reduction Mechanism fee?

A: No. The fee is derived only from a validator's funded bond amount, and signaling a withdrawal does not reduce that amount, so a withdrawal request on its own cannot trigger a charge. The runway and coverage indicators are calculated differently, from the funded amount minus outstanding claims (which include signaled withdrawals), so those readings will move when a withdrawal is signaled even though the fee will not.

Last updated

Was this helpful?