Stake Matching
Marinade matches a portion of a validator's external stake with additional delegation, with no Protected Staking Rewards (PSR) slashable bond required on the matched portion.
TL;DR: Marinade matches 10% of a validator's non-SFDP external stake and 30% of SFDP stake as additional delegation, with no slashable bond required on the matched portion. Bids still apply on matched stake, and matches below 1,000 SOL collapse to zero.
Overview
To support a broader set of validators and make participation in SAM more accessible, Marinade matches a portion of validator-attracted external stake with additional delegation. The matched portion does not require PSR (Protected Staking Rewards) slashable bond coverage, lowering the capital barrier for validators who already have stake from other sources.
Bids are still charged on matched stake, and the validator's bond must have enough SOL to cover those bids. Matching is designed to broaden validator participation across the network, not to maximize matched stake for any individual validator.
In Marinade's source code, matched stake is referred to as unprotected stake (unprotectedStakeSol). The two terms refer to the same thing. Docs use "stake matching"; the field name in auction outputs and config uses "unprotected."
What Counts as External Stake
External stake is any stake delegated to a validator that did not originate from Marinade and does not come from the validator itself.
Counts as external: Direct retail stake, SFDP (Solana Foundation Delegation Program) delegation, stake from other liquid staking protocols (jpool, blaze, etc.), and any other third-party delegation.
Does not count as external: Stake delegated through any Marinade product (Marinade Liquid, Marinade Native, Marinade Select, or earlier matched stake), and the validator's own self-stake. PSR bond counts as self-stake for this calculation.
External stake is measured from the same epoch snapshot used for all other stake calculations in the auction.
How Matching Works
Matching is deterministic and automatic. Validators do not need to configure or opt into it. The matched amount is calculated from two fixed rates applied to two different stake categories.
10% of non-SFDP external stake (retail, other LSTs, third-party delegation): Configured in
auction-config.jsonasunprotectedDelegatedStakeDec: 0.1.30% of SFDP/foundation stake: Configured as
unprotectedFoundationStakeDec: 0.3.
The formula:
A validator with only third-party external stake gets exactly 10% matched. A validator with only SFDP stake gets exactly 30% matched. A mixed stake composition gets a weighted sum.
1,000 SOL minimum. If the calculated match is below 1,000 SOL, it collapses to zero and no matched stake is allocated. This is the minUnprotectedStakeToDelegateSol parameter in the auction config. A validator with very small external stake will receive no matching.
Caps and Constraints
Per-validator matching cap: Up to 0.4% of Marinade's total TVL in SOL can be matched per validator. With 6 million SOL TVL, this caps matching at 24,000 SOL per validator.
Separate from the 15% MIP-19 cap: The 0.4% matching cap is independent of the 15% per-validator cap on direct SAM stake (MIP-19). A validator at the 15% MIP-19 cap can still receive matched stake up to the 0.4% matching cap.
Auction requirement: Validators must still win stake through the auction to receive matched stake. Matched stake is added on top of direct SAM stake won, not in place of it.
No PSR slashable bond required: Matched stake does not require the slashable portion of the bond that direct SAM stake requires. Bids are still charged on matched stake (see below).
Bids Still Apply to Matched Stake
The bid configured by the validator (CPMPE, cost per 1,000 SOL of delegated stake per epoch, and dynamic commission) is charged on the full delegated stake, including the matched portion.
What "no bond required" specifically means: the slashable bond reserve that protects against PSR-triggering events (downtime, sandwich attacks) is not required for the matched portion. The protection model for matched stake instead relies on the validator's existing accountability to the source of the external stake. PSR does not provide 100% coverage by design.
Worked Example
Example 1: Pure Third-Party Stake
A validator has 50,000 SOL of retail and other LST stake, no SFDP, and wins 15,000 SOL of direct SAM stake at auction.
Total Marinade-delegated stake: 15,000 + 5,000 = 20,000 SOL. The bond is charged the bid on all 20,000 SOL. The slashable bond requirement covers only the 15,000 SOL of direct SAM stake.
Example 2: Pure SFDP Stake
A validator has 50,000 SOL of SFDP stake, no other external stake, and wins 15,000 SOL of direct SAM stake.
Total Marinade-delegated stake: 15,000 + 15,000 = 30,000 SOL. SFDP stake gets a higher match rate, so the same external balance yields three times the match in this case.
Example 3: Mixed External Stake
A validator has 30,000 SOL of retail stake plus 20,000 SOL of SFDP stake, and wins 15,000 SOL of direct SAM stake.
Total Marinade-delegated stake: 15,000 + 9,000 = 24,000 SOL.
Example 4: Below the Minimum
A validator has 5,000 SOL of retail stake and wins 2,000 SOL of direct SAM stake.
500 SOL is below the 1,000 SOL minimum, so the match collapses to zero. The validator receives only the 2,000 SOL of direct SAM stake. No matching is added.
Where to See Matched Stake
Matched stake is published in the per-epoch auction outputs.
Auction outputs: Each epoch's
auctions/<epoch>/outputs/results.jsonin the ds-sam-pipeline repository records matched stake and its cap per validator alongside direct SAM stake. The relevant fields use the internal "unprotected stake" naming.PSR dashboard and validator dashboard: These show total Marinade-delegated stake without separating direct from matched. Use the auction outputs for the breakdown.
Last updated
Was this helpful?