One of the most exciting moments for any web3 project is when your token becomes liquid. Decentralized exchanges have opened the door for a diverse token economy, where any literally, any token can trade and gain liquidity. An un-liquid token is all but useless. So let’s explore how to setup a decentralized liquidity pool for your token.
In this article I’ll cover:
- Setting up initial liquidity and how to set a token price in an AMM DEX
- How much liquidity do you need?
- Where does the liquidity come from?
- How to incentivize liquidity providers (LPs)?
This article assumes you have working knowledge of how AMM DEXs work and key concepts like slippage, TVL and trading fees. If you’re looking for a primer on how liquidity pools work in general, this article covers that.
Why liquidity matters
If you’re building in web3, tokenomics probably matters to your token. It’s a rare project that doesn’t utilize a token, and part of a token having value and utility is its ability to be liquid and tradable with other web3 currencies like ETH or LUSD.
Liquidity is what lets people become part of your project and importantly — utilize your token for whatever it enables. Having a well distributed token, will help your project get into enough of the right hands. Having this kind of distribution requires a good amount of liquidity for your token.
Distribution matters when you’re launching a token. If your token is held disproportionately by insiders, then outsiders will be wary of purchasing your token and becoming part of the movement. Why will they be wary? Because most of the tokens are out of their control and can be ‘dumped’ on the market, diluting them. There are ways around this with proper vesting and emissions schedule, but it’s definitely an issue to be aware of.
The only way you can have a well distributed token is you provide liquidity for trading in and out of it. Which is why liquidity matters! So let’s get into covering measuring how much liquidity you’ll need and how to setup a liquidity pool for your token.
How to setup a liquidity pool for your token
Choosing your home base AMM
When coming to launch a token, the first part is making sure it can trade somewhere. Today, the easiest option is using a protocol like Uniswap, Sushiswap, Pancakeswap etc to setup an automated market maker (AMM) liquidity pool.
You’ll want to consider two things:
- Which chain to launch on, which will affect what protocol you use
- What other crypto token you’ll want to pair with yours
Choose the chain based on the type of project you’re launching. Games make the most sense on blockchains with low fees, such as Polygon or ImmutableX. Lower value NFTs can also make sense for these chains, as well as Solana or Avalanche. Higher value projects like DeFi make more sense on Ethereum or an Ethereum based rollup like Arbitrum or Optimism (this is a good guide to current and future rollups in the Ethereum ecosystem). You’ll also want to consider the geography of your user base as some blockchains are more popular in specific regions in the world (for example Binance Chain is very popular in the east).
The chain you’ve launched on will affect the protocol you use. For example Uniswap is the most popular on Ethereum Mainnet and has the most liquidity and user adoption. On Polygon Sushiswap has great user adoption, whereas on Solana and other chains different protocols make more sense.
AMMs are based on token pairs. You’ll need to choose the base token your token will trade with. Pair your token with a popular token to provide the best amount of liquidity. The two main options are the native token of the chain you’ve launched on or a stable coin. Using the native token (Matic, ETH, SOL etc) is usually the most liquid and lowest fee option — since anyone trading on that chain must have the native token. However native tokens are more volatile than stable coins, which appeals to a different base of investors.
Once you’ve chosen your home base it’s time to set your price and liquidity metrics.
Choosing an initial price for your token
“Price is what you pay, value is what you get” is a saying attributed to Warren Buffet, the greatest value investor of the past decade. How do you juxtaposition the price and value of your token?
Technically, setting a price for your token when creating a liquidity pool is incredibly simple. The ratio of tokens in your pool sets the price. 100 USDC to and 10 “MYTOKENS” will set an opening price of 10USDC per “MYTOKEN”. Uniswap for example has a very easy interface for this:
The more important question is how do you reach that initial price.
The basics of token valuation
Setting an initial token price is very similar to setting an initial stock price at an IPO. A process that token launches have a lot to learn from. Set your price too high and the market won’t accept it, leaving early token holders unhappy as they watch the price drop. Price your token too low, and you’ll be leaving money on the table. So how can you know how to price? Pricing can be simplified into three categories.
- Judging the supply and demand flows: utility, emissions etc.
- Evaluating the future financial reward of holding the token: understanding the DCF of the token and project.
- The Keynesian beauty contest of the token: What does the rest of the market think the token is worth? What will investor demand be for the token?
Valuation is a subjective field. Beauty really is in the eye of the beholder, and financial modeling and valuation is too long a topic to get into in this article. There are however two good rules of thumb to use:
- Comparable companies in the market
- Earnings per share multiple
Comparable companies: This is a simple methodology. You look at similar companies that have launched a token or their private valuation and use that as your benchmark. If a direct competitor is worth $20 million, than it’s not unreasonable to set a token price that reflects a $20 million valuation. The benefits to this method is simplicity. There’s a valid argument that the market knows best when it comes to pricing, and using the indications from the market is a simple and often useful technique. The risk in using comparable companies as your only benchmark is that you’re giving up on your own intuition and judgement on what your project is worth and letting the market decide.
For example if your initial token launch is 50% of your total token supply and you’re valuing your project at $20 million, you’ll price “MYTOKEN” at $10.
At times, markets can be irrational and prices can be completely untethered to reality. In web3 and crypto, this happens often. If you price your token based on these market dynamics, you’ll set yourself up for wild price swings.
Price to Earnings multiple: Price to Earnings. (P/E) is a common tool for evaluating stocks and is very useful for tokens as well. Stocks, and some tokens, give their holders the right to a future cash flow, designated by the earnings per share (EPS). Markets usually value these future cash flows at a multiple which takes into account what the market things about a few factors: the sector the company operates in, how stable or risky the future cash flows are, how likely they are to grow and so on. For example the S&P 500 is valued at a 19.5 P/E, meaning that investors are willing to pay 19.5 times the estimated earnings of the S&P 500 companies. You can read more about P/E here.
At the core of using a P/E model to evaluate the price of your token is having a financial model that estimates future earnings for your token and a mechanism that distributes those earnings to token holders.
Valuation is hard, but important. I highly recommend this article to get an overview of how to model and think about future earnings.
In any event, using one of these two methods should give you a decent price range to launch your token. Taking a lesson from IPOs, it’s better to price on the lower end of whatever you think the market can accept, so that your token price is well received and rises, leaving everyone relatively happy. A second rule of thumb is that once you price your token — the market will do the rest! If you’ve underpriced or overpriced, the market will quickly show you what it thinks.
Once you think you know what price to set your initial token at, it’s time to think about liquidity. Spoiler: your price will affect your liquidity needs.
How much liquidity do you need?
As I covered in ‘Liquidity Pools: Everything you need to know’, an AMMs liquidity has a direct affect on how volatile price movements are. The more liquid, the more TVL, the less your token’s price will move.
The relationship between price movement and liquidity amount is directly formulated in the constant product formula ‘X * Y = K’. A rough rule of thumb is that in any given trade, price will move by slightly less than the volume of the trade as a percentage of the asset being swapped. Put simply: a trade whose volume is 10% of the pools’ toke A liquidity will move the price ~9%. So given a pool with 10 ETH and 15,000 USDC, a swap of 1 ETH (which is 10% of the ETH in the pool) should move price by of ETH by ~9%.
So how much liquidity is enough? You’ll want the average trade in the pool to not cause price swings and slippage. If you anticipate the average trade being worth $1000 in “MYTOKEN”, you’ll need your pools’ “MYTOKEN” supply to be at least 100x that ($100,000) — which would me a 1% price swing per average trade.
The larger your project, you should aim for a higher ratio — of 1000x the average trade for two reasons. First, that’s your average trade. You’ll definitely have larger ones and you don’t want those few trades to move the price of your token that dramatically. Second, even a 0.1% price swing per average trade is a LOT. That means that every 10 buyers move the price of your token by 1% (technically more using the constant product formula). Most currencies don’t move that much when millions of people trade them.
As a liquidity provider for your token, you’ll want to balance two things:
- Having too little liquidity in your pool. This will cause high slippage costs and volatility, which would make it more costly for people to buy your token.
- Bearing the cost of providing all that liquidity. Providing liquidity can be expensive in terms of opportunity cost of capital and Impermanent Loss (IL).
This balancing act is delicate, and has some best practices. Let’s dive into the cost of providing liquidity.
I design tokenomics for crypto protocols and am putting everything I’m learning into a super in depth course on Tokenomics. If you’re interested in my free email course on tokenomics, sign up here!
The cost of liquidity
Providing liquidity to an AMM pool has two costs:
- Opportunity cost
- Impermanent Loss (IL)
The Opportunity cost of being an LP
Providing liquidity requires, well, liquidity. As in capital. The capital you provide to a liquidity pool has to come from somewhere. Whether you’re bootstrapped or you’ve raised capital from investors, depositing capital into a liquidity pool means not using that capital to grow your project. It’s money you can’t use to hire, market or develop.
Don’t misunderstand. This isn’t capital that is going to waste. It’s being used well — liquidity is incredibly important for your project. But it is capital you’re tying up and can’t use for other things — hence there is a missed opportunity for this capital. It’s being locked up in an activity that isn’t necessarily bearing the highest ROI but is necessary nonetheless.
For example you’ve raised $4 million to build your project and just launched a token. You value your company at $20 million and 50% of your tokens are being distributed in your airdrop. You run some numbers and anticipate the average trade size being $2000, meaning you’ll need at least $600,000 in liquidity from each asset to keep the price from moving too much with each trade. This means that you’ll need $1.2 million in capital in the liquidity pool. 30% of the capital you just raised is going to provide liquidity. That’s 30% less budget you have to hire.
The opportunity cost for providing the necessary liquidity to ensure a liquid token can be costly (pun intended).
Opportunity cost matters not only to the project owner, but also to any other liquidity provider. They are locking up capital in one trade instead of another. Thus it must provide them with enough reward to make it worthwhile.
The second cost to providing liquidity is the risk of Impermanent Loss (IL). I cover IL here, but briefly, it’s the possibility of that the total capital you’ve deposited in a liquidity pool will be worth less than the value of that capital had you simply held it in your wallet. In essence, by depositing 1000 “MYTOKEN” and 10 ETH into a liquidity pool, in six months when you withdraw the liquidity you’ll find that you might have been better off simply holding those tokens in your wallet, and you’ve “lost” money by providing liquidity.
It’s important to note that this is relative loss, not an absolute one. That’s why I put “lost” in quotes. You’ve lost money relative to what you could have gained, but in absolute terms you could still have capital gains. For example if the price of ETH goes up by 50% from the day you provide liquidity and the day you withdraw, your capital will increase, but not to the same amount of simply holding ETH outside of the liquidity pool. This is because of the dynamics of the constant product formula, X * Y = K, which I explain here.
While regular liquidity providers treat IL as a justifiable risk (they could be executing a more profitable trade), for builders this is part of the cost of doing business. Your goal with the liquidity pool capital isn’t to make capital gains, it’s to provide capital for your token. IL is just part of the cost of doing business. It’s an operational expense. Where IL does come into play is that other liquidity providers will be taking IL into consideration and it will enter their risk/reward framework. Especially for tokens in their early days that have just launched and tend to be more volatile.
Solving the liquidity pool conundrum
The way to balance between the cost to provide enough liquidity and the need for deep liquidity is to incentivize other liquidity providers to join your pool. This helps spread out the cost of liquidity among other participants. It doesn’t come for free though. Just like there’s a cost for you as the liquidity provider, there’s a cost for them. LPs need to get excited about the opportunity to help shoulder the cost.
There are a few ways to do this including providing LPs extra rewards to increase their ROI, providing LPs special project based rewards or lower the risk profile of holding your token. You can read more about these strategies and best practices for rewarding LPs here.
On a high level, you’re giving away future upside in some form (tokens, perks etc) for capital assistance now, and the thing to beware of is that dynamics — give too much away now and you’ll regret it. Give too little and your LP incentives won’t be enough.
How to setup a liquidity pool for your token
Setting up liquidity for your token is one of the most important parts of your tokenomics. A liquid token lets more users partake in your ecosystem and gives credibility to your project. There are several steps we covered in this article:
- Choosing your environment: blockchain ecosystem and AMM protocol
- Setting a price for your token
- Assessing the amount of liquidity you’ll need to provide smooth trading
- Incentivizing LPs