Help me to understand liquidity in new contracts

Hello, I am trying to deploy my smart contract, and I am currently deploying to BSC Testchain. Everything works fine, but I have a few questions regarding how things work and why people does certain things.

1. How to prevent whales in early stage of a token? I understand I need to add liquidity pool in order for people to be able to buy / sell the tokens. But I added 50 percent of the tokens to Liquidity pool with 2 BNB. But now when I tried to “buy” for like very small amount of money (from other address), let’s say 0.02 BNB it says price impact will be over 10 % AND the person sending 0.02 BNB would receive like 5% of all the tokens. Also if I try to buy for like 0.5 BNB then “Price impact is too high”.

  • I understand how liquidity works, but how do I manage so I do not create whales for a very little money? Because in this early stage it looks like a buy for 20 USD would create a massive whale in the future.
  • I came up with 2 possible answers, first is pre-sale, when I can lock some portion of all the tokens for a certain price on dxsale platform, or second option is providing not that many tokens in initial liquidity pool but lesser amount, which would create “more bnb for one token” situation. But what about the rest of the tokens then? People would easily loose interest if they can see you are holding like 80 percent of the tokens because you want to put them in a liquidity pool “later” plus this is a market manipulation, right?
  • Third answer should be to add a massive amount of BNB to an initial liquidity pool but that would be super pricey, like 20 or 30 BNB as a start. Right?
  • I tried to study a contracts like Safemoom, RFI, NFT.Art etc. all of them are forks of each other but one thing they do is they send tokens to liquidity pool on each transaction, a small portion, but why? Does not it make a situation where more tokens are in the pool because of the transactions and this actually drives the price down? Would not anyone want to avoid that? I am just trying to understand. What are the benefits of such an approach?

2. Why do people make “initial burns”? Why mint 1 quadtrillion or so tokens and then burn the half of them in the first minute? Why not mint half the amount initially?

3. How to make rug-proof successful launch of a token?

  • How much of BNBs and tokens should be in a LP?
  • How to make a token rug-proof? Just renouce ownership?
  • If I put 50 % of all the tokens in LP on pancakeswap, is there a possibility to use other “swaps” as well?
  • I read somewhere, that single person / address owning a whole liquidity pool is a bad thing, how can I avoid that, when as a contract creator I need to add a huge portion of tokens to liquidity pool?
  • What if Liquidity pool dries up? Either not enough BNB in a pool or not enough Tokens, can that happen? Will the contract collapse?

Thank you very much for an answers. Please if you know any and answer for any of the questions reply.

Kind regards.

1 Like

Hi @ProsteLubo welcome to Open Zeppelin!

How to prevent whales in early stage of a token?

Anti-whale mechanisms can be implemented with Max Transfer functionality and Max Ownership functionality. You can also punish the whales by increasing taxes on their transfers.

Be cautious. It’s alright to try and put limiters on whales, but if you try to overtly punish whales, they have enough money to attack you even at the cost of their money. My point is that it’s okay to be anti-whale, but if you piss them off they can harm your token.

Why do people make “initial burns”?

The sad reality is that most people make initial burns because they are just copying what other people are doing. Just take a look at the state of this forum. Half the topics are people “forking” SafeMoon code aka just copy and pasting to make a pump and dump token. : ( And that’s the truth about it. There is no “reason” behind what they are doing. They just want to make something for a quick cash grab without understanding it.

The reason why innovators want to do initial burns is because they are doing tokenomic schemes to advertise their tokens. It’s purely for marketing. It is the same as making a lower initial supply (assuming no other tokenomic mechanisms are in place like RFI).

But to someone who isn’t aware, they see “SUPPLY CUT IN HALF BLACK HOLED!!!” this is a great marketing tactic to make them buy into the token. But for people who understand these things, it’s a red flag.

How to make rug-proof successful launch of a token?

Make sure that the team never has access to the LP. It’s okay to give the team a cut of the profits, but at no point in time should they have access to public liquidity or a way to access the supply of tokens directly. No minting, no burning, etc.

Renouncing ownership is a bad idea. You should build code that can operate with administration, but without access to LP or malicious functions. You can also use a gnosis safe with a timelock.

If you are new, then please follow the tutorial at

Then follow some learning resources.

If you learn this stuff you can answer your own questions for example - “How much of BNBs and tokens should be in a LP?” I can’t answer because it is dependent upon your own project.