> For the complete documentation index, see [llms.txt](https://docs.metric.xyz/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.metric.xyz/use-metric/provide-and-manage-liquidity/pool-tiers.md).

# Pool tiers

A pool's tier describes its safeguards and permissions for public LPs, not its profitability or execution risk. It is recalculated from the pool's onchain configuration and Metric's curator and feed records, and can change.

{% hint style="warning" %}
**Verified doesn't mean endorsed.** Neither verification nor the 🟢 Best Practices tier is an endorsement or warranty of any curator or strategy.
{% endhint %}

## What the tier means

Anchoring constrains custom quotes against an oracle. A verified curator identifies who runs the pool but does not impose the same price constraint.

High Risk does not prove malicious behavior. It means the pool does not meet the qualifying configurations. A malicious or compromised pricing strategy can drain LP funds; **no tier guarantees safety**. 🟢 Best Practices and 🟡 Neutral pools have safeguards that restrict specific actions and limit the risk.

Pools in the same tier can carry very different risks. In 🟢 and 🟡 pools, StopLoss rejects any single swap taking a bin more than 15% below its peak, except the bin's first trade. In a 🔴 pool, one transaction may drain it.

Before depositing, check the feed, safeguard settings and remaining admin permissions. See [Risks and safeguards](/use-metric/provide-and-manage-liquidity/risks-and-safeguards.md).

| Badge             | Baseline check       | Pricing                                                                  | Curator  |     Extensions     |
| ----------------- | -------------------- | ------------------------------------------------------------------------ | -------- | :----------------: |
| 🟢 Best Practices | :white\_check\_mark: | [Anchored pricing](/how-pools-work/anchored-pricing.md#anchored-pricing) | Verified | Immutable StopLoss |
| 🟡 Neutral        | :white\_check\_mark: | [Anchored pricing](/how-pools-work/anchored-pricing.md#anchored-pricing) | Any      | Immutable StopLoss |
| 🟡 Neutral        | :white\_check\_mark: | Any Price Provider                                                       | Verified | Immutable StopLoss |
| 🔴 High Risk      | :x:                  | Any other configuration, or a failed baseline check                      | Any      |         Any        |

A single failed baseline check makes the pool High Risk, however well the rest is configured.

If an anchored pool's price feeds don't match its tokens, the pool drops one tier: Best Practices becomes Neutral and Neutral becomes High Risk. A token whose feed mapping Metric hasn't confirmed yet counts as a mismatch.

Pools with a deposit allowlist are shown as 🟣 Private instead of receiving a tier. A pool Metric has excluded is hidden from pool lists and search; it only appears, as Blacklisted, in the positions of LPs already in it. A pool that hasn't been classified yet, for example because it was just created, is shown as Unknown.

### Tokenized stocks

B20 Assets on Base and Robinhood Stock Tokens on Robinhood Chain carry an issuer multiplier, so they must be priced through the [Multiplier Oracle](/how-pools-work/oracles.md#multiplier-oracle-tokenized-stocks). A correctly wired Multiplier Oracle pool is tiered like any other anchored pool and can reach 🟢 Best Practices.

A pool is 🔴 High Risk, however well the rest is configured, when:

* it prices one of these tokens from Pyth, Chainlink or a compressed feed directly, which ignores the multiplier, or
* one of its Multiplier Oracle feeds is miswired: bound to a token other than the one it prices, over a feed that isn't a share price, on a token that isn't one of these tokenized stocks, through an adapter that can't read the token's multiplier, or pricing one of these tokens without its multiplier.

A Multiplier Oracle feed Metric can't check yet, for example one that hasn't been created or whose share price feed isn't in Metric's catalog, counts as a mismatch and drops the pool one tier.

## Definitions

**Anchored pricing** means the pool uses an [Anchored Price Provider](/how-pools-work/anchored-pricing.md#anchored-pricing). Its parameters must be immutable, and its price feeds must be no more than 15 seconds stale. The provider clamps the curator's quotes against an oracle price, so the curator can quote wider than that price but never through it.

**Verified curator** means the current pool admin has passed KYB, is in Metric's registry of trusted or known admins and is the pool creator. Verification identifies the curator; it doesn't vouch for the strategy. The admin role can't be renounced, only transferred, and a transfer to anyone other than the creator loses verification. See [Curators](/use-metric/provide-and-manage-liquidity/public-pools-and-curation.md) for verification and onboarding.

**Withdrawal extension** means any extension registered on `beforeRemoveLiquidity` or `afterRemoveLiquidity`, including Metric's standard ones. It can block LP exits, so it makes a pool High Risk. Adding extensions on swaps or deposits doesn't lower the tier.

**Baseline checks** means the pool must have:

* An **immutable** Price Provider address: the provider can never be replaced.
* A maximum bin width of **1%**.
* An attached and initialized **StopLoss** with **drawdown ≤ 15%** and **daily decay ≤ 15%**, whose settings are **immutable**: its timelock is set to the maximum and no change is queued.
* **No withdrawal extensions**.
