Market cap $2.63 T −1.48 % over 24 hours24h volume $61.82 BBTC dominance 59.3 %ETH 10.6 %Fear & Greed 26 FearCoins 22,751

DeFi composability: how money legos create yield and systemic risk

DeFi composability explained with a real Aave, Curve and Convex chain: where stacked yield comes from and how stETH, USDC and xUSD spread losses.

Intermediate 21 min readUpdated Read first: DeFi vs CeFi vs traditional finance: what really differs?
Interlocking blocks joined by chain links and nodes, with coins and a warning sign
Table of contents
  1. What DeFi composability means: contracts that plug into each other
    1. Shared token standards do most of the work
    2. Where the lego picture breaks down
  2. One deposit, three layers: Aave, Curve and Convex
    1. Step 1: USDC on Aave, an aToken in return
    2. Step 2: the aTokens in Curve’s Aave pool
    3. Step 3: the LP token on Convex
    4. Who holds the dollars at each step
  3. Where the yield comes from, layer by layer
  4. The same chain in 2026: a museum piece and its descendants
    1. From billions to millions: the dated numbers
    2. Pendle PT tokens as collateral on Aave and Morpho
    3. Vault shares inside Curve pools
  5. Why composability creates systemic risk: four stress tests
    1. June 2022: stETH, Curve and the Celsius and 3AC cascade
    2. March 2023: USDC, DAI and a weekend without redemptions
    3. July 2023: a compiler bug and the CRV loans
    4. November 2025: Stream Finance, xUSD and the vault curators
  6. Five ways one broken lego pulls down the others
  7. How to read a DeFi stack before you use it
  8. Rules and taxes for US and UK readers

In 2021 a saver could put 1,000 USDC into Aave and get 1,000 aUSDC back. The aUSDC went into Curve’s Aave pool, which paid out an blockchain that runs exactly as written when it is called, holding and moving funds according to its code, without an intermediary able to change the outcome.">smart contract holding reserves of two or more tokens, supplied by users, that a decentralized exchange uses to execute trades automatically at a price set by a formula.">LP token, and the LP token was staked on Convex for yet another receipt. Three moves later the same dollars showed up on three dashboards and earned from three sources, while the wallet held a claim on a claim on a claim. So who actually held the dollars?

That question is the heart of DeFi composability: any contract on a public blockchain can take another protocol’s token and build on it, without asking anyone. It is why decentralised finance grew so fast, and also why a failure in one protocol rarely stays there. Below, the Aave, Curve and Convex chain is taken apart step by step, with the yield each layer paid, what is left of it as of 28 October 2026, and four episodes between June 2022 and November 2025 when the stacked pieces fell together.

Two reminders first. DeFi means lending, trading and saving through smart contracts with no company holding the money in between; our guide on what DeFi is and how it works gives the definition. The previous lesson, DeFi vs CeFi vs traditional finance, listed composability as one of the five pillars that set DeFi apart from an exchange or a bank. That pillar is the subject here, with its effect on yield and on risk.

What DeFi composability means: contracts that plug into each other

A protocol is composable when other programs can use its functions and its tokens as inputs, the way a spreadsheet formula can use the result of another cell. On Ethereum and the chains that copy its design, a lending market, an exchange and a yield vault are all smart contracts with public addresses. Anyone can write a new contract that calls them, and none of them can tell whether the caller is a person or another protocol.

Our guide to the layers of the DeFi stack describes the floors of the building: the blockchain, the assets, the protocols, the aggregators and the apps. Composability is what lets each floor rest on the one below without a contract, a sales team or an API key.

Shared token standards do most of the work

The quiet hero is the ERC-20 standard. Every ERC-20 token answers the same handful of calls: what is your balance, send this amount, let that contract spend this much. A Curve pool does not need to know what aUSDC is, how Aave computes interest or who runs Aave. It only needs a token that answers those calls. The same goes for a vault that accepts Curve LP tokens, or a lending market that takes a vault share as collateral.

That is where the nickname money legos comes from: the bricks have the same studs, so any brick fits on any other. Nobody has a reliable claim to having coined the phrase; it is simply the common shorthand in the industry for composability.

Where the lego picture breaks down

Plastic bricks do not change shape when you put weight on them. Financial bricks do. A receipt token is worth what the protocol underneath can pay out, at the moment you ask. If the base layer is short of cash, frozen, hacked or mispriced, every brick above it inherits the problem, often faster than the people holding the top brick can react.

There is a second difference. A child building a lego tower can see every brick. A DeFi user usually sees only the top one, in a wallet or on a yield dashboard, while the layers underneath may belong to four teams with four governance systems and four sets of admin keys.

One deposit, three layers: Aave, Curve and Convex

The Aave, Curve and Convex chain was the textbook example of composability in 2020 to 2022. Each step is still possible on Ethereum today, so it is worth walking through as it worked, before checking how much of it remains.

Step 1: USDC on Aave, an aToken in return

When you supply USDC to Aave, the protocol lends it to borrowers who post collateral and pay interest. In exchange you receive aUSDC, which Aave describes as an interest-bearing token: your aUSDC balance grows as borrowers pay interest, minus the share Aave keeps for its reserve. You can swap the aUSDC back for USDC at any time, as long as enough USDC in the pool is not lent out. As of 28 October 2026, DefiLlama shows a supply rate of about 4.1 percent a year for USDC on Aave V3’s main Ethereum market.

How a balance can grow without any transaction is a topic of its own, covered in a later lesson on interest-bearing tokens. For this chain, one point is enough: aUSDC is a receipt, and it is also an ordinary ERC-20 token that other contracts accept.

Step 2: the aTokens in Curve’s Aave pool

Curve runs exchange pools designed for assets that should trade near the same price. In late 2020 it opened a pool on Ethereum holding aDAI, aUSDC and aUSDT, the Aave receipts for three dollar stablecoins. Depositing aUSDC there turned you into a provider to a liquidity pool: traders swapped between the three receipts through your money, and you received an LP token that tracked your share of the pool.

The trick was that the pool’s assets kept earning Aave interest while they sat in Curve. The liquidity provider collected Aave interest, a slice of Curve’s trading fees and, once the LP token was staked in Curve’s gauge, CRV tokens. Curve’s documentation explains that a fixed amount of CRV is emitted every week and that holders of veCRV, which is CRV locked for up to four years, vote on how to split it between pools through gauge weights.

Step 3: the LP token on Convex

Curve rewards large lockers. According to Curve’s own boosting documentation, veCRV can lift a liquidity provider’s CRV rewards by up to 2.5 times. Most savers had no locked CRV, so they earned the unboosted rate. Convex was built to fill that gap: it locks a very large amount of CRV itself and lets anyone stake Curve LP tokens through it to earn boosted CRV, plus Convex’s own CVX token, without locking anything.

Convex is not free. Its fee page says it takes 17 percent of the CRV earned by Curve liquidity providers on its platform: 10 percent to stakers of cvxCRV, 4.5 percent to CVX stakers, 2 percent to its treasury and 0.5 percent to whoever triggers the harvest. Its tokenomics page adds that CVX is minted in proportion to the CRV that liquidity providers claim. On chain, the Aave pool has its own Convex pool number, 24, and the Convex Booster contract still shows it as active rather than shut down.

Put the three steps together and one deposit of USDC was being lent to Aave borrowers, used as trading inventory on Curve and counted in Convex’s vote-buying machine, all at once. Three protocols paid the same deposit, and savers chased that stack.

A liquid drop above stacked coins, a vault door and a turning gear
One USDC deposit could earn Aave interest, Curve fees and CRV and CVX rewards at the same time.

Who holds the dollars at each step

Follow the money rather than the tokens. The USDC itself sits in Aave’s pool contract, or more exactly part of it does, since most is lent to borrowers. The Curve pool holds aUSDC, which is only a claim on Aave. Convex holds the Curve LP token in a contract it controls, so it holds a claim on a pool that holds claims on Aave. You hold the Convex receipt.

LayerWhat the contract holdsWhat you holdWho can change the rules
AaveUSDC, mostly lent to borrowersaUSDCAave governance (AAVE holders)
Curve Aave poolaDAI, aUSDC, aUSDTCurve LP tokenCurve DAO (veCRV holders)
ConvexCurve LP tokensConvex deposit receiptConvex team and vlCVX voters

This is also why staking or liquidity, measured at current market prices. It is the main size metric in DeFi.">total value locked (TVL) counts the same dollar several times. Aave reports the USDC, Curve reports the aUSDC, Convex reports the LP token; add up the three dashboards and 1,000 dollars becomes 3,000. Our guide on how to measure DeFi TVL explains how DefiLlama handles that double counting.

Where the yield comes from, layer by layer

Stacked yield, the reward side of DeFi composability, looks like one number on a dashboard. It is really three numbers of a different nature, and only one of them is paid by someone who needs your money.

The first is borrower interest on Aave. People borrow USDC against collateral and pay a variable rate that rises when the pool is heavily used. This is real income, but it moves with demand: when traders stop borrowing to lever up, the rate falls.

The second is Curve’s trading fees. Each swap through the pool pays a small fee to liquidity providers. In a pool of three dollar receipts the volume depends on how often people need to move between stablecoins, which is high in a crisis and low on quiet days. As of 28 October 2026, DefiLlama shows a base yield of about 0.37 percent for the old Aave pool and no reward, and it is not clear from the data whether the aToken interest is included in that figure, so no total should be read from it.

The third is incentive tokens: CRV from the gauge, CVX from Convex, sometimes a third token paid by a project that wants deposits in a given pool. These are new tokens created by a protocol’s emission schedule. They are a payment in the protocol’s own stock, and their value depends on the market for CRV and CVX at the moment you sell. During the yield-farming years they were often the largest part of the advertised rate.

Two consequences for the reader. A high advertised rate on a stacked position usually means a high share of emissions, and that share can shrink overnight if the token price falls or the gauge vote moves. And because the pool held three stablecoin receipts, the usual impermanent loss of a volatile pair was small, but the pool was only as sound as the weakest of the three: if one stablecoin loses its peg, traders dump it into the pool and the liquidity providers end up holding mostly the damaged one.

The same chain in 2026: a museum piece and its descendants

Run the numbers today and the classic chain looks more like an exhibit than a strategy. As of 28 October 2026, the Curve API values the original aDAI/aUSDC/aUSDT pool on Ethereum at about 303,600 dollars. Our own read of the contracts on that date found about 245,600 LP tokens in existence and about 5,400 of them staked through Convex, roughly 2.2 percent of the pool, or under 7,000 dollars. The pool still works and Convex still accepts it; almost nobody uses it.

From billions to millions: the dated numbers

The protocols themselves have moved on too. Aave’s V2 market, which issued the aTokens of the original chain, has been replaced by V3. The table compares each layer’s peak with its value on 28 October 2026, using DefiLlama’s per-protocol series.

Protocol (DefiLlama series)Peak TVLDate of peakTVL on 28 Oct 2026
Aave V2$18.44 billion26 Oct 2021$0.104 billion
Curve DEX$24.30 billion5 Jan 2022$1.17 billion
Convex Finance$21.17 billion5 Jan 2022$0.563 billion
Aave V3$45.44 billion7 Oct 2025$16.51 billion
Pendle$13.39 billion19 Sep 2025$1.06 billion
Ethena USDe$14.83 billion3 Oct 2025$4.55 billion

TVL moves with token prices and with double counting, so these are measures of deposits at market value, not of profits or users. Still, the direction is plain: the Curve and Convex layers of the 2021 tower hold a few percent of their peak, while lending kept a much larger share.

Pendle PT tokens as collateral on Aave and Morpho

The composable chain of 2024 and 2025 had a different shape. A yield-bearing dollar token, typically Ethena’s sUSDe, went into Pendle, which splits it into a principal token (PT), redeemable for the underlying at a fixed date, and a yield token. The PT trades at a discount, so holding it to maturity gives a fixed return. That PT was then accepted as collateral on Aave or on Morpho, where users borrowed stablecoins against it, bought more PT and repeated the loop.

Aave’s governance forum shows the pattern in 2026: on 19 March 2026 a risk review by LlamaRisk covered the listing of PT-USDe and PT-sUSDe expiring on 18 June 2026 on Aave V3’s Plasma instance, priced with BGD Labs’ “dynamic linear discount rate oracle”, which moves the PT’s value toward its redemption value as the date approaches. The pieces are the same as in 2021 (a receipt, a wrapper, a lending market), only arranged differently.

This tower also shrank. Pendle’s TVL peaked at 13.39 billion dollars on 19 September 2025 and stood at about 1.06 billion on 28 October 2026, a fall of about 92 percent, according to DefiLlama. The reasons for that decline go beyond this lesson and are not attributed here.

What remains is spread across newer tokens. DefiLlama’s pool data for 28 October 2026 shows about 157 million dollars of PT-reUSD (December 2026 expiry) supplied on Morpho’s Ethereum markets and about 49 million dollars of PT-AUSD (December 2026) on Aave V3’s Monad deployment, next to plain sUSDe collateral of about 128 million dollars on Aave V3 Ethereum, 184 million on Aave’s Plasma market and 114 million on Morpho Ethereum. The Pendle market for sUSDe expiring on 26 November 2026 had about 5.1 million dollars of liquidity. The PT-on-lending loop is alive, but the sUSDe version that dominated 2025 is now small.

Vault shares inside Curve pools

The 2021 pattern also survives in a smaller form. One Curve stable pool on Ethereum pairs two tokens named evaUSDC and evaUSDT, which are shares of lending vaults rather than plain stablecoins (we could not confirm the issuer). As of 28 October 2026, DefiLlama values that Curve pool at about 4.1 million dollars and lists about 2.6 million dollars of it staked through Convex at around 11.9 percent a year, of which about 0.01 percent is base yield and the rest is reward tokens. The headline rate is paid in incentives, not in trading fees.

Why composability creates systemic risk: four stress tests

Composability works in both directions. The links that let yield flow up the stack let losses flow down it, and across to every other protocol that holds the same brick. Four episodes show four different paths.

DatesTriggerBrick that carried the shockDated figure
May to June 2022Terra collapse, then Celsius and Three Arrows CapitalstETH, its Curve pool, leveraged loopsstETH discount to ETH up to 8% (13 June 2022, Dune via CoinDesk)
10 to 13 March 2023$3.3 billion of USDC reserves at SVBUSDC inside DAI and Curve’s 3poolUSDC and DAI as low as $0.88 (The Block, 11 March 2023)
30 July 2023Vyper compiler bugCurve pools, then CRV used as loan collateralAbout $62 million taken (DefiLlama)
3 to 7 November 2025$93 million loss at Stream FinancexUSD in curated lending vaultsAbout $285 million of Stream-related debt (YAM via The Block)

June 2022: stETH, Curve and the Celsius and 3AC cascade

Lido’s stETH is a receipt for ether staked on Ethereum. In 2022 it could not yet be redeemed for ETH on chain, so the only exit was to sell it, mostly in Curve’s stETH-ETH pool. stETH was also popular collateral: a common position was to deposit it on Aave, borrow ETH, stake that ETH for more stETH and repeat the loop to multiply the staking yield.

After Terra’s UST collapsed in May 2022, stETH slipped below ETH. CoinDesk reported on 14 June 2022 that the discount reached 5 percent on 12 May, mostly held at 2 to 3 percent afterwards and hit a record 8 percent on 13 June, according to Dune data. Celsius, which had just frozen withdrawals, held about 409,000 stETH. Three Arrows Capital had withdrawn nearly 400 million dollars of stETH and ETH from Curve in May and a wallet linked to the fund sold stETH at a discount of 5.6 to 5.9 percent.

The mechanism is the lesson. When the receipt trades below the asset it represents, every loop built on it moves toward liquidation, and every holder who needs ETH has to sell into the same thin pool, which widens the discount further. Celsius filed for bankruptcy on 13 July 2022; our history of DeFi tells the rest of that summer. Withdrawals of staked ether only became possible with Ethereum’s Shapella upgrade in April 2023.

March 2023: USDC, DAI and a weekend without redemptions

On 11 March 2023, Circle said that 3.3 billion dollars of USDC’s reserves, about 8.25 percent of roughly 40 billion, were stuck at the failed Silicon Valley Bank. The Block reported that USDC fell as low as 0.88 dollars overnight. DAI, about 36 percent backed by USDC according to daistats, fell to 0.88 as well, and MakerDAO’s peg stability module hit its cap of 3.1 billion USDC, so no more DAI could be minted against USDC.

Nobody hacked DAI. It lost its peg because a large part of its collateral was another stablecoin, and that stablecoin depended on a bank. Curve’s 3pool, which holds DAI, USDC and USDT, became the exit door: EigenPhi’s analysis of 28 March 2023 describes heavy withdrawals of USDT from the 3pool from about 20:00 UTC on 10 March, which left a larger share of USDC and DAI, the two coins holders wanted to get rid of. On the evening of 12 March the US Treasury, the Federal Reserve and the FDIC said that all SVB depositors would be protected, and USDC climbed back toward one dollar in the days that followed.

A broken chain, a falling line, a bank building and an hourglass
In March 2023 a bank failure reached DAI and Curve's 3pool through USDC, until USDC regained its dollar peg.

July 2023: a compiler bug and the CRV loans

On 30 July 2023 several Curve pools were drained. The flaw was not in Curve’s code as written but in the tool that turned it into bytecode: the Vyper post-mortem explains that versions 0.2.15, 0.2.16 and 0.3.0 of the compiler gave each reentrancy lock its own storage slot, so functions that were meant to share one lock did not block each other. Version 0.3.1 fixed it. Nexus Mutual’s claims guide lists four affected pools: JPEG’d’s pETH/ETH, Alchemix’s alETH/ETH, Metronome’s msETH/ETH and Curve’s own CRV/ETH. DefiLlama records about 62 million dollars taken; estimates vary because white hats and MEV bots rescued part of the funds and some was returned.

The second shock came through collateral. Curve’s founder, Michael Egorov, had borrowed stablecoins against large amounts of CRV across several lending protocols, Aave among them. In June 2023 Kaiko counted about 285 million CRV deposited in his Aave V2 position against roughly 60 million dollars of USDT borrowed. A drained CRV/ETH pool meant a weaker CRV price, and a weaker CRV price moved those loans toward liquidation in a market too thin to absorb that much CRV.

The loans were wound down rather than liquidated. In August 2023 Egorov sold 106 million CRV for 46 million dollars in private deals, and on 27 September 2023 he repaid his entire Aave debt, The Block reported, while about 42.7 million dollars of debt remained on Silo, Fraxlend, Inverse and Cream. Aave had already learned the cost of thin collateral: in November 2022 a trader borrowed about 40 million dollars of CRV on Aave V2 and sold it, in what Kaiko calls an attempt to exploit Aave by pushing the collateral’s value down; the attempt failed, but the liquidation left Aave with 2.6 million CRV of bad debt, which governance covered from the protocol’s treasury.

November 2025: Stream Finance, xUSD and the vault curators

The newest case runs through a structure that did not exist in 2021: lending vaults run by curators, risk managers who decide where depositors’ stablecoins are lent. On the evening of 3 November 2025 Stream Finance said an external fund manager had lost about 93 million dollars of its assets and suspended deposits and withdrawals. Decrypt reported that its xUSD token fell to about 0.50 dollars according to PeckShield and traded at 0.26 dollars on CoinGecko the next day, down 77 percent in 24 hours.

xUSD had been accepted as collateral in lending markets on several chains. Curated vaults lent their depositors’ USDC to borrowers who posted xUSD, so the vaults’ exposure was to Stream even when their names did not say so. The Block, citing the analysts of Yields and More, put Stream-related debt at about 285 million dollars, including 123.6 million linked to the curator TelosC, 68 million to Elixir and 25.4 million to MEV Capital; other analysts gave different splits. Elixir had lent 68 million dollars in USDC to Stream, about 65 percent of the backing of its own stablecoin, deUSD.

By 7 November 2025, an impact update by Entropy Advisors on the Arbitrum forum counted about 15 million dollars of bad xUSD debt on Silo, about 700,000 dollars on Morpho in the MEV Capital vault, no bad debt observed on Euler at that date and no direct impact on Aave. It noted that some markets had borrowed amounts “exceeding the value of the underlying XUSD collateral”. The loss landed on people who had deposited plain USDC in a vault and may never have heard of xUSD. No court has ruled on Stream’s case.

Five ways one broken lego pulls down the others

Put the four cases side by side and the same few channels of contagion keep appearing, whatever the year. Any new stack can be checked against them.

  • The same token backs loans on many markets, so one depeg or price drop hits all of them at once (stETH in 2022, CRV in 2023, xUSD in 2025).
  • A single pool is the main exit for a token, and everyone tries to leave through it at the same time (Curve’s stETH pool, the 3pool).
  • A library or compiler flaw affects every contract built with it, whoever wrote the contract (Vyper in 2023).
  • A stablecoin or vault depends on an asset or a manager the end user never sees (USDC inside DAI, Stream’s external manager behind xUSD).
  • Borrowing against a receipt to buy more of the same receipt multiplies both the yield and the speed of a forced sale.

The safety of a stack is set by its weakest layer and by how many other stacks share it. A position with a blue-chip lending market on top can still lose money if one of the tokens underneath depends on a small team, a single pool or an off-chain fund manager.

How to read a DeFi stack before you use it

None of this is a reason to buy or avoid any protocol. It is a way to see what you are holding. Before depositing in a strategy that wraps other strategies, a reader can work through these questions, ideally first on a testnet with valueless tokens, and with real money only in small amounts after accounting for the gas cost of every step and every exit.

  1. Write down every layer, from the token in your wallet to the asset at the bottom, and the protocol that holds each one.
  2. Check who can upgrade or pause each contract: a multisig, a DAO vote with a delay, or a single admin key.
  3. Find out where each yield comes from: borrower interest, trading fees, emissions of a reward token, or an off-chain manager.
  4. Look at the exit: how much can be withdrawn today, through which pool, and what happens if that pool is unbalanced.
  5. For curated vaults, read which collateral the curator accepts and how much of the vault is lent against each one.
  6. Check whether any layer depends on a single stablecoin, bank, exchange or fund manager.

Each extra layer also adds approvals in your wallet and transactions to undo later. Several hops on Ethereum’s main network can cost more in gas than a small position earns in a month, so the cost of the exit belongs in the sum before the first deposit.

Rules and taxes for US and UK readers

Composability creates an awkward question for regulators and tax authorities: when one deposit turns into three tokens, which step is a sale, a loan or a swap? There is no single answer yet. In the United States the IRS treats crypto assets as property, so swapping one token for another can be a taxable disposal, and each wrapping step of a stack may or may not count as one depending on the facts. The same uncertainty exists in the UK under HMRC’s rules. Our guide to crypto taxes in the United States explains the basics; for a multi-layer position, keep a record of every transaction, its date and its dollar value, and check current IRS or HMRC guidance or a tax professional before filing.

On the regulatory side, open code does not settle whether a front end, a token issuer or a vault manager falls under SEC or CFTC rules: that depends on the facts of each case. None of the losses described above was covered by deposit insurance or an investor compensation scheme. A lending vault is not a bank account, even when it holds only dollar stablecoins.

The next lesson of the DeFi course looks at the bottom brick of many stacks: stablecoins backed by crypto collateral, such as DAI and USDS, and how their vaults, fees and liquidations work.

Sources

  1. DefiLlama: protocol TVL series, yields pools and hacks (API, retrieved 28 October 2026) defillama.com
  2. Curve API: Ethereum pools, aDAI/aUSDC/aUSDT pool (retrieved 28 October 2026) api.curve.finance
  3. Convex Finance documentation: fees and tokenomics docs.convexfinance.com
  4. CoinDesk: staked ether becomes focus of crypto stress, from Celsius to Three Arrows (14 June 2022) coindesk.com
  5. The Block: USDC and DAI remain at about 0.90 after Circle's disclosure of funds at SVB (11 March 2023) theblock.co
  6. Vyper: post-mortem of the 30 July 2023 vulnerability hackmd.io
  7. Kaiko: CRV, Aave and the art of liquidation (22 June 2023) kaiko.com
  8. The Block: Curve founder Michael Egorov settles entire debt position on Aave (27 September 2023) theblock.co
  9. The Block: analysts map 285 million dollars in potential exposure after Stream Finance's 93 million loss (4 November 2025) theblock.co
  10. Entropy Advisors, Arbitrum forum: Stream Finance xUSD situation and impact assessment (7 November 2025) forum.arbitrum.foundation
Coindaro Editorial Team

Who wrote this article

Editorial team

Guides, reviews and glossary checked against primary sources

  • Crypto education
  • Exchange reviews
  • Wallets
  • Glossary

The Coindaro editorial team researches and writes every article, review and guide published on Coindaro. Each fact is checked against primary sources such as official documents, regulators and project documentation, and every page lists its sources. We cover crypto markets, technology and regulation for readers in the United States and Europe, independently and without paid placements.

Keep learning