# Top DeFi Protocols by TVL

> Top DeFi protocols ranked by total value locked, with category, chain split and 1-day, 7-day and 30-day TVL change for each protocol, read from its contracts.

Markdown copy of https://voltfincrypto.com/apps/top-defi-protocols-by-tvl

**Question:** Which DeFi protocols hold the most value locked right now?

- Kind: Table in Voltfin Strata
- Topic: [DeFi](https://voltfincrypto.com/topics/defi)
- Chains: Multi-chain, Ethereum, Solana, BNB Chain, Base, Arbitrum
- Status: Planned. The data is not published yet, so this page states no figure; each figure will open its receipt when it is.

This table ranks DeFi protocols by the value of the assets held in their contracts at the start of each UTC day. Each row is one protocol, with its category, the chains it runs on, its value locked and how that value changed over one, seven and thirty days.

The figures come from the protocols' own contracts: token balances, plus state reads where balances miss positions, such as aToken supply on Aave, market totals on Morpho or pooled ether on Lido. Assets are valued at oracle prices at the same block, and receipt tokens from other protocols are flagged so totals count them once.

Sort by value locked or by change to see which protocols are gaining or losing deposits, filter by category or chain and open any cell to see the contracts and the block behind it.

## Blueprint

One row: One row per protocol on the latest complete day, summed over its chains

- **Protocol** (`protocol`): The protocol's name, linked to its list of registered contracts.
- **Category** (`category`): Lending, DEX, liquid staking, restaking, yield, bridge, derivatives or another registry category.
- **Value locked** (`tvl`, USD): Value held in the protocol's contracts at each chain's first block after 00:00 UTC, at oracle prices.
- **1-day change** (`change_1d`): Change in value locked against the protocol's row one day earlier.
- **7-day change** (`change_7d`): Change in value locked against the protocol's row seven days earlier.
- **30-day change** (`change_30d`): Change in value locked against the protocol's row thirty days earlier.
- **Chains** (`chain_count`): Covered chains where the protocol holds value.
- **Largest chain** (`top_chain`): The chain where the protocol holds the most value.
- **Largest chain share** (`top_chain_share`): The share of the protocol's value locked that sits on its largest chain.
- **Share of category** (`category_share`): The protocol's value locked as a share of its category's total, with each asset counted once in the total.
- **Re-deposited** (`re_deposited`, USD): Value held as other protocols' receipt tokens, flagged so totals count it once.
- **Receipt** (`receipt`): The contracts, blocks and price feeds behind the row.

## How it will be measured

- Value locked is read at the first block after 00:00 UTC on each chain from each protocol's registered contracts: ERC-20 balanceOf, native balances and state calls such as aToken totalSupply, Morpho Blue market totals, Lido getTotalPooledEther and EigenLayer strategy totalShares.
- Prices come from Chainlink latestRoundData at the same block, and a row's value is the sum over its assets and chains.
- A protocol's figure counts what its contracts hold, including other protocols' receipt tokens, which are flagged; category and grand totals count the underlying once.
- Lending protocols count the supplied assets that remain in their contracts, so funds lent out are not added twice; borrowed amounts appear in the lending apps.
- Changes compare each protocol with its own row one, seven and thirty days earlier; a protocol new to coverage shows no change until it has that history.

## Data it needs

- `defi_tvl_daily` (to build): Assets deposited in DeFi protocols per protocol, chain and asset at day end, valued with oracle prices, never double counting receipt tokens.
- `native_prices_daily` (to build): Reference prices of major assets read from on-chain oracle feeds (Chainlink latestRoundData) at each day's last block, with each round's update time.
- Source: Protocol contract registry per chain with protocol and category (shared__contracts)
- Source: ERC-20 balanceOf and native balances of registered contracts at the first block after 00:00 UTC
- Source: State calls where balances miss positions: aToken totalSupply, Morpho Blue market totals, Lido getTotalPooledEther, EigenLayer strategy totalShares
- Source: Chainlink latestRoundData at the same blocks for USD values
- Source: Double-count flags for receipt tokens deposited into other protocols

## Questions

### What are the largest DeFi protocols?

By value locked, the largest have long included lending markets such as Aave, liquid staking such as Lido, restaking protocols and the biggest DEXs. The order moves with prices and deposits, so the table recomputes it each day instead of fixing a list.

### How is a protocol's TVL measured?

By reading the balances of its contracts and, where balances do not show positions, the protocol's own accounting, such as the total supplied to a lending market. Each asset is valued at an on-chain oracle price at the same block.

### Why do protocol figures add up to more than total DeFi TVL?

One deposit can sit in two protocols: stETH from Lido deposited on Aave appears in both rows. Each row counts what its contracts hold; the totals by category and chain count the underlying assets once.

### Does a lending protocol's TVL include borrowed funds?

No. Value locked in a lending market is what remains in its contracts: supplied assets less what has been lent out. The amount borrowed is shown in the lending apps, so it is never counted twice.

### How often is the table updated?

Once a day, at the first block after 00:00 UTC on each chain, so every protocol's figure refers to the same moment and every change compares like with like.

## Glossary

- **Category**: The kind of protocol a row belongs to, such as lending, DEX, liquid staking, restaking, yield or bridge, from the protocol registry.
- **Double-count flag**: A mark on assets that are another protocol's receipt tokens, so category and chain totals can count the underlying once.

## Related apps

- [DeFi TVL by Chain: Total Value Locked Rankings](https://voltfincrypto.com/apps/defi-tvl-by-chain)
- [DeFi Protocol Revenue and Fees Ranking](https://voltfincrypto.com/apps/defi-protocol-revenue-ranking)
- [DeFi Lending Market Share: Aave, Morpho, Spark and Euler](https://voltfincrypto.com/apps/defi-lending-market-share)
- [Liquid Staking Market Share: stETH, weETH, rETH](https://voltfincrypto.com/apps/liquid-staking-market-share)
- [DEX Volume by Chain and Protocol](https://voltfincrypto.com/apps/dex-volume-by-chain)
- [DeFi Liquidations Tracker: Lending and Perp DEXs](https://voltfincrypto.com/apps/defi-liquidations-tracker)

Build it in Voltfin Studio: https://app.voltfincrypto.com/signup?next=%2F
