> For the complete documentation index, see [llms.txt](https://docs.lagoon.finance/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.lagoon.finance/vault/deploy-your-vault.md).

# Deploy your vault

Lagoon allows curators to deploy and manage vaults permissionlessly. Vaults can be created directly through the Lagoon interface.

{% hint style="info" %}
Before deploying a vault, curators should understand how asynchronous deposits and withdrawals work, how valuation is provided, and how roles are assigned. These choices define how the vault will operate in practice and should be considered before launch.
{% endhint %}

### Before you deploy

Before deploying a vault, make sure you have defined:

* the chain where the vault will be deployed. You can fin the list [here](/resources/networks-and-addresses.md).
* the vault admin, curator, valuation provider, and other required roles
* the valuation method and settlement frequence
* the access model, including whether whitelisting is required
* the custody and execution setup that will manage the strategy

### Deployment options

<table data-card-size="large" data-view="cards"><thead><tr><th></th><th data-hidden data-card-cover data-type="image">Cover image</th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><mark style="color:$primary;"><strong>Lagoon interface</strong></mark></td><td><a href="https://2098527692-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5vcVbvvRrtwZ0uaFrufF%2Fuploads%2FgtDCo9mwWMTD17qS71qN%2Fphoto_2026-03-12_16-34-34.jpg?alt=media&amp;token=af1116a3-7816-4fa9-8817-9d3c0950b6a9">photo_2026-03-12_16-34-34.jpg</a></td><td><a href="https://app.lagoon.finance/deploy">https://app.lagoon.finance/deploy</a></td></tr></tbody></table>

### Vault parameters

These are the parameters the vault takes at initialization, as of v0.6.0. The interface asks for them at deployment.

#### Underlying and shares

**`underlying`** (address) – The ERC-20 users deposit, and the unit of account of every valuation. Immutable.

{% hint style="danger" %}
This token can not be a rebasing token such as stETH or an Aave debt token. In the case of stETH you would use its non-rebasing equivalent, wstETH.
{% endhint %}

**`name`** (string) – Name of the ERC-20 shares. Updatable by the Vault Admin.

**`symbol`** (string) – Symbol of the ERC-20 shares. Updatable by the Vault Admin.

***

#### Roles and governance

**`safe`** (address) – Curator address holding the vault assets. Any custody solution works: Safe multisig, MPC wallet or EOA. Updatable by the Vault Admin.

**`admin`** (address) – [Vault Admin](/vault/roles-and-capacities/vault-admin.md), owner of the vault and of the governance structure.

**`valuationManager`** (address) – [Valuation Provider](/vault/roles-and-capacities/valuation-oracle.md) pushing the total assets of the vault. Can be a multisig or a contract.

**`whitelistManager`** (address) – [Access Manager](/vault/roles-and-capacities/whitelist-manager.md), manages the whitelist or the blacklist and the sanctions list.

**`securityCouncil`** (address) – [Security Council](/vault/roles-and-capacities/security-council.md), manages the price per share guardrails.

**`superOperator`** (address) – [Super Operator](/vault/roles-and-capacities/super-operator.md), acts on behalf of users and bypasses the access checks. Put the zero address to disable it.

***

#### Access control

**`accessMode`** (enum) – `0` for whitelist mode, `1` for blacklist mode. The two modes are mutually exclusive, see the [Access Manager](/vault/roles-and-capacities/whitelist-manager.md) page. The Vault Admin can switch mode later.

**`externalSanctionsList`** (address) – Optional on-chain sanctions list (Chainalysis-compatible) queried on every access check. Put the zero address to disable it.

***

#### Fees

**`feeReceiver`** (address) – Address receiving the fee shares at each settlement.

**`managementRate`** (uint16) – Management fee, in bps per year. Capped at `1000` (10%).

**`performanceRate`** (uint16) – Performance fee on gains above the high water mark, in bps. Capped at `5000` (50%).

**`entryRate`** (uint16) – Fee on deposits, in bps. Capped at `200` (2%) and can only be decreased afterwards.

**`exitRate`** (uint16) – Fee on redemptions, in bps. Capped at `200` (2%) and can only be decreased afterwards.

**`haircutRate`** (uint16) – Fee on synchronous redemptions, in bps. Capped at `2000` (20%).

**`allowHighWaterMarkReset`** (bool) – Whether the curator address can reset the performance fee baseline down to the current price per share. Set once at deployment, it can never be enabled later.

{% hint style="info" %}
💡 Fee rates are expressed in **basis points (bps)**

* `0.5%` = `50 bps`
* `2%` = `200 bps`
* `15%` = `1500 bps`
  {% endhint %}

***

#### Migration

**`initialTotalAssets`** (uint256) – Starting total assets of the vault, named **Initial NAV** in the interface. The interface takes the amount in the underlying, the parameter itself takes the raw amount with the decimals of the underlying. Put `0` for a normal vault. A non-zero value pre-mints the matching shares to the curator address without transferring any asset, see [Migrate an existing vault](/vault/how-to/migrate-an-existing-vault-into-a-new-lagoon-vault.md). Set once at deployment.

***

#### Upgradability

**`initialOwner`** (address) – Owner of the ProxyAdmin, the address able to upgrade the vault logic. Renouncing this ownership makes the vault immutable, which is irreversible.

**`initialDelay`** (uint256) – Delay to wait before an upgrade takes effect, in seconds. Between `86400` (24 hours) and `2592000` (1 month). Editable, after waiting the delay itself.

See [Upgradability and opt-in proxy](/vault/upgradability-and-opt-in-proxy.md) for the upgrade mechanism.

{% hint style="warning" %}
Coming from a pre-v0.6.0 deployment integration: `enableWhitelist` is replaced by `accessMode` and `rateUpdateCooldown` is gone, rate updates now apply immediately. The full list is in the [version history](/resources/version-history.md).
{% endhint %}

{% hint style="danger" %}
You must complete the [post-deployment operations](/vault/deploy-your-vault/vault-post-deployment-operations.md) to finalize your vault setup.
{% endhint %}

### Recommended reading

<table data-view="cards"><thead><tr><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><mark style="color:$primary;"><strong>Deposit and Withdraw flows</strong></mark></td><td><a href="/vault/deposit-and-withdraw-flows.md">Deposit and Redemption flows</a></td></tr><tr><td><mark style="color:$primary;"><strong>Vault valuation</strong></mark></td><td><a href="/vault/vault-valuation.md">Vault valuation</a></td></tr><tr><td><mark style="color:$primary;"><strong>Roles and capacities</strong></mark></td><td><a href="/vault/roles-and-capacities.md">Roles and capacities</a></td></tr><tr><td><mark style="color:$primary;"><strong>Fees</strong></mark></td><td><a href="/vault/fees.md">Fees</a></td></tr></tbody></table>
