Overview
Chaos Labs supports listing wstLINK on Aave’s Ethereum Core instance. Below is our analysis and initial risk parameter recommendations.
Chainlink Staking
Chainlink Staking is one of the components of Chainlink’s cryptoeconomic security model, designed to enhance the reliability of oracle services by aligning incentives and introducing accountability through staking and slashing mechanisms. In its current form, Chainlink Staking secures the ETH/USD data feed on Ethereum Mainnet. Node operators help ensure data integrity by putting capital at risk, thereby strengthening the trust guarantees of Chainlink oracles.
Chainlink Staking was first introduced with v0.1 in December 2022. As an initial iteration, v0.1 enabled LINK holders to stake tokens and earn protocol rewards, but it did not include any slashing mechanisms. The total staking cap for v0.1 was 25 million LINK, allocated across early Community and Node Operator participants.
In November 2023, Chainlink Staking was upgraded to v0.2. This upgrade introduced a set of improvements, including an unbonding mechanism for withdrawals, and most notably, slashing capabilities for Node Operator Stakers. Alongside these functional enhancements, the total staking capacity increased by 80%, raising the overall cap from 25 million to 45 million LINK.
Chainlink Staking v0.2 is composed of two primary pools:
- Community Staking Pool, capped at 40.875 million LINK
- Node Operator Staking Pool, capped at 4.125 million LINK
These pools serve distinct roles within the system:
- Community Stakers are individual or institutional LINK holders who contribute capital but do not provide oracle services directly. Instead, they delegate their stake to the Node Operators. Importantly, Community Stakers are not subject to slashing under v0.2.
- Node Operator Stakers are responsible for running Chainlink oracle services (e.g., the ETH/USD data feed). These participants must stake LINK and operate reliable infrastructure. Node Operator stakes can be slashed if performance criteria are violated.
Since the launch of v0.2, the Community Pool has consistently operated at full capacity, with nearly all 40.875 million LINK staked. In contrast, the Node Operator Pool has remained underutilized, with approximately 1.9 million LINK staked out of the 4.125 million LINK cap.
Deposit and Withdrawals
For Community Stakers, deposits can be made through the Chainlink Staking interface or third-party protocols like stake.link, which offer liquid staking tokens such as stLINK and wstLINK. Once staked, LINK is delegated to Node Operators to support oracle services. Deposits into the Community Pool are subject to pool capacity constraints, which have generally been reached since the launch of v0.2.
Withdrawals from the Community Pool follow a two-step unbonding mechanism:
- Cooldown Period: Stakers initiate a withdrawal request, triggering a fixed 28-day cooldown period during which the staked LINK continues to accrue rewards.
- Claim Window: After the cooldown, a 7-day claim window opens. If the staker does not withdraw during this window, the LINK is automatically restaked into the pool.
This unbonding mechanism is a preventative measure against mass exits during slashing events, helping maintain pool stability and ensuring sufficient staked LINK remains available to enforce penalties.
Node Operator Stakers follow a similar deposit process but must also meet eligibility criteria, including operating approved Chainlink nodes. Withdrawals from the Node Operator Pool are also governed by the 28-day unbonding period and the 7-day claim window.
Rewards
Chainlink Staking v0.2 features a redesigned reward model that accounts for pool utilization and introduces cryptoeconomic penalties to enhance service reliability.
Staking rewards are distributed in LINK and reward rates are variable, based on pool utilization and the total amount of rewards available per unit time. At full pool capacity, the base floor reward rate for Community Stakers is 4.5% annually. However, 4% of this is redirected to Node Operator Stakers, resulting in an effective base reward rate of 4.32% for Community participants.
Node Operator Stakers earn rewards from multiple sources, including their share of the base 4.5% annual reward rate and the 4% delegation fee redirected from Community Stakers. As a result, operator yields are structurally higher and designed to incentivize reliable and sustained oracle service provision.
While current rewards rely primarily on LINK emissions, the long term goal is to gradually taper off emission based rewards and begin distributing user fees as the primary source of staking incentives. In parallel, ecosystem projects participating in the Chainlink BUILD program have committed a portion of their native tokens to Chainlink Staking. These tokens are expected to be distributed to Community and Node Operator Stakers over time, further diversifying the reward base and aligning incentives across the Chainlink ecosystem.
Penalties
The introduction of Chainlink Staking v0.2 brought with it the first implementation of slashing penalties, designed to hold Node Operator Stakers accountable for the reliability of the oracle services they secure. These penalties are intended to safeguard data integrity by creating real economic consequences for underperformance.
Currently, only the ETH/USD data feed on Ethereum Mainnet is secured by v0.2 staking. If the feed experiences more than three hours of downtime, a valid alert can be raised onchain. Node Operators have a 20-minute priority window to submit the alert. If no alert is raised within that window, any eligible Community Staker may submit it. Only the first valid alert for each incident is accepted; additional alerts during the same event are disregarded.
- Each slashed Node Operator incurs a penalty of 700 LINK
- The first valid alerter is rewarded with 7,000 LINK
As of writing, 31 different Node Operators are actively participating in Chainlink Staking v0.2. Each operator can stake up to 75,000 LINK. In practice, approximately 1.9 million LINK is currently staked in the Node Operator Pool, representing the capital currently at risk of being slashed.
Given the fixed penalty of 700 LINK per operator, the theoretical (albeit very unlikely) total maximum slashable amount in a single event is 31 × 700 = 21,700 LINK, which constitutes approximately 1.1% of the Node Operator Pool and 0.05% of the total v0.2 staking pool.
To date, there have been no recorded slashing events affecting any node operator participating in the Chainlink Node Operator Staking Pool. This reflects the relatively low risk profile of the current staking configuration. Nonetheless, slashing remains a theoretical possibility and should be accounted for in any comprehensive risk assessment.
It is important to note that Community Stakers are not subject to slashing under the current version. Any future change to this design would require a version upgrade and a corresponding opt-out period enforced via a time-locked upgrade mechanism. This approach helps ensure protocol transparency and allows participants to react accordingly before changes take effect.
stake.link
stake.link is a delegated liquid staking protocol purpose built for Chainlink Staking by LinkPool, a long standing Chainlink node operator and infrastructure provider. It enables LINK holders to stake their tokens into Chainlink’s staking system by abstracting away the complexities of staking and node operation.
When users stake LINK through stake.link, they receive stLINK, a liquid staking token that rebases weekly to reflect accrued staking rewards. For use cases requiring a non-rebasing token, stake.link also offers wstLINK, a wrapped version of stLINK that preserves staking value in a fixed supply format.
One of the key benefits for users is the auto staking functionality: whenever new staking capacity becomes available on Chainlink, such as when another user withdraws from the Community Staking Pool, stake.link automatically stakes LINK from its Priority Pool on behalf of users waiting in the queue.
Unlike directly staking with the Community Staking Pool through the Chainlink interface, stake.link stakes LINK into both the Community and Node Operator pools. Since Node Operator stakes earn a higher effective yield, partly due to receiving delegation fees from Community Stakers, this blended strategy results in a higher aggregate return for stLINK holders compared to staking solely with the Community Pool. However, this additional yield exposure comes with slashing risk on the portion of stake delegated to the Node Operator Pool, a consideration we will explore in the following sections.
Priority Pool
The Priority Pool is a core mechanism within stake.link designed to improve user experience around staking and redemption by introducing a liquidity buffer between users and the Chainlink Staking protocol. It serves two primary functions:
- Auto-staking Queue: When users deposit LINK into stake.link but there is no immediate staking capacity available on Chainlink, their funds are held in the Priority Pool. As soon as capacity becomes available, due to unstakes or staking limit increases, stake.link automatically stakes LINK on behalf of users in the queue.
- Redemption Liquidity Buffer: The Priority Pool also enables faster or instant redemptions of stLINK and wstLINK. Instead of waiting through the native 28-day cooldown and 7-day claim window required by Chainlink Staking, users can redeem their staked tokens instantly, as long as there is sufficient LINK available in the Priority Pool to cover the withdrawal.
Over the past three months, the Priority Pool buffer has typically hovered between 100,000 and 300,000 LINK, offering a meaningful layer of liquidity for redemptions. Since its creation on 20 September 2023, there have been periods when the pool was fully depleted, causing some redemption requests to be temporarily delayed until new deposits replenished the balance or withdrawal requests were unbonded through Chainlink Staking. However, such instances have been historically limited. In practice, the pool has maintained a healthy buffer: over 85% of the time, it has held more than 10,000 LINK available for redemptions.
Slashing Risk
While stake.link enhances yield for stakers through its dual pool strategy (Community and Node Operator staking pools), it also introduces a limited degree of slashing risk due to its exposure to the Node Operator Staking Pool on Chainlink.
By design, stake.link allocates user deposits across both staking modules within Chainlink Staking v0.2:
- The Community Staking Pool, which carries no slashing risk under the current version
- The Node Operator Staking Pool, which is subject to slashing in the event of oracle underperformance
As of now, approximately 25% of the backing for stLINK, equivalent to 1,125,000 LINK, is actively staked with the Node Operator Pool. This portion is distributed evenly across 15 different node operators.
Only the LINK delegated to this module is exposed to slashing. In a worst-case scenario, where all 15 node operators are simultaneously slashed, the total amount penalized would be:
- 15 × 700 LINK = 10,500 LINK
This represents just 0.23% of the total backing of stLINK, a relatively small impact when viewed in the context of the protocol’s overall stake distribution. While highly unlikely, this scenario illustrates the bounded downside stLINK and wstLINK holders face due to partial exposure to slashing.
As can be seen in the chart, stake.link’s allocation to the Node Operator Pool has remained flat since early 2024, indicating that the protocol has not onboarded new operators in recent months and years. Instead, stake.link appears to be increasingly utilizing available capacity in the Community Staking Pool whenever possible. This trend is evidenced by the consistent growth in community pool allocations, which has had the effect of diluting the relative slashing exposure within the total stLINK backing over time.
Mint and Redemption
Minting in stake.link is not always atomic, due to the staking caps enforced by the Chainlink Staking protocol. When a user deposits LINK into stake.link, the funds are first placed in the Priority Pool, rather than being staked immediately.
From there, the protocol waits for available capacity to open up in Chainlink Staking, either through withdrawal activity or increases in pool limits. As space becomes available, the Priority Pool automatically stakes the user’s LINK into either the Community or Node Operator Pools.
As staking occurs incrementally, users begin accruing eligibility to claim stLINK (or wstLINK) proportionally. Users have two options:
- Wait until their entire deposit has been staked and mint their full stLINK/wstLINK balance in one transaction
- Claim progressively as portions of their LINK are staked, minting partial amounts of stLINK over time
This flow ensures that stLINK is only minted against LINK that has actually been staked on-chain. It also means that minting is dependent on staking availability, introducing some delay during periods when Chainlink staking capacity is saturated.
To redeem LINK, users return their stLINK or wstLINK to the protocol. There are two potential redemption paths:
-
Instant Redemption via Priority Pool
If the Priority Pool holds enough unallocated LINK, users can redeem their tokens immediately.
-
Delayed Redemption via Chainlink Unbonding
If the Priority Pool is insufficiently funded, redemption requests are queued and processed through the unbonding mechanism. In this case, users generally wait through the 7 day cooldown period before receiving their unstaked LINK.
Market Capitalization
The stLINK/wstLINK market has seen consistent growth and adoption since launch. As of today, stake.link’s liquid staking tokens are backed 1:1 by approximately 4.55 million staked LINK, reflecting a material share of total staked capital in the Chainlink ecosystem. Currently, only around 17% of stLINK has been converted into wstLINK. However, this proportion is expected to grow over time as more DeFi protocols and strategies begin to integrate and prefer the non-rebasing version for compatibility and composability.
At current market prices, this translates to a total market size of approximately $65 million for stake.link’s liquid staking assets. While Chainlink Staking itself is hard-capped at 45 million LINK, this effectively sets an upper bound on the TAM for stake.link’s LSTs. In other words, if 100% of Chainlink Staking were liquid staked via stake.link, the maximum stLINK supply would be capped at 45 million.
Currently, stake.link accounts for roughly 10% of all staked LINK within Chainlink Staking v0.2. This share continues to grow, driven by the protocol’s enhanced yield (through Node Operator Pool exposure) and liquidity advantage (via the Priority Pool), which are attractive features for DeFi participants.
The demand for stake.link assets is further evidenced by:
- The consistent presence of significant LINK balances in the Priority Pool, indicating a queue of users awaiting staking capacity
- The premium observed in stLINK’s secondary market price relative to native LINK
Premium Drivers
Over the past month, stLINK has traded at a slight premium to LINK on secondary markets. This premium reflects a combination of structural demand and market anticipation, driven by two primary catalysts:
- Airdrops from Chainlink BUILD projects have begun, providing additional rewards to Chainlink Stakers and further enhancing the appeal of stake.link’s liquid staking tokens as both a preferred staking vehicle and a means of gaining exposure to these airdrops.
- Expectations around upcoming Aave listings might have led users to position themselves for looping strategies that capitalize on wstLINK’s yield-bearing properties.
There have been periods where the token consistently traded at a 2 to 4% premium on secondary markets from its launch until July 2024. Premium has recently started to rise again and is currently around 0.5%.
Liquidity
The primary source of secondary market liquidity for stake.link’s stLINK token is on Curve Finance, where stLINK/LINK pools facilitates swaps between the two assets.
Currently, all available liquidity is for the stLINK token, not wstLINK. However, this does not pose a constraint for users, as wstLINK can be atomically unwrapped into stLINK and vice versa without any delay.
The total liquidity in the Curve pools has ranged between 6.5 million and 8 million USD in recent weeks. This is considered highly adequate for a liquid staking token with a total market size of approximately $65 million, representing over 10% of the token’s market capitalization.
Liquidity within the pool is consistently skewed toward LINK, with 70 to 75% of the liquidity allocated to the LINK side. This skew is a reflection of sustained demand for stLINK, as users seek exposure to Chainlink staking rewards. As a result, stLINK has been traded at a premium to its underlying asset.
Due to this imbalance, the current pool depth and Curve’s optimized pricing mechanism allow for significant trade sizes with minimal slippage. For example, a swap of approximately 340,000 stLINK (around $4.82 million) can be executed with less than 5% price impact, demonstrating the pool’s capacity to support large trades.
Given that stLINK rewards are distributed on a weekly basis, some actors have been observed engaging in sandwiching behavior within the AMM to extract a disproportionate share of rewards. Curve’s dynamic fee mechanism currently mitigates this effect to some extent. However, this risk may grow if liquidity expands to AMMs without similar protections. Ongoing monitoring of trading activity is advised to detect and manage potential reward extraction as the protocol’s liquidity footprint broadens.
Oracle/Pricing
The wstLINK smart contract maintains an internal exchange rate that reflects the rebasing value accrual of its underlying stLINK asset. This exchange rate increases over time as staking rewards accrue, allowing wstLINK to preserve value growth in a fixed supply format suitable for DeFi integrations.
To ensure secure and accurate pricing of wstLINK in USD terms, Chaos Labs recommends the following oracle composition using a CAPO adaptor architecture:
- wstLINK/LINK Exchange Rate
Retrieve the exchange rate directly from the stLINK contract, which provides the conversion ratio between wstLINK and LINK.
- CAPO Adapter: wstLINK/LINK
Apply a dedicated CAPO adaptor to track the wstLINK to LINK exchange rate.
- LINK/USD Feed
Use the existing LINK/USD price feed to convert the LINK value into USD terms.
LT, LTV, and Liquidity Bonus
To ensure prudent risk management while enabling initial capital efficiency, we recommend setting a LTV of 64%, a LT of 69%, and a Liquidation Bonus of 7% for wstLINK outside of E-Mode. These parameters are in line with the settings used for other yield bearing staking tokens with similar risk characteristics.
Supply & Borrow Caps
To ensure a controlled onboarding of wstLINK to the Aave protocol, we recommend setting the supply cap at 600,000 wstLINK. This configuration reflects a cautious approach to risk management while allowing meaningful participation from users seeking to supply wstLINK as collateral. The proposed cap corresponds to approximately $11.3 million in notional value and is calibrated based on available secondary market liquidity and the protocol’s current market capitalization.
We do not foresee any compelling use cases for borrowing wstLINK, and enabling it as a borrowable asset introduces significant risk due to its pricing dynamics. As discussed in previous sections, wstLINK typically trades at a premium in secondary markets, driven by factors such as staking capacity constraints in Chainlink Staking, increased demand for leveraged staking exposure, and potential airdrops for Chainlink stakers from Chainlink BUILD projects.
Since Aave derives the prices of LST/LRTs from its on-chain exchange rate to underlying and does not account for market premiums, making wstLINK borrowable could enable users, in certain extreme but plausible scenarios where stLINK trades at a high premium to LINK, to borrow it at the oracle price and sell it at a higher market price. This would allow them to extract arbitrage profits while leaving Aave undercollateralized. Such activity creates a risk of protocol bad debt, particularly during periods of elevated secondary market demand.
To mitigate this risk, we strongly recommend listing wstLINK as non-borrowable.
E-Mode
We propose creating a dedicated LINK-correlated E-Mode to support efficient capital utilization between wstLINK and LINK. In this setup, wstLINK would be enabled exclusively as collateral, while LINK would be borrowable only. We recommend setting the LTV at 90%, the LT at 92%, and the Liquidation Bonus at 2% to balance capital efficiency with controlled liquidation risk.
CAPO
wstLINK inherits staking rewards from Chainlink Staking, reflecting the yield generated through delegation to the Community and Node Operator pools. The effective yield of wstLINK varies over time based on staking pool utilization and delegation fee structures.
To ensure a robust and manipulation-resistant CAPO price feed for the wstLINK/LINK pair, we propose a maxYearlyRatioGrowthPercent
of 6.89%, reflecting the expected annualized staking yield including delegation income. Additionally, we recommend setting the MINIMUM_SNAPSHOT_DELAY
to 14 days to smooth out short-term volatility and ensure consistency in pricing inputs.
LINK IR Optimization
The upcoming listing of wstLINK is expected to introduce renewed demand for borrowing LINK, particularly from users engaging in staking loop strategies. Historically, LINK borrow utilization on Aave has been relatively low and declining, with total outstanding borrow dropping from approximately 800,000 LINK to the 300,000 range in recent months.
The addition of wstLINK is likely to reverse this trend and create sustained borrowing demand. To ensure efficient rate dynamics under higher utilization and to better reflect the opportunity cost of capital, we recommend increasing the base interest rate for LINK by 1.5%. In parallel, we suggest reducing slope2 from 300% to 150% to soften borrowing costs beyond the optimal utilization threshold and reduce the likelihood of excessively punitive rates during temporary utilization spikes.
LINK Borrow Cap Adjustment
In conjunction with the expected increase in demand for LINK borrowing due to the listing of wstLINK, it is also important to manage protocol risk through appropriate caps. The current borrow cap for LINK is set at 13.00 million, a level that exceeds recent utilization by a margin. With outstanding borrows currently around 300,000 LINK, the existing cap is significantly underutilized.
To align the borrow cap more closely with expected demand while maintaining a prudent risk posture, we recommend lowering the LINK borrow cap to 6 million. This level allows ample room for increased borrowing activity driven by wstLINK-related strategies while preventing excessive leverage that could amplify protocol exposure during periods of volatility.
Specification
Parameter |
Value |
Asset |
wstLINK |
Isolation Mode |
N/A |
Borrowable |
No |
Collateral Enabled |
Yes |
Supply Cap |
600,000 |
Borrow Cap |
- |
Debt Ceiling |
- |
LTV |
64% |
LT |
69% |
Liquidation Penalty |
7% |
Liquidation Protocol Fee |
10% |
Variable Base |
- |
Variable Slope1 |
- |
Variable Slope2 |
- |
Uoptimal |
- |
Reserve Factor |
- |
Stable Borrowing |
Disabled |
Flashloanable |
Yes |
Siloed Borrowing |
No |
Borrowable in Isolation |
No |
E-Mode Category |
wstLINK/LINK |
E-Mode
Parameter |
Value |
Value |
Asset |
wstLINK |
LINK |
Collateral |
Yes |
No |
Borrowable |
No |
Yes |
Max LTV |
90.00% |
- |
Liquidation Threshold |
92.00% |
- |
Liquidation Bonus |
2.00% |
- |
CAPO
maxYearlyRatioGrowthPercent |
ratioReferenceTime |
MINIMUM_SNAPSHOT_DELAY |
6.89% |
monthly |
14 |
Interest Rate
Instance |
Asset |
Current Base |
Recommended Base |
Current Slope2 |
Recommended Slope2 |
Ethereum Core |
LINK |
0% |
1.5% |
300% |
150% |
Borrow Cap
Instance |
Asset |
Current Supply Cap |
Recommended Supply Cap |
Current Borrow Cap |
Recommended Borrow Cap |
Ethereum Core |
LINK |
20,000,000 |
- |
13,000,000 |
6,000,000 |
Disclaimer
Chaos Labs has not been compensated by any third party for publishing this recommendation.
Copyright
Copyright and related rights waived via CC0