Troubleshooting

Issues on an Exchange

INSUFFICIENT_OUTPUT_AMOUNT EXAMPLE

The transaction cannot succeed due to error: PancakeRouter: INSUFFICIENT_OUTPUT_AMOUNT. This is probably an issue with one of the tokens you are swapping.
You're trying to swap tokens, but your slippage tolerance is too low or liquidity is too low.
Solution
Reason
  1. 1.
    Refresh your page and try again later.
  2. 2.
    Try trading a smaller amount at one time.
  3. 3.
    Increase your slippage tolerance:
    1. 1.
      Tap the settings icon on the liquidity page.
    2. 2.
      Increase your slippage tolerance a little and try again.
  4. 4.
    Lastly, try inputting an amount with fewer decimal places.
This usually happens when trading tokens with low liquidity.
That means there isn't enough of one of the tokens you're trying to swap in the Liquidity Pool: it's probably a small-cap token that few people are trading.
However, there's also the chance that you're trying to trade a scam token which cannot be sold. In this case, PancakeSwap isn't able to block a token or return funds.

INSUFFICIENT_A_AMOUNT or INSUFFICIENT_B_AMOUNT EXAMPLE

Fail with error 'PancakeRouter: INSUFFICIENT_A_AMOUNT' or Fail with error 'PancakeRouter: INSUFFICIENT_B_AMOUNT'
You're trying to add/remove liquidity from a liquidity pool (LP), but there isn't enough of one of the two tokens in the pair.
Solution
Reason
Solution for nerds
Refresh your page and try again, or try again later.
Still doesn't work?
  1. 1.
    Tap the settings icon on the liquidity page.
  2. 2.
    Increase your slippage tolerance a little and try again.
The error is caused by trying to add or remove liquidity for a liquidity pool (LP) with an insufficient amount of token A or token B (one of the tokens in the pair).
It might be the case that prices are updating too fast when and your slippage tolerance is too low.
OK, so you're really determined to fix this. We really don't recommend doing this unless you know what you're doing.
There currently isn't a simple way to solve this issue from the PancakeSwap website: you'll need to interact with the contract directly. You can add liquidity directly via the Router contract, while setting amountAMin to a small amount, then withdrawing all liquidity.

Approve the LP contract

Head to the contract of the LP token you're trying to approve. For example, here's the ETH/WBNB pair: https://bscscan.com/address/0x70d8929d04b60af4fb9b58713ebcf18765ade422
  1. 1.
    Select Write Contract, then Connect to Web3 and connect your wallet.
  2. 2.
    In section "1. approve", approve the LP token for the router by entering
    1. 1.
      spender (address): enter the contract address of the LP token you're trying to interact with
    2. 2.
      value (uint256): -1

Query "balanceOf"

  1. 1.
    Switch to Read Contract.
  2. 2.
    In 5. balanceOf, input your wallet address and hit Query.
  3. 3.
    Keep track of the number that's exported. It shows your balance within the LP in the uint256 format, which you'll need in the next step.
Could not load image

Add or Remove Liquidity

  1. 1.
    Select Write Contract and Connect to Web3 as above.
  2. 2.
    Find addLiquidity or removeLiquidity (whichever one you're trying to do)
  3. 3.
    Enter the token addresses of both of the tokens in the LP.
  4. 4.
    In liquidity (uint256), enter the uint256 number which you got from "balanceOf" above.
  5. 5.
    Set a low amountAMin or amountBMin: try 1 for both.
  6. 6.
    Add your wallet address in to (address).
  7. 7.
    Deadline must be an epoch time greater than the time the tx is executed.
Could not load image
This can cause very high slippage, and can cause the user to lose some funds if frontrun

ExchangeRouter: EXPIRED EXAMPLE

The transaction cannot succeed due to error: PancakeRouter: EXPIRED. This is probably an issue with one of the tokens you are swapping.
Try again, but confirm (sign and broadcast) the transaction as soon as you generate it.
This happened because you started making a transaction, but you didn't sign and broadcast it until it was past the deadline. That means you didn't hit "Confirm" quickly enough.

Exchange: K

The transaction cannot succeed due to error: Pancake: K. This is probably an issue with one of the tokens you are swapping.
Refresh the page and try again, or increase slippage tolerance via the settings icon and try again.
This probably happened because you're trying to buy or sell tokens during a big price movement. The frontend is getting outdated information (e.g. outAmount) from the smart contract, causing the swap to fail.

Transaction cannot succeed

Try trading a smaller amount, or increase slippage tolerance via the settings icon and try again. This is caused by low liquidity.

Price Impact too High

Try trading a smaller amount, or increase slippage tolerance via the settings icon and try again. This is caused by low liquidity.

estimateGas failed

This transaction would fail. Please contact support
Solution
Reason
Contact the project team of the token you're trying to swap.
This issue must be resolved by the project team.
This issue is caused by tokens which have hard-coded the V1 PancakeSwap router into their contract.
While this practice is ill-advised at best, the reason for these projects having done this appears to be due to their tokenomics, in which each purchase sends a % of the token to LPs.
The projects affected will likely not work with the V2 router: they will most likely need to create new versions of their tokens pointing to our new router address, and migrate any existing token holders to their new token.
We recommend that any projects which created such tokens should also make efforts to prevent their users from adding them to V2 LP.

Out of Gas error

Warning! Error encountered during contract execution [out of gas]
You have set a low gas limit when trying to make a transaction.
Solution
Reason
Try manually increasing the gas limit (not gas price!) in your wallet before signing the transaction.
A limit of 200000 is usually enough.
The above example is from Metamask; check your wallet's documentation if you aren't sure how to adjust the gas limit.
Basically, your wallet (Metamask, Trust Wallet, etc.) can't finish what it's trying to do.
Your wallet estimates that the gas limit is too low, so the function call runs out of gas before the function call is finished.

Other issues

Provider Error: No provider was found

  • Clear your cache and cookies
  • Disconnect and reconnect your wallet
  • Restart your device

Unsupported Chain ID

Switch your network to the correct chain for the asset you're trying to trade. Check your wallet's documentation for a guide if you need help.
Last modified 6mo ago