
Individual, global and deep freeze
4 minDifficulty Checked 2026-11-10- A frozen holder can still receive the token, but can send it only to the issuer.
- A deep-frozen holder can neither send nor receive it, except with the issuer.
- No Freeze ends single-holder freezes for good, but a global freeze can still start.
Individual Freeze. The issuer freezes one holder's trust line. That holder:
- can still receive the token from others;
- can send it only directly back to the issuer;
- has any offers to sell it treated as unfunded.
Deep Freeze. A stronger freeze for one holder. That holder:
- cannot send or receive the token, except directly with the issuer;
- cannot place offers to buy or sell it;
- cannot be used as a route for other people's payments.
A deep freeze needs a regular freeze on the same line, set before or at the same time.
Global Freeze. The issuer freezes every holder at once. Holders can still send the token to the issuer and receive it from the issuer. Offers to sell it are unfunded. It covers every token that account issues, never a single one.
An issuer whose key was stolen can use it to stop the flow of funds while it investigates. An issuer moving to a new account, or closing down, can use it to lock balances at one point in time.
No Freeze. The issuer gives up freezing for good:
- No more individual or deep freezes.
- No clawback.
- It can still start a global freeze, but can never end one.
Trust line freezes are set with TrustSet flags:
| Flag | Hex |
|---|---|
tfSetFreeze | 0x00100000 |
tfClearFreeze | 0x00200000 |
tfSetDeepFreeze | 0x00400000 |
tfClearDeepFreeze | 0x00800000 |
Rules:
- A deep freeze needs an individual freeze already in place, or set in the same transaction.
- Clearing the individual freeze also requires clearing the deep freeze. A deep freeze can be cleared on its own.
- Neither can be set by an account that has No Freeze.
- On the
RippleStateentry they appear aslsfLowFreezeorlsfHighFreeze, andlsfLowDeepFreezeorlsfHighDeepFreeze.
Account freezes are set with AccountSet:
| Setting | SetFlag | Ledger flag |
|---|---|---|
| Global Freeze | asfGlobalFreeze (7) | lsfGlobalFreeze (0x00400000) |
| No Freeze | asfNoFreeze (6) | lsfNoFreeze (0x00200000) |
No Freeze must be signed with the master key. A regular key or a multi-signature cannot enable it.
Effects elsewhere:
OfferCreatereturnstecFROZENfor a token on a frozen line, or for buying a token the issuer has deep-frozen for you.- Payments that would ripple through a deep-frozen line must take another path, or fail.
- If a pool holds a frozen asset, its LP tokens are frozen too.
AMMDepositreturnstecFROZENwhen a deposited token is frozen.
Freezes never touch XRP. For Multi-Purpose Tokens, the equivalent is a lock, which works like a deep freeze.
- Freezing TokensRead 2026-11-10
- TrustSetRead 2026-11-10
- AccountSetRead 2026-11-10
- RippleStateRead 2026-11-10
- AccountRootRead 2026-11-10
- OfferCreateRead 2026-11-10
- Automated Market MakersRead 2026-11-10
- AMMDepositRead 2026-11-10
