I'm using Solana v1.13.4 and anchor 0.25.0.

I deployed a program on mainnet successfully before but can't deploy it on mainnet now.

This is the error message.

I tried to deploy program using buffer account but still failed.

Recover the intermediate account's ephemeral keypair file with
`solana-keygen recover` and the following 12-word seed phrase:
--- --- --- --- --- --- --- --- --- --- --- ---
To resume a deploy, pass the recovered keypair as
the [BUFFER_SIGNER] to `solana program deploy` or `solana program write-buffer'.
Or to recover the account's lamports, pass it as the
[BUFFER_ACCOUNT_ADDRESS] argument to `solana program drain`.

The smart contract works well on devnet now. It's really strange. Why can't I deploy smart contract on mainnet?

  • What deploy command are you using for the maintnet? What version of devnet were you deploying to?
    – nickfrosty
    Commented Apr 18, 2023 at 13:19
  • Also, did you make sure your signing address has enough SOl to deploy?
    – nickfrosty
    Commented Apr 18, 2023 at 13:20

1 Answer 1


I solve this problem by add flag --with-compute-unit-price 1 (you can change 1 to any unit price you one, 1 = 1 microlamport). This flag will add priority fee for all your deployed tx. Just use the latest version solana cli 1.18.8 try this

anchor build

solana program deploy ./target/deploy/<..>.so --with-compute-unit-price 5

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.