I'm trying to deploy INK 4.0 smart contract with cargo-contract 2.0 beta to a network but I'm getting the following error contracts.CodeRejected.

Whenever i try to upload the contract to my local substrate node I'm getting the following error: StorageDepositLimitExhausted, More storage was created than allowed by the storage deposit limit.

As mentioned, I'm using INK 4.0 beta and cargo-contracts 2.0 beta. I've tried compiling the following ways:

  • cargo contract build --optimization-passes=0

  • cargo contract build

I'm using MacBook pro M1 pro chip using MacOs Ventura (13.0.1 (22A400))

Thank you very much :)

  • My system specification is same as yours and I just created fresh project by using cargo-contracts 2.0 beta and uploaded but haven't faced any issue. there is same issue as yours contracts.CodeRejected but it's on ink 3.3.0
    – go11li
    Commented Dec 21, 2022 at 1:35
  • Mind sharing your compile command? Commented Dec 21, 2022 at 9:57
  • cargo contract build
    – go11li
    Commented Dec 27, 2022 at 1:29
  • i have same issue while deploying on the rococo
    – rahul
    Commented Apr 5, 2023 at 12:04

3 Answers 3


The network I'm trying to deploy the contract to is not supporting INK! 4.0 beta yet.


I was having the same issue deploying on a local 0.21.0 node. I got it to work by running node version 0.23.0 instead.


Inside https://ui.use.ink/, at the bottom left corner, you should find Storage Deposit Limit. Turn the toggle button on and enter an amount to enough for deployment.

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.