LP Lock Explained: How Locked Liquidity Works
An LP lock takes the liquidity backing a token and custodies it in a contract for a fixed term, so the person who launched the pool cannot yank the trading liquidity out from under buyers.
Updated July 20, 2026
What is an LP lock?
An LP lock is a mechanism that takes the liquidity position backing a token's pool and hands it to a locker contract that will not release it until a set date. "LP" stands for liquidity provider, and the LP is what lets people actually trade a token against ETH. Lock it, and the person who created the pool can no longer withdraw that liquidity whenever they feel like it.
This matters because pulling liquidity is the classic rug. A dev launches a token, people buy in with ETH, the pool fills up with real ETH, and then the dev removes the liquidity in a single transaction and walks away with the ETH. Buyers are left holding a token they can no longer sell for anything close to what they paid. A liquidity lock closes that door for the duration of the lock.
When people talk about "locked liquidity," they mean exactly this: the LP is sitting in a contract with a timer on it, verifiable by anyone, and the launcher cannot touch the underlying deposit until the timer expires.
On Bubblepad, every launch locks its liquidity automatically. There is no version of a Bubblepad launch where the LP is left unlocked and pullable.
Why locking liquidity matters
Liquidity is the difference between a token you can sell and a token you are stuck holding. When a pool has deep liquidity, trades fill near the quoted price. When the liquidity vanishes, the exit door is gone.
- A rug via LP removal is instant and permanent. There is no clawback, no support ticket, no vote. Once the ETH leaves the pool, it is the dev's.
- Locked liquidity removes that single largest point of failure. It does not make a token good, but it means the specific attack of "dev drains the pool" is off the table for the lock term.
- A verifiable lock is also a trust signal. It lets a buyer check onchain, before they ape, whether the liquidity can be pulled. That check takes seconds and is far more reliable than a promise in a Telegram chat.
The framing that keeps you honest: a lock protects the pool, not your judgment. It guarantees the liquidity stays put. It does not guarantee the price goes up, the team ships, or the token has any reason to exist.
How locking works with a Uniswap v3 position NFT
Uniswap v3 represents each liquidity position as an ERC-721 NFT, not as the fungible LP tokens that v2 used. When you provide liquidity to a v3 pool, you receive a position NFT that encodes the pool, the price range, and the amount of liquidity you deposited. Whoever holds that NFT controls the position.
So locking v3 liquidity means locking the NFT. The position NFT gets transferred into a locker contract and held there for the lock term. Because the locker owns the NFT, nobody can call the functions that would decrease liquidity or burn the position. The deposit is frozen.
Here is the part people miss: locking the NFT does not have to freeze the trading fees. A v3 position accrues swap fees separately from its principal, and the right to collect those fees can stay with the original launcher even while the NFT itself is locked. The deposit is untouchable, but the fee stream stays live.
On Bubblepad this is exactly how it works. The launch mints a fresh ERC-20, creates its Uniswap v3 pool against WETH, seeds the pool single-sided with 100% of supply, and the resulting position NFT is custodied by the locker for 10 years. The original launcher remains the pool's fee receiver and can still collect trading fees the whole time the NFT is locked. You give up the ability to rug; you keep the ability to earn on volume.
How long to lock liquidity, and why Bubblepad picks 10 years
There is no protocol-enforced minimum, so lock length is a choice, and it is one of the more honest signals a launch gives off. A 30-day lock tells you the liquidity can be pulled next month. A one-year lock is better but still has a visible expiry that traders will start pricing in as it approaches.
The logic of how long to lock liquidity is simple: the lock only protects buyers up to the day it ends. A short lock is a countdown to a potential rug, not a solution to it. Longer is strictly safer for holders.
Bubblepad locks liquidity for 10 years on every launch. Ten years is long enough that, for anyone deciding whether to buy today, the lock is effectively permanent. It removes the "when does this unlock" anxiety entirely and takes the timed-rug playbook off the table.
Combined with Bubblepad's fair launch design, this is the whole point. 100% of supply goes into the pool, the LP NFT is locked for a decade, and there is no admin key to change any of it after launch. The launch is immutable. What you verify at launch is what stays true, which is exactly what you are signing up for when you launch a token at /launch.
How to verify a lock onchain
Never take a lock on faith. The whole value of a lock is that it is verifiable, so verify it. You can do this from a block explorer without any special tools.
- Find the Uniswap v3 position NFT for the pool. This is an ERC-721 token from Uniswap's NonfungiblePositionManager contract, identified by a token ID.
- Check the current owner of that NFT. If the liquidity is locked, the owner is the locker contract, not the dev's wallet. If the dev's own address holds the position NFT, the liquidity is not locked and can be removed at any time.
- Read the locker contract to confirm the unlock timestamp. A legitimate locker exposes the release date for the position it holds. Confirm the date is far in the future rather than days away.
- Sanity-check the pool itself. Look at how much of the supply is actually in the locked position versus floating in other wallets. Liquidity being locked means little if most of the supply was never in the pool to begin with.
Because Bubblepad routes the position NFT into the locker as part of the same transaction that creates the pool, the ownership trail is clean and easy to follow from the launch transaction forward.
What an LP lock does not protect against
A lock is a specific tool for a specific attack. It is not a safety rating for the token. Read past the word "locked" and keep your guard up.
- Supply not in the pool. If a large share of tokens sits in wallets outside the locked position, those holders can still dump into the pool and crash the price. A lock on the LP says nothing about how supply is distributed. Bubblepad avoids this by putting 100% of supply into the locked pool at launch, but not every launcher does.
- Malicious token code. If the token contract has a mint function, a transfer tax it can crank up, or a blacklist, the team can damage holders without ever touching the LP. Bubblepad's tokens are minimal-proxy clones of a locked, immutable template with no admin key, which is the counterexample, but on other launchers you have to read the contract.
- Market risk. A lock cannot make anyone buy. Prices still fall, volume still dries up, and tokens still go to zero on their own with the liquidity fully locked the entire way down.
- Expiry. Every finite lock ends. When it does, the protection ends with it. This is exactly why a very long lock, like Bubblepad's 10 years, is meaningfully different from a short one.
Treat a verified LP lock as necessary, not sufficient. It removes one of the biggest risks in a token launch, and it removes nothing else.
Frequently asked questions
What is an LP lock in crypto?
An LP lock puts the liquidity backing a token's pool into a locker contract that cannot release it until a set date. It prevents the person who created the pool from removing the trading liquidity, which is the most common way tokens get rugged.
How long should you lock liquidity?
Longer is safer, because a lock only protects buyers until it expires. Short locks act as a countdown to a possible rug, so many serious launches lock for years. Bubblepad locks every launch for 10 years, which is effectively permanent for anyone buying today.
How do you lock liquidity on Uniswap v3?
Uniswap v3 issues each liquidity position as an ERC-721 NFT, so you lock the position NFT by transferring it into a locker contract for a fixed term. The deposit is frozen, but the original launcher can still be set as the fee receiver and keep collecting trading fees.
How do I verify that liquidity is locked onchain?
Find the pool's Uniswap v3 position NFT and check its owner on a block explorer. If the owner is a locker contract with an unlock date far in the future, the liquidity is locked. If the dev's wallet holds the NFT, it is not locked.
Does locked liquidity mean a token is safe?
No. A lock only stops the LP from being pulled during the lock term. It does not protect against a large holder dumping supply held outside the pool, malicious token code, or the price simply going to zero on market forces.