ZH

Contract Address Calculator

Contract Address Calculator predicts EVM deploy addresses via CREATE (deployer, nonce) or CREATE2 (factory, salt, init code). For ETH, BSC, Base and more.

Contract address
0xcd234A471b72ba2F1Ccf0A70FCABA648a5eeCD8d

Calculations and checks on this page run in your browser. Private keys and seed phrases are never uploaded to the server.

About this tool

Contract Address Calculator derives the expected deploy address offline with CREATE or CREATE2 rules so you can confirm the result before broadcasting.

CREATE: address = last20(keccak256(RLP([sender, nonce]))), where nonce is the deployer's outgoing transaction count.

CREATE2: address = last20(keccak256(0xff ‖ factory ‖ salt ‖ keccak256(init_code))), independent of nonce—common for same-address multi-chain deploys.

How to use

  1. Choose CREATE or CREATE2.
  2. CREATE: enter deployer address and the nonce the deploy tx will use (explorer Account Nonce).
  3. CREATE2: enter factory address, 32-byte salt, and init code or its keccak256.
  4. Copy the predicted contract address.

FAQ

What nonce should I use for CREATE address calculation?

Use the deployer's pending nonce: if the next tx is the deploy, enter the explorer transaction count. A new EOA's first deploy uses 0.

Why does the same deployer get different addresses on different chains?

Nonce state is per chain. For same-address deploys, sync nonce sequences or use a CREATE2 factory with identical init code and salt.

What is the difference between init code and runtime bytecode?

Init code runs at deploy (constructor plus encoded args); persisted on-chain code is runtime. CREATE2 prediction uses the init code hash.

Can CREATE2 be used to seize someone else's contract address?

CREATE needs the deployer key; CREATE2 binds a specific factory and init code—you cannot occupy another's logic without changing bytecode.

Related tools