Skip to main content
Change page

Deploying smart contracts

Last edit: @wackerow(opens in a new tab), April 23, 2024

You need to deploy your smart contract for it to be available to users of an Ethereum network.

To deploy a smart contract, you merely send an Ethereum transaction containing the compiled code of the smart contract without specifying any recipient.

Prerequisites

You should understand Ethereum networks, transactions and the anatomy of smart contracts before deploying smart contracts.

Deploying a contract also costs ether (ETH) since they are stored on the blockchain, so you should be familiar with gas and fees on Ethereum.

Finally, you'll need to compile your contract before deploying it, so make sure you've read about compiling smart contracts.

How to deploy a smart contract

What you'll need

  • Your contract's bytecode – this is generated through compilation
  • ETH for gas – you'll set your gas limit like other transactions so be aware that contract deployment needs a lot more gas than a simple ETH transfer
  • a deployment script or plugin
  • access to an Ethereum node, either by running your own, connecting to a public node, or via an API key using a node service

Steps to deploy a smart contract

The specific steps involved will depend on the development framework in question. For example, you can check out Hardhat's documentation on deploying your contracts(opens in a new tab) or Foundry's documentation on deploying and verifying a smart contract(opens in a new tab). Once deployed, your contract will have an Ethereum address like other accounts and can be verified using source code verification tools.

Remix - Remix IDE allows developing, deploying and administering smart contracts for Ethereum like blockchains

Tenderly - Web3 development platform that provides debugging, observability, and infrastructure building blocks for developing, testing, monitoring, and operating smart contracts

Hardhat - A development environment to compile, deploy, test, and debug your Ethereum software

thirdweb - Easily deploy any contract to any EVM compatible chain, using a single command

Crossmint - Enterprise-grade web3 development platform to deploy smart contracts, enable credit-card and cross chain payments, and use APIs to create, distribute, sell, store, and edit NFTs.

Further reading

Know of a community resource that helped you? Edit this page and add it!

Was this article helpful?

Website last updated: June 19, 2024

Learn

  • Learn Hub
  • What is Ethereum?
  • What is ether (ETH)?
  • Ethereum wallets
  • What is Web3?
  • Smart contracts
  • Gas fees
  • Run a node
  • Ethereum security and scam prevention
  • Quiz Hub
  • Ethereum glossary
(opens in a new tab)(opens in a new tab)(opens in a new tab)
  • About us
  • Ethereum brand assets
  • Code of conduct
  • Jobs
  • Privacy policy
  • Terms of use
  • Cookie policy
  • Press Contact(opens in a new tab)