> ## Documentation Index
> Fetch the complete documentation index at: https://docs.dune.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Vaults

> Vault protocol data across lending, liquid staking, and DeFi yield strategies

Vault protocols enable users to deposit assets into strategies that dynamically allocate capital across lending markets, staking, and yield opportunities. Dune provides access to decoded on-chain event data for vault-level activity including deposits, withdrawals, interest accrual, reallocation, and liquidations.

<Card title="Get This Data" icon="database" href="https://dune.com/enterprise?dataset=vaults">
  Access decoded vault tables via SQL in the Dune App, API, or Datashare.
</Card>

|                    |                                                                                                                                                           |
| ------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Protocols**      | Morpho, Euler (v1 & v2), Aave v3, Fluid, Kamino (Solana), Lido (liquid staking)                                                                           |
| **Chains**         | Ethereum, Base, Arbitrum, Polygon, BNB, Solana, and others (coverage varies by protocol)                                                                  |
| **Data available** | Deposits & withdrawals · Interest accrual & yield signals · Liquidations & risk events · Vault reallocation / strategy activity · User-level interactions |
| **Data format**    | ABI-decoded event & call tables (protocol-specific schemas) · Accessible via SQL, API, or Datashare                                                       |
| **Best for**       | Vault flows & TVL estimation · Yield strategy analysis · Cross-protocol comparisons (with custom logic) · Risk / liquidation monitoring                   |

<Info>
  **No unified dataset yet.** Vault analysis currently requires protocol-specific logic using decoded event tables. A curated `vaults.*` dataset is on the roadmap. [Contact our enterprise team](https://dune.com/enterprise) to request priority access or share your use case.
</Info>

<Note>
  For curated lending data (supply, borrow, flash loans, liquidations) that covers Aave and other lending protocols in a normalized schema, see the [Lending](/data-catalog/curated/lending/overview) section.
</Note>

***

## Protocol Coverage

### Morpho

#### MetaMorpho Vaults (Vault-Level Activity)

Primary dataset for vault-level analysis. MetaMorpho vaults are curated lending strategies that allocate deposits across Morpho Blue markets.

**Namespace:** `metamorpho_vaults_multichain.*`
**Chains:** Ethereum, Base
**Chain-specific tables also available:** `metamorpho_vaults_ethereum.*`, `metamorpho_vaults_base.*`

| Table                                                                                                                                                | Description                                        |
| ---------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------- |
| [`metamorpho_vaults_multichain.metamorpho_evt_deposit`](https://dune.com/data/metamorpho_vaults_multichain.metamorpho_evt_deposit)                   | Deposit events (assets deposited, shares minted)   |
| [`metamorpho_vaults_multichain.metamorpho_evt_withdraw`](https://dune.com/data/metamorpho_vaults_multichain.metamorpho_evt_withdraw)                 | Withdrawal events (shares burned, assets returned) |
| [`metamorpho_vaults_multichain.metamorpho_evt_transfer`](https://dune.com/data/metamorpho_vaults_multichain.metamorpho_evt_transfer)                 | Vault share transfers between addresses            |
| [`metamorpho_vaults_multichain.metamorpho_evt_accrueinterest`](https://dune.com/data/metamorpho_vaults_multichain.metamorpho_evt_accrueinterest)     | Interest accrual events for yield tracking         |
| [`metamorpho_vaults_multichain.metamorpho_evt_reallocatesupply`](https://dune.com/data/metamorpho_vaults_multichain.metamorpho_evt_reallocatesupply) | Supply reallocation across underlying markets      |
| [`metamorpho_vaults_multichain.metamorpho_evt_setwithdrawqueue`](https://dune.com/data/metamorpho_vaults_multichain.metamorpho_evt_setwithdrawqueue) | Withdraw queue configuration updates               |
| [`metamorpho_vaults_multichain.metamorpho_evt_setcap`](https://dune.com/data/metamorpho_vaults_multichain.metamorpho_evt_setcap)                     | Market cap limit updates                           |

**Example — Daily Deposits by Vault:**

```sql theme={null}
SELECT
    block_date,
    contract_address AS vault_address,
    COUNT(*) AS num_deposits,
    COUNT(DISTINCT sender) AS unique_depositors
FROM metamorpho_vaults_ethereum.metamorpho_evt_deposit
WHERE block_date >= CURRENT_DATE - INTERVAL '30' DAY
GROUP BY 1, 2
ORDER BY 1 DESC
```

#### Morpho Core (Market-Level Activity)

Underlying lending market activity used by MetaMorpho vaults. Useful for understanding where vault capital is deployed.

**Namespace:** `morpho_multichain.*`
**Chains:** Arbitrum, Corn, Sonic, Unichain, Flare, Plume

| Table                                                                                                                      | Description                            |
| -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------- |
| [`morpho_multichain.morpho_evt_supply`](https://dune.com/data/morpho_multichain.morpho_evt_supply)                         | Supply events to lending markets       |
| [`morpho_multichain.morpho_evt_borrow`](https://dune.com/data/morpho_multichain.morpho_evt_borrow)                         | Borrow events from lending markets     |
| [`morpho_multichain.morpho_evt_repay`](https://dune.com/data/morpho_multichain.morpho_evt_repay)                           | Loan repayment events                  |
| [`morpho_multichain.morpho_evt_withdraw`](https://dune.com/data/morpho_multichain.morpho_evt_withdraw)                     | Withdrawal events from lending markets |
| [`morpho_multichain.morpho_evt_supplycollateral`](https://dune.com/data/morpho_multichain.morpho_evt_supplycollateral)     | Collateral supply events               |
| [`morpho_multichain.morpho_evt_withdrawcollateral`](https://dune.com/data/morpho_multichain.morpho_evt_withdrawcollateral) | Collateral withdrawal events           |
| [`morpho_multichain.morpho_evt_liquidate`](https://dune.com/data/morpho_multichain.morpho_evt_liquidate)                   | Liquidation events                     |
| [`morpho_multichain.morpho_evt_createmarket`](https://dune.com/data/morpho_multichain.morpho_evt_createmarket)             | New market creation events             |
| [`morpho_multichain.morpho_evt_accrueinterest`](https://dune.com/data/morpho_multichain.morpho_evt_accrueinterest)         | Interest accrual at the market level   |

***

### Euler

#### Euler v2 (EVaults)

Primary dataset for Euler's vault-style lending markets across multiple chains.

**Namespace:** `euler_v2_<chain>.*` (e.g., `euler_v2_ethereum.*`, `euler_v2_base.*`)
**Chains:** Ethereum, Arbitrum, Base, Berachain, Unichain, Bob, TAC

**Event Tables:**

| Table                                                                                                   | Description          |
| ------------------------------------------------------------------------------------------------------- | -------------------- |
| [`euler_v2_<chain>.evault_evt_deposit`](https://dune.com/data/euler_v2_ethereum.evault_evt_deposit)     | Vault deposit events |
| [`euler_v2_<chain>.evault_evt_liquidate`](https://dune.com/data/euler_v2_ethereum.evault_evt_liquidate) | Liquidation events   |

**Call Tables:**

| Table                                                                                                     | Description                |
| --------------------------------------------------------------------------------------------------------- | -------------------------- |
| [`euler_v2_<chain>.evault_call_deposit`](https://dune.com/data/euler_v2_ethereum.evault_call_deposit)     | Deposit function calls     |
| [`euler_v2_<chain>.evault_call_withdraw`](https://dune.com/data/euler_v2_ethereum.evault_call_withdraw)   | Withdrawal function calls  |
| [`euler_v2_<chain>.evault_call_liquidate`](https://dune.com/data/euler_v2_ethereum.evault_call_liquidate) | Liquidation function calls |

**Example — Euler v2 Deposits Across Chains (30d):**

```sql theme={null}
SELECT
    'ethereum' AS chain,
    date_trunc('day', evt_block_time) AS day,
    COUNT(*) AS num_deposits
FROM euler_v2_ethereum.evault_evt_deposit
WHERE evt_block_time >= NOW() - INTERVAL '30' DAY
GROUP BY 1, 2

UNION ALL

SELECT
    'base' AS chain,
    date_trunc('day', evt_block_time) AS day,
    COUNT(*) AS num_deposits
FROM euler_v2_base.evault_evt_deposit
WHERE evt_block_time >= NOW() - INTERVAL '30' DAY
GROUP BY 1, 2

UNION ALL

SELECT
    'arbitrum' AS chain,
    date_trunc('day', evt_block_time) AS day,
    COUNT(*) AS num_deposits
FROM euler_v2_arbitrum.evault_evt_deposit
WHERE evt_block_time >= NOW() - INTERVAL '30' DAY
GROUP BY 1, 2

ORDER BY day DESC, chain
```

#### Euler v1 (Legacy — Ethereum Only)

**Namespace:** `euler_ethereum.*`

| Table                                                                                                        | Description                  |
| ------------------------------------------------------------------------------------------------------------ | ---------------------------- |
| [`euler_ethereum.euler_evt_deposit`](https://dune.com/data/euler_ethereum.euler_evt_deposit)                 | Deposit events               |
| [`euler_ethereum.euler_evt_withdraw`](https://dune.com/data/euler_ethereum.euler_evt_withdraw)               | Withdrawal events            |
| [`euler_ethereum.euler_evt_borrow`](https://dune.com/data/euler_ethereum.euler_evt_borrow)                   | Borrow events                |
| [`euler_ethereum.euler_evt_repay`](https://dune.com/data/euler_ethereum.euler_evt_repay)                     | Repayment events             |
| [`euler_ethereum.euler_evt_liquidation`](https://dune.com/data/euler_ethereum.euler_evt_liquidation)         | Liquidation events           |
| [`euler_ethereum.euler_evt_marketactivated`](https://dune.com/data/euler_ethereum.euler_evt_marketactivated) | New market activation events |
| [`euler_ethereum.euler_evt_assetstatus`](https://dune.com/data/euler_ethereum.euler_evt_assetstatus)         | Asset status updates         |

#### Euler Plasma (Vault Framework)

Advanced vault infrastructure with \~20+ tables covering controller status, account checks, operator management, and batch operations.

**Namespace:** `euler_plasma.*`

**Key Event Tables:**

| Table                                                                                                          | Description                        |
| -------------------------------------------------------------------------------------------------------------- | ---------------------------------- |
| [`euler_plasma.vault_evt_controllerstatus`](https://dune.com/data/euler_plasma.vault_evt_controllerstatus)     | Controller status changes          |
| [`euler_plasma.vault_evt_accountstatuscheck`](https://dune.com/data/euler_plasma.vault_evt_accountstatuscheck) | Account status verification events |
| [`euler_plasma.vault_evt_vaultstatuscheck`](https://dune.com/data/euler_plasma.vault_evt_vaultstatuscheck)     | Vault status verification events   |
| [`euler_plasma.vault_evt_operatorstatus`](https://dune.com/data/euler_plasma.vault_evt_operatorstatus)         | Operator permission changes        |
| [`euler_plasma.vault_evt_ownerregistered`](https://dune.com/data/euler_plasma.vault_evt_ownerregistered)       | Owner registration events          |

**Key Call Tables:**

| Table                                                                                                                              | Description           |
| ---------------------------------------------------------------------------------------------------------------------------------- | --------------------- |
| [`euler_plasma.vault_call_enablecollateral` / `disablecollateral`](https://dune.com/data/euler_plasma.vault_call_enablecollateral) | Collateral management |
| [`euler_plasma.vault_call_enablecontroller` / `disablecontroller`](https://dune.com/data/euler_plasma.vault_call_enablecontroller) | Controller management |
| [`euler_plasma.vault_call_setoperator` / `setaccountoperator`](https://dune.com/data/euler_plasma.vault_call_setoperator)          | Operator permissions  |
| [`euler_plasma.vault_call_batch` / `batchrevert`](https://dune.com/data/euler_plasma.vault_call_batch)                             | Batch operations      |
| [`euler_plasma.vault_call_controlcollateral`](https://dune.com/data/euler_plasma.vault_call_controlcollateral)                     | Collateral control    |

***

### Aave v3

Aave v3 is a lending protocol where each reserve acts as a pool accepting deposits and issuing borrows. While not a "vault" protocol in the MetaMorpho sense, Aave pools function similarly for deposit/withdraw tracking and are commonly analyzed alongside vault protocols.

**Namespace:** `aave_v3_multichain.*`
**Chains:** Ethereum, Base, Arbitrum, Avalanche, BNB, Celo, Fantom, Gnosis, Mantle, MegaETH, Optimism, Polygon, Sonic, zkSync
**L2-specific tables:** `aave_v3_multichain.l2pool_*` for Arbitrum, Base, Ink, Linea, Mantle, Scroll

| Table                                                                                                                    | Description                           |
| ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------- |
| [`aave_v3_multichain.pool_evt_supply`](https://dune.com/data/aave_v3_multichain.pool_evt_supply)                         | Deposit/supply events                 |
| [`aave_v3_multichain.pool_evt_withdraw`](https://dune.com/data/aave_v3_multichain.pool_evt_withdraw)                     | Withdrawal events                     |
| [`aave_v3_multichain.pool_evt_borrow`](https://dune.com/data/aave_v3_multichain.pool_evt_borrow)                         | Borrow events                         |
| [`aave_v3_multichain.pool_evt_repay`](https://dune.com/data/aave_v3_multichain.pool_evt_repay)                           | Repayment events                      |
| [`aave_v3_multichain.pool_evt_liquidationcall`](https://dune.com/data/aave_v3_multichain.pool_evt_liquidationcall)       | Liquidation events                    |
| [`aave_v3_multichain.pool_evt_flashloan`](https://dune.com/data/aave_v3_multichain.pool_evt_flashloan)                   | Flash loan events                     |
| [`aave_v3_multichain.pool_evt_reservedataupdated`](https://dune.com/data/aave_v3_multichain.pool_evt_reservedataupdated) | Reserve data updates (rates, indices) |

**Example — Supply Events by Chain (30d):**

```sql theme={null}
SELECT
    chain,
    COUNT(*) AS num_supplies,
    COUNT(DISTINCT "user") AS unique_suppliers
FROM aave_v3_multichain.pool_evt_supply
WHERE evt_block_time >= NOW() - INTERVAL '30' DAY
GROUP BY 1
ORDER BY num_supplies DESC
```

<Note>
  For normalized lending data across Aave and other protocols, see the [Lending](/data-catalog/curated/lending/overview) curated tables which provide a unified schema.
</Note>

***

### Fluid

Fluid uses a tiered vault architecture (T1–T4) for borrowing with different collateral and debt configurations.

**Namespace:** `fluid_multichain.*`
**Chains:** Arbitrum, Base, BNB, Ethereum, Plasma, Polygon

#### Vault Operations

| Table                                                                                                                | Description                                          |
| -------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------- |
| [`fluid_multichain.fluidvaultt1_evt_logoperate`](https://dune.com/data/fluid_multichain.fluidvaultt1_evt_logoperate) | T1 vault operations (single collateral, single debt) |
| [`fluid_multichain.fluidvaultt2_evt_logoperate`](https://dune.com/data/fluid_multichain.fluidvaultt2_evt_logoperate) | T2 vault operations (single collateral, multi debt)  |
| [`fluid_multichain.fluidvaultt3_evt_logoperate`](https://dune.com/data/fluid_multichain.fluidvaultt3_evt_logoperate) | T3 vault operations (multi collateral, single debt)  |
| [`fluid_multichain.fluidvaultt4_evt_logoperate`](https://dune.com/data/fluid_multichain.fluidvaultt4_evt_logoperate) | T4 vault operations (multi collateral, multi debt)   |

#### Liquidations

| Table                                                                                                                    | Description     |
| ------------------------------------------------------------------------------------------------------------------------ | --------------- |
| [`fluid_multichain.fluidvaultt1_evt_logliquidate`](https://dune.com/data/fluid_multichain.fluidvaultt1_evt_logliquidate) | T1 liquidations |
| [`fluid_multichain.fluidvaultt2_evt_logliquidate`](https://dune.com/data/fluid_multichain.fluidvaultt2_evt_logliquidate) | T2 liquidations |
| [`fluid_multichain.fluidvaultt3_evt_logliquidate`](https://dune.com/data/fluid_multichain.fluidvaultt3_evt_logliquidate) | T3 liquidations |
| [`fluid_multichain.fluidvaultt4_evt_logliquidate`](https://dune.com/data/fluid_multichain.fluidvaultt4_evt_logliquidate) | T4 liquidations |

#### Other Events

| Table                                                                                                                                        | Description             |
| -------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------- |
| [`fluid_multichain.fluidvaultt1_evt_logabsorb`](https://dune.com/data/fluid_multichain.fluidvaultt1_evt_logabsorb)                           | T1 bad debt absorptions |
| [`fluid_multichain.fluidvaultt4_evt_logupdateexchangeprice`](https://dune.com/data/fluid_multichain.fluidvaultt4_evt_logupdateexchangeprice) | Exchange price updates  |
| [`fluid_multichain.fluidvaultfactory_evt_vaultdeployed`](https://dune.com/data/fluid_multichain.fluidvaultfactory_evt_vaultdeployed)         | Vault deployment events |

**Example — Vault Operations by Type (30d):**

```sql theme={null}
SELECT
    'T1' AS vault_type,
    date_trunc('day', evt_block_time) AS day,
    COUNT(*) AS num_operations
FROM fluid_multichain.fluidvaultt1_evt_logoperate
WHERE evt_block_time >= NOW() - INTERVAL '30' DAY
GROUP BY 1, 2

UNION ALL

SELECT
    'T2' AS vault_type,
    date_trunc('day', evt_block_time) AS day,
    COUNT(*) AS num_operations
FROM fluid_multichain.fluidvaultt2_evt_logoperate
WHERE evt_block_time >= NOW() - INTERVAL '30' DAY
GROUP BY 1, 2

UNION ALL

SELECT
    'T3' AS vault_type,
    date_trunc('day', evt_block_time) AS day,
    COUNT(*) AS num_operations
FROM fluid_multichain.fluidvaultt3_evt_logoperate
WHERE evt_block_time >= NOW() - INTERVAL '30' DAY
GROUP BY 1, 2

UNION ALL

SELECT
    'T4' AS vault_type,
    date_trunc('day', evt_block_time) AS day,
    COUNT(*) AS num_operations
FROM fluid_multichain.fluidvaultt4_evt_logoperate
WHERE evt_block_time >= NOW() - INTERVAL '30' DAY
GROUP BY 1, 2

ORDER BY day DESC, vault_type
```

***

### Kamino (Solana)

Kamino vaults on Solana allocate deposits into lending reserves with automated strategy management.

**Namespace:** `kamino_vault_solana.*`
**Chain:** Solana

#### Event Tables

| Table                                                                                                                                                      | Description                                       |
| ---------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------- |
| [`kamino_vault_solana.kamino_vault_evt_depositresultevent`](https://dune.com/data/kamino_vault_solana.kamino_vault_evt_depositresultevent)                 | Deposit results (shares minted, tokens deposited) |
| [`kamino_vault_solana.kamino_vault_evt_withdrawresultevent`](https://dune.com/data/kamino_vault_solana.kamino_vault_evt_withdrawresultevent)               | Withdraw results (shares burned, tokens returned) |
| [`kamino_vault_solana.kamino_vault_evt_deposituseratabalanceevent`](https://dune.com/data/kamino_vault_solana.kamino_vault_evt_deposituseratabalanceevent) | User ATA balance after deposit                    |
| [`kamino_vault_solana.kamino_vault_evt_sharestowithdrawevent`](https://dune.com/data/kamino_vault_solana.kamino_vault_evt_sharestowithdrawevent)           | Shares available for withdrawal                   |

#### Call Tables

| Table                                                                                                                                                  | Description                       |
| ------------------------------------------------------------------------------------------------------------------------------------------------------ | --------------------------------- |
| [`kamino_vault_solana.kamino_vault_call_deposit`](https://dune.com/data/kamino_vault_solana.kamino_vault_call_deposit)                                 | Deposit into vault                |
| [`kamino_vault_solana.kamino_vault_call_withdraw`](https://dune.com/data/kamino_vault_solana.kamino_vault_call_withdraw)                               | Withdraw from vault               |
| [`kamino_vault_solana.kamino_vault_call_withdrawfromavailable`](https://dune.com/data/kamino_vault_solana.kamino_vault_call_withdrawfromavailable)     | Withdraw from available liquidity |
| [`kamino_vault_solana.kamino_vault_call_buy`](https://dune.com/data/kamino_vault_solana.kamino_vault_call_buy)                                         | Buy vault shares                  |
| [`kamino_vault_solana.kamino_vault_call_sell`](https://dune.com/data/kamino_vault_solana.kamino_vault_call_sell)                                       | Sell vault shares                 |
| [`kamino_vault_solana.kamino_vault_call_invest`](https://dune.com/data/kamino_vault_solana.kamino_vault_call_invest)                                   | Invest vault funds into reserve   |
| [`kamino_vault_solana.kamino_vault_call_initvault`](https://dune.com/data/kamino_vault_solana.kamino_vault_call_initvault)                             | Initialize new vault              |
| [`kamino_vault_solana.kamino_vault_call_updatereserveallocation`](https://dune.com/data/kamino_vault_solana.kamino_vault_call_updatereserveallocation) | Update reserve allocation weights |
| [`kamino_vault_solana.kamino_vault_call_removeallocation`](https://dune.com/data/kamino_vault_solana.kamino_vault_call_removeallocation)               | Remove a reserve allocation       |
| [`kamino_vault_solana.kamino_vault_call_withdrawpendingfees`](https://dune.com/data/kamino_vault_solana.kamino_vault_call_withdrawpendingfees)         | Withdraw pending fees             |

**Example — Kamino Vault Deposits on Solana (30d):**

```sql theme={null}
SELECT
    date_trunc('day', call_block_time) AS day,
    COUNT(*) AS num_deposits,
    COUNT(DISTINCT tx_signer) AS unique_depositors
FROM kamino_vault_solana.kamino_vault_call_deposit
WHERE call_block_time >= NOW() - INTERVAL '30' DAY
    AND call_success = true
GROUP BY 1
ORDER BY 1 DESC
```

***

### Lido (Liquid Staking)

Lido provides liquid staking for ETH via stETH. While primarily a staking protocol, Lido's architecture includes vault-related components (VaultFactory, VaultHub, StakingVault) under the `lido_ethereum` namespace.

**Namespace:** `lido_ethereum.*`
**Chain:** Ethereum

#### stETH Core (Staking Activity)

| Table                                                                                                          | Description                         |
| -------------------------------------------------------------------------------------------------------------- | ----------------------------------- |
| [`lido_ethereum.steth_evt_submitted`](https://dune.com/data/lido_ethereum.steth_evt_submitted)                 | ETH staking deposits (stETH minted) |
| [`lido_ethereum.steth_evt_transfer`](https://dune.com/data/lido_ethereum.steth_evt_transfer)                   | stETH token transfers               |
| [`lido_ethereum.steth_evt_transfershares`](https://dune.com/data/lido_ethereum.steth_evt_transfershares)       | Share-based transfers               |
| [`lido_ethereum.steth_evt_ethdistributed`](https://dune.com/data/lido_ethereum.steth_evt_ethdistributed)       | ETH rewards distribution            |
| [`lido_ethereum.steth_evt_tokenrebased`](https://dune.com/data/lido_ethereum.steth_evt_tokenrebased)           | Rebase events (balance updates)     |
| [`lido_ethereum.steth_evt_elrewardsreceived`](https://dune.com/data/lido_ethereum.steth_evt_elrewardsreceived) | Execution layer rewards             |

#### Withdrawal Queue

| Table                                                                                                                                                | Description                  |
| ---------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------- |
| [`lido_ethereum.withdrawalqueueerc721_evt_withdrawalrequested`](https://dune.com/data/lido_ethereum.withdrawalqueueerc721_evt_withdrawalrequested)   | Withdrawal request events    |
| [`lido_ethereum.withdrawalqueueerc721_evt_withdrawalclaimed`](https://dune.com/data/lido_ethereum.withdrawalqueueerc721_evt_withdrawalclaimed)       | Claimed withdrawal events    |
| [`lido_ethereum.withdrawalqueueerc721_evt_withdrawalsfinalized`](https://dune.com/data/lido_ethereum.withdrawalqueueerc721_evt_withdrawalsfinalized) | Finalized withdrawal batches |

#### Vault Infrastructure

| Table                                                                                                                    | Description                      |
| ------------------------------------------------------------------------------------------------------------------------ | -------------------------------- |
| [`lido_ethereum.vaultfactory_evt_vaultcreated`](https://dune.com/data/lido_ethereum.vaultfactory_evt_vaultcreated)       | New vault creation events        |
| [`lido_ethereum.vaulthub_evt_vaultconnected`](https://dune.com/data/lido_ethereum.vaulthub_evt_vaultconnected)           | Vault connected to hub           |
| [`lido_ethereum.vaulthub_evt_vaultrebalanced`](https://dune.com/data/lido_ethereum.vaulthub_evt_vaultrebalanced)         | Vault rebalancing events         |
| [`lido_ethereum.vaulthub_evt_vaultreportapplied`](https://dune.com/data/lido_ethereum.vaulthub_evt_vaultreportapplied)   | Vault performance reports        |
| [`lido_ethereum.vaulthub_evt_mintedsharesonvault`](https://dune.com/data/lido_ethereum.vaulthub_evt_mintedsharesonvault) | Shares minted on vault           |
| [`lido_ethereum.vaulthub_evt_burnedsharesonvault`](https://dune.com/data/lido_ethereum.vaulthub_evt_burnedsharesonvault) | Shares burned on vault           |
| [`lido_ethereum.vaulthub_evt_vaultfeesupdated`](https://dune.com/data/lido_ethereum.vaulthub_evt_vaultfeesupdated)       | Fee configuration updates        |
| [`lido_ethereum.stakingvault_evt_etherfunded`](https://dune.com/data/lido_ethereum.stakingvault_evt_etherfunded)         | ETH funded to staking vault      |
| [`lido_ethereum.stakingvault_evt_etherwithdrawn`](https://dune.com/data/lido_ethereum.stakingvault_evt_etherwithdrawn)   | ETH withdrawn from staking vault |
| [`lido_ethereum.stakingvault_evt_etherstaged`](https://dune.com/data/lido_ethereum.stakingvault_evt_etherstaged)         | ETH staged for operations        |

**Example — Lido stETH Deposits vs Withdrawal Requests (30d):**

```sql theme={null}
WITH deposits AS (
    SELECT
        date_trunc('day', evt_block_time) AS day,
        SUM(CAST(amount AS DOUBLE)) / 1e18 AS eth_deposited
    FROM lido_ethereum.steth_evt_submitted
    WHERE evt_block_time >= NOW() - INTERVAL '30' DAY
    GROUP BY 1
),
withdrawals AS (
    SELECT
        date_trunc('day', evt_block_time) AS day,
        SUM(CAST(amountOfStETH AS DOUBLE)) / 1e18 AS steth_withdrawal_requested
    FROM lido_ethereum.withdrawalqueueerc721_evt_withdrawalrequested
    WHERE evt_block_time >= NOW() - INTERVAL '30' DAY
    GROUP BY 1
)

SELECT
    COALESCE(d.day, w.day) AS day,
    COALESCE(d.eth_deposited, 0) AS eth_deposited,
    COALESCE(w.steth_withdrawal_requested, 0) AS steth_withdrawal_requested,
    COALESCE(d.eth_deposited, 0) - COALESCE(w.steth_withdrawal_requested, 0) AS net_flow
FROM deposits d
FULL OUTER JOIN withdrawals w ON d.day = w.day
ORDER BY day DESC
```

***

## Common Analysis Patterns

### Deposits & Withdrawals

Track capital inflows and outflows per vault or protocol. Most protocols emit separate deposit and withdraw events with amount fields.

### TVL Estimation

Aggregate deposits minus withdrawals over time. For USD denomination, join with `prices.day`, `prices.hour`, or `prices.minute` depending on the granularity needed. Accurate point-in-time TVL will improve once the [Balances](/data-catalog/curated/balances/overview) tables are fully available.

### Volume Tracking

Sum deposit and withdrawal amounts over time intervals to measure vault activity and capital velocity.

### Unique Depositors

Count distinct wallet addresses interacting with vault deposit events to track user adoption.

### Reallocation Analysis

For protocols like Morpho (MetaMorpho), track how vaults shift capital across underlying markets using reallocation events.

### Liquidations

Monitor liquidation events across protocols to assess vault health and risk.

***

## Cross-Protocol Starter Query

**Daily Deposit Events Across Protocols (30d):**

```sql theme={null}
WITH morpho AS (
    SELECT date_trunc('day', evt_block_time) AS day, 'Morpho (MetaMorpho)' AS protocol, COUNT(*) AS deposit_events
    FROM metamorpho_vaults_multichain.metamorpho_evt_deposit
    WHERE evt_block_time >= NOW() - INTERVAL '30' DAY
    GROUP BY 1
),
aave AS (
    SELECT date_trunc('day', evt_block_time) AS day, 'Aave v3' AS protocol, COUNT(*) AS deposit_events
    FROM aave_v3_multichain.pool_evt_supply
    WHERE evt_block_time >= NOW() - INTERVAL '30' DAY
    GROUP BY 1
),
lido AS (
    SELECT date_trunc('day', evt_block_time) AS day, 'Lido' AS protocol, COUNT(*) AS deposit_events
    FROM lido_ethereum.steth_evt_submitted
    WHERE evt_block_time >= NOW() - INTERVAL '30' DAY
    GROUP BY 1
),
fluid AS (
    SELECT date_trunc('day', evt_block_time) AS day, 'Fluid' AS protocol, COUNT(*) AS deposit_events
    FROM fluid_multichain.fluidvaultt1_evt_logoperate
    WHERE evt_block_time >= NOW() - INTERVAL '30' DAY
    GROUP BY 1
),
euler AS (
    SELECT date_trunc('day', evt_block_time) AS day, 'Euler v2' AS protocol, COUNT(*) AS deposit_events
    FROM euler_v2_ethereum.evault_evt_deposit
    WHERE evt_block_time >= NOW() - INTERVAL '30' DAY
    GROUP BY 1
)

SELECT * FROM morpho
UNION ALL SELECT * FROM aave
UNION ALL SELECT * FROM lido
UNION ALL SELECT * FROM fluid
UNION ALL SELECT * FROM euler
ORDER BY day DESC, protocol
```

***

## Notes & Limitations

* **No unified dataset**: Analysis requires protocol-specific logic. Each protocol has its own event schema and naming conventions.
* **Coverage varies**: Not all protocols are decoded on all chains. Check the data explorer for the latest availability.
* **TVL is approximate**: Deposit-minus-withdrawal tracking provides a proxy. For precise TVL, combine with balance snapshots and pricing data from `prices.day` or `prices.hour`.
* **APY data not available**: On-chain yield/APY calculation requires combining interest accrual events with token pricing and time-weighted math. This is complex and protocol-specific.
* **Holder counts deferred**: Accurate holder tracking requires the [Balances](/data-catalog/curated/balances/overview) tables, which are in open beta.
* **Some protocols overlap with Lending**: Aave v3 data is also covered in the [Lending](/data-catalog/curated/lending/overview) curated tables in a normalized schema. Use the curated lending tables for cross-protocol comparisons, and decoded tables here for vault-specific or protocol-specific analysis.
* **Token decimals vary per vault**: MetaMorpho vault `assets` values are denominated in the underlying token's smallest unit (e.g., 6 decimals for USDC, 18 for WETH). Always join with `tokens.erc20` for decimal normalization before computing USD values via `prices.day`.
* **Event counts ≠ volume**: Cross-protocol event count comparisons are directional only. Some protocols (e.g., Fluid) emit a single event per operation that covers supply + borrow + repay, while others have separate events.
* **Automated activity**: Some chains (e.g., Gnosis on Aave v3) show high event counts driven by automated/bot activity rather than organic user deposits.

***

## Related Tables

<CardGroup cols={2}>
  <Card title="Lending" icon="hand-holding-dollar" href="/data-catalog/curated/lending/overview">
    Curated supply, borrow, flash loan, and liquidation data across lending protocols
  </Card>

  <Card title="Balances" icon="scale-balanced" href="/data-catalog/curated/balances/overview">
    Token balance snapshots for holder analysis
  </Card>

  <Card title="Prices" icon="dollar-sign" href="/data-catalog/curated/prices/overview">
    Token pricing for USD denomination
  </Card>

  <Card title="Token Transfers" icon="coins" href="/data-catalog/curated/token-transfers/overview">
    Raw transfer events for flow analysis
  </Card>

  <Card title="DEX Trades" icon="shuffle" href="/data-catalog/curated/dex-trades/overview">
    DEX activity for vault token trading
  </Card>
</CardGroup>

***

## Enterprise Data Solutions

Need a unified vaults dataset, custom vault analytics, or dedicated support? [Talk to our enterprise team](https://dune.com/enterprise).
