‼️Trouble shooting
Failed to read birdeye-tokens.json file
The shared birdeye key is often at it's quote limit. Please use your own key to unblock yourself, instructions are listed in config doc https://solanamevbot.gitbook.io/home/fundamentals/bot-configurations Set BIRDEYE_API_KEY= your key in your .env file
The bot stucks on Waiting for Jupiter connection to http://0.0.0.0:18080/, or you are seeing jupiter-swap-api failed with error reading a body from connection
error reading a body from connection
You can set USE_LOCAL_MARKET_CACHE=true
in your .env file. When this is set to true, it will load the market cache from the local file mainnet.json
. This is useful when you run jup and it's very slow to start, or even fail with error reading a body from connection
. You can update the local file with wget https://cache.jup.ag/markets?v=3 -O mainnet.json
Note by using this, you are responsible to keep the file up to date.
I'm seeing Too Many Requests
, or "statusCode": 429
Too Many Requests
, or "statusCode": 429
You are hitting the rate limit of your RPC. This means your configuration is too aggressive for your RPC to handle. Try set JUPITER_TOKEN_COUNT
to a smaller number.
price_tracker.update_prices failed with: missing decimals for USDC
You may see this error if you exclude USDC, it can be safely ignored.
error binding to 0.0.0.0:18080: error creating server listener: Address already in use (os error 98)
First make sure you are not running two bot instances on the same machine. If you do make sure one of them has DISABLE_LOCAL_JUPITER=true
To fix this issue, run
If it still not resolved, run
It should output a number for you, let's say it's 11020, then run
I'm seeing a lot of Generated transaction is too large
Generated transaction is too large
It is normal and ok to see this pop up once in a while, but if you are seeing this a lot, consider setting a smaller number for JUP_MAX_ACCOUNTS
in your .env file. e.g.
I'm not seeing any opportunities show up in my log
There are multiple cases where this can happen.
Check if you have set
ENABLE_SIMULATION=false
, simulation is set to true by default, but it will reduce the number of opportunities you see, and if your RPC is slow, that can cause it to not show any opportunities.Check if your jupiter success rate. If that is close to 0, then there's likly a mismatch between your jupiter and the intermedium tokens you use.
Check your minProfit, opportunities will drop as you raise the value of minProfit A LOT.
I'm seeing a lot of opportunities, but nothing lands
This is a big topic and a lot of things can affect it.
The first thing I would suggest is to copy the demo/shyft config from Config examples and have something landing first. Then tweak your settings from a working setup.
Performance tuningexplains a lot of the details on what may affect your results.
First check your minProfit setting in base-mint.json
Jito
For jito, it will only land when the transaction succeed. If nothing lands, it may because of a lot of different reasons. Just listing a few here:
You are too slow on reading/sending. The opportunity is already taken by others.
Your tip is not high enough. Note jito rank transactions by raw tip value, so even if you set a high percentage, others may still beat you with a lower tip percentage if their profit is higher. aka 50% of a 2 sol profit is still higher than 90% of a 0.1 sol profit. This usually happens because of different trade size/trade route.
You are sending too many requests to jito. With the bot's setup, you can send about 10 requests/s for jito bundles. If your setup is sending more than that, only 10 of them will get through each second. You should raise your minProfit or reduce the number of trade sizes etc. in this case to reduce the total requests you send.
Spam
For this question, we are specifically talking about having transactions landing. If they already land but failed, that's not what we are talking about here.
For spam, the reason for nothing to land is mostly two reasons:
You are not paying a high enough fee. You can control the fees you use in two ways. Either set COMPUTE_UNIT_PRICE in your .env file, or set priorityFeePercentile in your bsse-mint.json file.
The rpc you use to send sucks. Different rpc have very different performance on sending. You can use the solana-rpc-benchmarking-tool to test different rpcs to help you find the best one to use.
error while loading shared libraries: libssl.so.3
The bot nees to run on Ubuntu 22+, if you are using a lower version upgrade should resolve your issue.
Profit calculation error
If you are seeing your failed transaction with error contains Profit calculation error
, it's totally normal for spam mode. It means the trade in this transaction is losing you money, aka the output is smaller than the input. The program is designed to fail in this case to prevent you from losing money.
Dashboard shows I'm making profit but I'm actually losing money when I add up my sol
On Solana, whenever you own a new token, you will need to create a new token account for it, and you need to pay ~0.002 SOL rent for the token account. When using the bot, you will trade a lot of different tokens, hence a lot of token accounts will be created in your account. You can get back the rent by closing the token accounts. There are tools that can help you close all token accounts:
Last updated