Deploy a Smart Contract on Ethereum (ETH)
Tags: web3, nft, evm, ethereum
Published: 2023-03-27 21:15:40

This guide will show you how to deploy any smart contract to the [**Ethereum**](https://ethereum.org/en/) network.

By the end, you'll learn how to create a simple NFT Drop smart contract, deploy it to the [**Sepolia**](https://thirdweb.com/sepolia?utm_source=devto&utm_medium=crosspost&utm_campaign=deploy-contract-ethereum) testnet, and mint an NFT on the smart contract.

Let's get started!

## What is Ethereum?

[Ethereum](https://ethereum.org/en/?ref=thirdweb) is the most popular blockchain for web3 applications. It is a Layer 1 blockchain, meaning it is highly secure, but it is also very expensive to use when compared to other alternatives.

The Ethereum network has projects such as the [Bored Ape Yacht Club](https://boredapeyachtclub.com/?ref=thirdweb#/) and [Crypto Punks](https://www.larvalabs.com/cryptopunks?ref=thirdweb) which have helped Ethereum projects gain a large community of users.

Projects that don't require a lot of interaction with the blockchain are typically more suitable for Ethereum as a result of the network's high gas fees.

If you take a look at our [Gas Estimator](https://thirdweb.com/gas?utm_source=devto&utm_medium=crosspost&utm_campaign=deploy-contract-ethereum), you can quickly see that Ethereum smart contracts are both expensive for you to deploy and expensive for your users to interact with.

## Create a smart contract on Ethereum

To begin, head to the Contracts page in your thirdweb Dashboard and hit "Deploy new contract":

![deploy new contract](https://blog.thirdweb.com/content/images/2023/03/SCR-20230304-uu3-1-.png)

You will be taken to our [Explore](https://thirdweb.com/explore?utm_source=devto&utm_medium=crosspost&utm_campaign=deploy-contract-ethereum) page — where you can browse smart contracts built by the top protocols in web3 and deploy them in just a few clicks!

_Note: You can also use the thirdweb_ [_CLI_](https://portal.thirdweb.com/cli?utm_source=devto&utm_medium=crosspost&utm_campaign=deploy-contract-ethereum) _to set up a smart contract environment by running the below command from your terminal:_

_This will take you through an easy-to-follow flow of steps for you to create your contract. Learn more about this in our_ [_CLI guide_](https://blog.thirdweb.com/guides/the-ultimate-guide-to-thirdweb-cli/?utm_source=devto&utm_medium=crosspost&utm_campaign=deploy-contract-ethereum)_._

Otherwise, let's get back to [Explore](https://thirdweb.com/explore?utm_source=devto&utm_medium=crosspost&utm_campaign=deploy-contract-ethereum):

![thirdweb explore page](https://blog.thirdweb.com/content/images/2023/03/SCR-20230309-bpg-2.png)

Here, select your smart contract of choice. For this guide, we're going to use the [NFT Drop (ERC721)](https://thirdweb.com/thirdweb.eth/DropERC721?utm_source=devto&utm_medium=crosspost&utm_campaign=deploy-contract-ethereum) contract to create our NFT collection:

![thirdweb's NFT Drop Contract](https://blog.thirdweb.com/content/images/2023/03/SCR-20230304-rkv-2.png)

Set up your smart contract with an image, name, description, etc., and configure which wallet address will receive the funds from primary and secondary sales:

![Populate metadata of your contract](https://blog.thirdweb.com/content/images/2023/03/contract-metadata-2-1-1.png)

Our smart contracts are deployable to any EVM chain, so let's deploy this to the Sepolia testnet!

## **Add the Sepolia network to your dashboard & wallet**

To deploy a smart contract to Ethereum (more specifically, to the [Sepolia](https://thirdweb.com/sepolia?utm_source=devto&utm_medium=crosspost&utm_campaign=deploy-contract-ethereum) testnet) we first need to add it as a network to the [Dashboard](https://thirdweb.com/dashboard?utm_source=devto&utm_medium=crosspost&utm_campaign=deploy-contract-ethereum).

To do this, click the `Configure Networks` button here:

![Click on Configure Networks to add Sepolia](https://blog.thirdweb.com/content/images/2023/03/Click-on-Configure-Networks-to-add-Sepolia.png)

Search for "Sepolia" and select it:

![Search for Sepolia](https://blog.thirdweb.com/content/images/2023/03/Search-for-Sepolia.png)

It will now auto-fill all the details required. You can upload an icon for the Testnet if you like and use a custom RPC you can use as well.

![Add metadata of Sepolia network](https://blog.thirdweb.com/content/images/2023/03/Add-Sepolia-Testnet-to-the-dashboard.png)

Click on "Add Network" and voilá! You will now see that Sepolia has been added to the Testnets section of the Your Networks module:

![You can now see Sepolia network added to the list](https://blog.thirdweb.com/content/images/2023/03/Select-Sepolia-network.png)

## Get Sepolia ETH in your wallet

Head over to the [Sepolia Faucet](https://sepoliafaucet.com) here, paste your wallet address and click on "Send me ETH":

![Sepolia faucet](https://blog.thirdweb.com/content/images/2023/03/Request-Sepolia-Faucet-funds.png)

Once you have completed this process, you will have testnet funds in your wallet on Sepolia Testnet, meaning you're now ready to deploy your smart contract!

![Funds on Sepolia Testnet](https://blog.thirdweb.com/content/images/2023/03/image-97.png)

## Deploying the contract

Now that you have your testnet ETH, let's go back to the thirdweb Dashboard where we were building our [**NFT Drop**](https://thirdweb.com/thirdweb.eth/DropERC721?utm_source=devto&utm_medium=crosspost&utm_campaign=deploy-contract-ethereum) contract.

We have already filled out the metadata so click on "Deploy Now" after selecting the chain. It will prompt you to two transactions, you have to approve them.

![Confirm the transaction to deploy the contract](https://blog.thirdweb.com/content/images/2023/03/Deploy-contract-to-sepolia-testnet.png)

And you're done! You have just deployed to the Sepolia Testnet.

## **Calling Smart Contract Functions**

Let's see how we can use the smart contract by calling some functions on it, such as minting an NFT into our collection!

From the `Explorer` tab, you can view all of the available functions on your smart contract and execute them directly from your connected wallet:

![Calling the Read name function from Explorer](https://blog.thirdweb.com/content/images/2023/03/contract-explorer-2.png)

### Setting Up Our NFT Collection

In our example, we created an NFT drop smart contract, so we'll quickly set it up and mint our first NFT by performing the following steps:

1. [Lazy mint](https://portal.thirdweb.com/pre-built-contracts/nft-drop?utm_source=devto&utm_medium=crosspost&utm_campaign=deploy-contract-ethereum#lazy-minting-nfts) a batch of NFTs.
2. Configuring our [claim conditions](https://portal.thirdweb.com/pre-built-contracts/nft-drop?utm_source=devto&utm_medium=crosspost&utm_campaign=deploy-contract-ethereum#setting-claim-phases).
3. Mint an NFT from the drop!

We won't go into too much detail about this process in this guide, check out our other [NFT Drop Guides](https://blog.thirdweb.com/tag/nft-drop/?utm_source=devto&utm_medium=crosspost&utm_campaign=deploy-contract-ethereum) for more information!

Once we've set up our NFTs, we can click the `Claim` button in the `NFTs` tab to mint our first NFT, and voilà! We just minted an NFT on the Sepolia testnet!

![Claimed NFT](https://blog.thirdweb.com/content/images/2023/03/image-94.png)

### What's Next?

Now that you've deployed your smart contract, you can use our [SDK](https://portal.thirdweb.com/sdk?utm_source=devto&utm_medium=crosspost&utm_campaign=deploy-contract-ethereum) to build a web3 application! Where users can connect their wallets and interact with the functions of your smart contracts. Learn more from our guide below:

## **Wrapping up**

In this guide, you've learned how to create a simple NFT Drop smart contract, deploy it to the [Sepolia](https://thirdweb.com/sepolia?utm_source=devto&utm_medium=crosspost&utm_campaign=deploy-contract-ethereum) testnet, and mint an NFT on the smart contract. We hope it was helpful!

If you have any questions jump into the [**thirdweb Discord**](https://discord.gg/thirdweb) and join 32,000+ other builders! And if you're looking to build on Ethereum and want to learn more about how to do that with thirdweb's tools, [**reach out**](https://thirdweb.typeform.com/to/ZV3gUhiP) to the team directly. Please let us know if you have any feature requests or guide requests [here](https://feedback.thirdweb.com/).