Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion docs/docs/glossary.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ In 90% LTV Vaults, the process of closing an unhealthy osToken position that exc
### LTV (Loan-to-Value)
The ratio of minted osToken value to staked collateral value, expressed as a percentage. Standard Vaults have 90% LTV, while DAO-approved Vaults can have up to 99.99% LTV (osETH) or 99.95% LTV (osGNO). This determines the maximum amount of osToken that can be minted against staked assets.

### Meta Vault
### MetaVault
A Vault type that does not register validators directly, instead delegating accumulated assets to sub-Vaults managed by the Vault Admin. Deposits are distributed across underlying sub-Vaults (up to 50 maximum) according to curator-defined allocation logic.

### Minting
Expand Down
4 changes: 2 additions & 2 deletions docs/docs/vaults/customization.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -37,9 +37,9 @@ Receive staking deposits from wallets that have been whitelisted by the Vault Ad

Receive staking deposits from any wallets except those on a blocklist.

### Meta Vaults — Diversified Strategy
### MetaVaults — Diversified Strategy

Meta Vaults do not register validators directly —
MetaVaults do not register validators directly —
instead, they delegate accumulated assets to sub-Vaults, which are managed by the Vault Admin.
Each sub-Vault must have at least one registered validator.

Expand Down
24 changes: 15 additions & 9 deletions docs/docs/vaults/meta-vaults.mdx
Original file line number Diff line number Diff line change
@@ -1,22 +1,28 @@
---
title: Meta Vaults
description: Learn about Meta Vaults — multi-layer Vaults that delegate assets to sub-vaults for diversified staking, flexible fees, and institutional-grade setups.
title: MetaVaults
description: Learn about MetaVaults — multi-layer Vaults that delegate assets to sub-vaults for diversified staking, flexible fees, and institutional-grade setups.
---

import Image from '@theme/IdealImage'

# Meta Vaults
# MetaVaults

A Meta Vault is a specialized Vault that doesn't run validators itself. Instead, it accepts deposits and routes them across a set of underlying Vaults — called *sub-vaults* — which handle validator operations. Just like with a regular Vault, stakers can mint osToken against their position and redeem it for the underlying stake at any time. Meta Vaults are also available in **ERC-20** and **Private** variants: the ERC-20 variant issues a transferable token as the share representation, while the Private variant adds a whitelist gate on deposits.
A MetaVault is a specialized Vault that doesn't run validators itself. Instead, it accepts deposits and routes them across a set of underlying Vaults — called *sub-vaults* — which handle validator operations. Just like with a Regular Vault, stakers can mint osETH against their position and redeem it for the underlying stake at any time.

Any third party can deploy a Meta Vault permissionlessly via the [`EthMetaVaultFactory` ↗](https://etherscan.io/address/0x6107dB0bdd84023228E0aB11099190E88B073c1D#code) contract, which opens up modular, layered strategies. An operator can run a Meta Vault to diversify its stake across multiple sub-vaults for simplified management and reduced single-operator risk.
Meta Vaults support a common institutional pattern: a top-level Meta Vault routing deposits to themed Meta Vaults with per-client customization (fees, branding, etc.) while sharing a single validator fleet underneath.
MetaVaults are also available in **ERC-20** and **Private** variants: the ERC-20 variant issues a transferable token as the share representation, while the Private variant adds a whitelist gate on deposits.

<Image img={require('./img/MetaVaults_Architecture_Diagram.png')} alt="Meta Vaults Architecture Diagram" />
<Image img={require('./img/MetaVaults_Architecture_Diagram.png')} alt="MetaVaults Architecture Diagram" />

## Use Cases

## How Meta Vaults Work
Any third party can deploy a MetaVault permissionlessly, which opens up modular, layered staking strategies:

- [Diversified staking ↗](https://blog.stakewise.io/guide/diversified-staking-with-metavaults) — spread stake across multiple operators through a single MetaVault, reducing single-operator exposure, optimizing fees, and giving you one place to deposit, withdraw, and manage your osETH position.
- [Dedicated MetaVaults for clients ↗](https://blog.stakewise.io/guide/setting-up-per-client-metavaults) — create a separate MetaVault for each client while routing all deposits into a shared Regular Vault. This keeps client funds isolated, supports per-client fees, delivers higher and more stable APY, and simplifies operations by managing a single validator fleet.


## How MetaVaults Work

Allocation is handled by a **Curator** — a contract that decides how ETH is distributed to and withdrawn from sub-vaults. Curator contracts must be approved by the DAO and registered in the [`CuratorsRegistry` ↗](https://etherscan.io/address/0xa23F7c8d25f4503cA4cEd84d9CC2428e8745933C#code). Currently, one curator is available: the [`BalancedCurator` ↗](https://etherscan.io/address/0xe01351f866C118FbD04d222f9262A470F1d44d90#code), which spreads deposits and withdrawals evenly across sub-vaults.

Before routing, the `BalancedCurator` checks each sub-vault's remaining capacity and distributes within those limits, saturating or skipping sub-vaults that are full. This means deposits continue to succeed even when one sub-vault in the set has reached its cap, instead of the entire deposit reverting. A Meta Vault can route to up to 50 sub-vaults.
Before routing, the `BalancedCurator` checks each sub-vault's remaining capacity and distributes within those limits, saturating or skipping sub-vaults that are full. This means deposits continue to succeed even when one sub-vault in the set has reached its cap, instead of the entire deposit reverting. A MetaVault can route across up to 50 sub-vaults.
6 changes: 3 additions & 3 deletions operator/create-regular-vault.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -82,9 +82,9 @@ You'll need your Vault address to configure and run the Operator Service.
<TabItem value="url" label="From URL" default>
Navigate to your Vault page — the address is included in the URL:
```
https://stakewise.io/vault/mainnet/0x1234567890abcdef...
^^^^^^^^^^^^^^^^^^^
Your Vault Address
https://app.stakewise.io/vault/mainnet/0x1234567890abcdef...
^^^^^^^^^^^^^^^^^^^
Your Vault Address
```
</TabItem>
<TabItem value="details" label="From Details Section">
Expand Down
10 changes: 5 additions & 5 deletions operator/introduction.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ description: Learn what operating a Vault means, why you should try, what you ca
# Introduction

A StakeWise [Vault](/docs/vaults/intro) is a highly customizable, non-custodial staking pool that accepts ETH from depositors, processes staking rewards, and lets users withdraw anytime.
There are two types of Vault: a [Regular Vault](./create-regular-vault), which runs validators to secure the Ethereum network and earn rewards, and a [Meta Vault](./meta-vault/overview), which doesn't run validators itself and instead allocates stake across multiple sub-vaults.
There are two types of Vault: a [Regular Vault](./create-regular-vault), which runs validators to secure the Ethereum network and earn rewards, and a [MetaVault](./meta-vault/overview), which doesn't run validators itself and instead allocates stake across multiple sub-vaults.

Anyone — from solo stakers to professional node operators and institutions managing thousands of ETH — can create a Vault via [app.stakewise.io ↗](https://app.stakewise.io). It is fully permissionless and trustless. All staking logic is enforced by immutable smart contracts on-chain. [StakeWise infrastructure ↗](https://stakewise.io/institution) already powers staking solutions deployed by [MetaMask ↗](https://blog.stakewise.io/caseStudy/how-metamask-launched-pooled-staking-with-stakewise) and [Chorus One ↗](https://blog.stakewise.io/caseStudy/how-chorus-one-launched-retail-staking-with-stakewise).

Expand All @@ -17,7 +17,7 @@ Vaults support a wide range of staking use cases. A few common examples:
- **Stake for yourself** — Run your own validators, keep 100% of rewards, and stay liquid by minting [osETH](/docs/ostoken/intro) — an overcollateralized liquid staking token you can [use across DeFi ↗](https://app.stakewise.io/ecosystem) to earn additional rewards.
- **Offer staking to others** — Accept deposits and earn fees, or launch a white-label staking product powered by StakeWise smart contracts.
- **Institutional or DAO treasury staking** — Configure compliance controls, gate access with a Private or Block list, and optionally issue an ERC-20 Vault token.
- **Scale with Meta Vaults** — Delegate deposits across multiple sub-vaults without running validators yourself, unlocking modular staking strategies.
- **Scale with MetaVaults** — Delegate deposits across multiple sub-vaults without running validators yourself, unlocking [modular staking strategies](/docs/vaults/meta-vaults#use-cases).

## What Can I Earn?

Expand All @@ -33,7 +33,7 @@ A Vault with 1,000 ETH staked at ~3.5% APY and a 5% fee earns approximately 1.75

## What Are the Costs?

Costs depend on your Vault type (Regular or Meta) and whether you run the node yourself or delegate to a third party. Since Meta Vaults don't run validators, they skip the infrastructure cost, but they still need a funded operator wallet to cover gas for their operations.
Costs depend on your Vault type (Regular or Meta) and whether you run the node yourself or delegate to a third party. Since MetaVaults don't run validators, they skip the infrastructure cost, but they still need a funded operator wallet to cover gas for their operations.

- **Infrastructure** — As of March 2026, running a node requires a dedicated machine with at least 64 GB of RAM, a 4TB SSD, and a stable internet connection. You can use pre-built staking hardware like [Home x StakeWise Pro ↗](https://dappnode.com/collections/staking-collection/products/dappnode-home-x-stakewise-pro), rent a cloud server, or delegate node operations to a third party — in which case your costs depend on your arrangement with the provider.
- **Gas** — The Operator Service submits on-chain transactions funded from your operator wallet. Gas costs are minimal during normal network conditions and fluctuate with congestion. Check the [Ethereum Gas Tracker ↗](https://etherscan.io/gastracker) for current rates.
Expand All @@ -42,5 +42,5 @@ Costs depend on your Vault type (Regular or Meta) and whether you run the node y

Operating a Vault is a commitment. Your [Vault's performance](/docs/vaults/vault-performance) is ultimately your responsibility.
If you run a Regular Vault, you (or the node operator you delegate to) are responsible for the full validator stack.
If you run a Meta Vault, you don't manage validators — the sub-vaults do.
Both Regular and Meta Vaults rely on the [Operator Service](./launch-operator-service) to automate day-to-day Vault operations.
If you run a MetaVault, you don't manage validators — the sub-vaults do.
Both Regular and MetaVaults rely on the [Operator Service](./launch-operator-service) to automate day-to-day Vault operations.
4 changes: 2 additions & 2 deletions operator/manage-vault/overview.mdx
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
title: Manage Vault
description: "Day-to-day Vault management: settings, fees, rewards, and Meta Vaults."
description: "Day-to-day Vault management: settings, fees, rewards, and MetaVaults."
---

# Manage Vault
Expand All @@ -11,4 +11,4 @@ If your Vault has multiple fee shareholders, the [fee claiming](./fee-claiming)

You can also distribute [extra token rewards](./add-extra-rewards) (SWISE, osETH, SSV, Obol, WETH, USDC, LYX) to your stakers beyond standard staking yield — either periodically over a defined time window, as a one-time allocation, or via a custom IPFS-based distribution. Extra rewards are reflected in both the Vault APY and user reward statistics (Ethereum only).

If you operate a Meta Vault, the [`process-meta-vaults`](/operator/meta-vault/operate-meta-vault#3-run-process-meta-vaults) command triggers transactions to update states, process deposits into sub-vaults, and handle exits.
If you operate a MetaVault, the [`process-meta-vaults`](/operator/meta-vault/operate-meta-vault#3-run-process-meta-vaults) command triggers transactions to update states, process deposits into sub-vaults, and handle exits.
28 changes: 10 additions & 18 deletions operator/meta-vault/configure-meta-vault.mdx
Original file line number Diff line number Diff line change
@@ -1,34 +1,26 @@
---
title: Configure Meta Vault
description: Link sub-vaults to your Meta Vault so it can delegate staked assets across them.
title: Configure MetaVault
description: Link sub-vaults to your MetaVault so it can delegate staked assets across them.
---

# Configure Meta Vault
# Configure MetaVault

Once deployed, your Meta Vault isn't functional until you link at least one sub-vault to delegate staked assets to. Only the Meta Vault admin can add sub-vaults, and they can be added or removed at any time over the Vault's lifetime.
Once deployed, your MetaVault isn't functional until you link at least one sub-vault to delegate staked assets to. Only the MetaVault admin can add sub-vaults, and they can be added or removed at any time over the Vault's lifetime.

## Add Sub-Vaults

On your Meta Vault page, open the **Sub-vaults** tab and paste a Vault address or select one from the dropdown. Meta Vaults can have Regular Vaults and Meta Vaults as sub-vaults:
On your MetaVault page, open the **Sub-vaults tab** and paste a Vault address or select one from the dropdown. MetaVaults can have Regular Vaults and MetaVaults as sub-vaults:

**Regular Vaults** link directly. Any Regular Vault registered on StakeWise can be added — but linking a private Regular Vault will fail until that Vault's operator whitelists your Meta Vault. If you have an agreement with a private Vault operator, coordinate with them to whitelist your Meta Vault first.
**Regular Vaults** link directly. Any Regular Vault registered on StakeWise can be added — but linking a private Regular Vault will fail until that Vault's operator whitelists your MetaVault. If you have an agreement with a private Vault operator, coordinate with them to whitelist your MetaVault first.

**Meta Vaults** goes through a two-step process: you propose it via a post on the [StakeWise forum ↗](https://forum.stakewise.io/), and then the StakeWise DAO approve it.
**MetaVaults** go through a two-step process: you propose the MetaVault via a post on the [StakeWise forum ↗](https://forum.stakewise.io/), and the StakeWise DAO then approves it.


:::custom-info[Under the Hood]
Before a sub-vault can be linked, it must:

- **Be collateralized** — for a Regular Vault, this means it has launched at least one validator; for a Meta Vault used as a sub-vault, it means it already has at least one sub-vault of its own. Brand-new Vaults that haven't reached this point yet can't be added.
- **Rewards must be in sync** — the sub-vault and your Meta Vault need to be on the same Keeper rewards update.
- **Be collateralized** — for a Regular Vault, this means it has launched at least one validator; for a MetaVault used as a sub-vault, it means it already has at least one sub-vault of its own. Brand-new Vaults that haven't reached this point yet can't be added.
- **Rewards must be in sync** — the sub-vault and your MetaVault need to be on the same Keeper rewards update.

The rewards-sync requirement only kicks in once your Meta Vault already has a sub-vault. When you add the first one, the Meta Vault simply adopts that sub-vault's rewards state.
The rewards-sync requirement only kicks in once your MetaVault already has a sub-vault. When you add the first one, the MetaVault simply adopts that sub-vault's rewards state.
:::

## Use Cases

Meta Vaults support modular, layered strategies:

- **Diversify across operators** — spreading deposits across several sub-vaults gives you diversified staking across multiple operators.
- **Layer Meta Vaults** — using Meta Vaults as sub-vaults lets you layer strategies, for example a top-level Meta Vault routing deposits across several themed Meta Vaults underneath.
- **Build modular setups** — [create your own Regular Vault](../create-regular-vault) and link it to your Meta Vault. This opens the door to setups like one shared Regular Vault running all validators, a private Meta Vault per client with its own fee, or one public Meta Vault serving retail stakers.
25 changes: 16 additions & 9 deletions operator/meta-vault/create-meta-vault.mdx
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
---
title: Create Meta Vault
description: Step-by-step guide to creating a Meta Vault through the StakeWise UI — delegate staked assets across sub-vaults without running validators yourself.
title: Create MetaVault
description: Step-by-step guide to creating a MetaVault through the StakeWise UI — delegate staked assets across sub-vaults without running validators yourself.
---

import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';

# Create Meta Vault
# Create MetaVault

Creating a Meta Vault is done via the StakeWise UI and takes just a few minutes. Once your Meta Vault is created, run the Operator Service with the [`process-meta-vaults`](./operate-meta-vault#3-run-process-meta-vaults) command to keep it in sync with its sub-vaults.
Creating a MetaVault is done via the StakeWise UI and takes just a few minutes. Once it's created, [add sub-vaults](./configure-meta-vault) for it to delegate to, then run the Operator Service with the [`process-meta-vaults`](./operate-meta-vault#3-run-process-meta-vaults) command to keep it in sync with them.

:::custom-notes[Test on Hoodi First]
To try the full Vault setup on a testnet, open **Settings** <img src="/icons/stakewise/gear_icon.png" alt="gear button icon" style={{height: '2.5em', verticalAlign: 'middle', display: 'inline-block'}} /> in the StakeWise App and enable **Show Testnets**. Then switch to the Hoodi network to create and test your Vault before going to mainnet.
Expand All @@ -25,7 +25,7 @@ You'll need some Hoodi ETH to cover gas fees. Get testnet ETH from a faucet:

## Step 1: Select Vault Type

Vault type is set once at creation — select **Meta Vault**. You can optionally enable:
Vault type is set once at creation — select **MetaVault**. You can optionally enable:

- **Private** — Restrict deposits to approved wallets only.
- **ERC-20 Token** — Stakers receive a token they can hold in their wallet and transfer to others.
Expand Down Expand Up @@ -63,7 +63,7 @@ Click **Create Vault** to submit your configuration and create the Vault.

## Step 5: Transaction Confirmation

Confirm the transaction in your wallet to deploy your Meta Vault. Once the transaction confirms, your Meta Vault is live and visible on the **Operate** page.
Confirm the transaction in your wallet to deploy your MetaVault. Once the transaction confirms, your MetaVault is live and visible on the **Operate** page.

## Where to Find Your Vault Address

Expand All @@ -73,9 +73,9 @@ You'll need your Vault address to configure and run the Operator Service.
<TabItem value="url" label="From URL" default>
Navigate to your Vault page — the address is included in the URL:
```
https://stakewise.io/vault/mainnet/0x1234567890abcdef...
^^^^^^^^^^^^^^^^^^^
Your Vault Address
https://app.stakewise.io/vault/mainnet/0x1234567890abcdef...
^^^^^^^^^^^^^^^^^^^
Your Vault Address
```
</TabItem>
<TabItem value="details" label="From Details Section">
Expand All @@ -85,3 +85,10 @@ You'll need your Vault address to configure and run the Operator Service.
4. Copy the displayed address
</TabItem>
</Tabs>

## Next Steps

Your MetaVault is deployed but not yet functional. To put it to work:

1. [Configure it](./configure-meta-vault) — add the sub-vaults it will delegate deposits to.
2. [Operate it](./operate-meta-vault) — run the Operator Service to keep it in sync with those sub-vaults.
Loading