How to Deploy a Smart Contract: Local Testing to Mainnet
Table of Contents
Table of Contents
Share

Deploy a smart contract in 2025: step-by-step guide covering Foundry, Hardhat, Sepolia testnet, and mainnet verification. Audit your config before going live.
Frequently Asked Questions
- `forge create` is a single-contract deployment command suited for quick or one-off deployments. `forge script` uses Solidity deployment scripts with the `vm.startBroadcast()` cheatcode, supports multi-contract deployments, and produces a broadcast log for replay or CI integration. For production workflows, `forge script` is preferred because it provides deterministic, auditable deployment artifacts.
- Sepolia is the recommended primary testnet for smart contract and dApp development in 2025. Goerli was deprecated in April 2024 and is no longer maintained. Holesky operates alongside Sepolia but targets infrastructure and validator testing rather than application development. All new projects should target Sepolia for pre-mainnet validation.
- Add the `--verify` flag and the `--etherscan-api-key` flag to your `forge script` or `forge create` command. You must also configure the `etherscan` section of `foundry.toml` with the target network name and the API endpoint URL. Foundry submits the flattened source code and constructor arguments to the block explorer's verification API automatically after broadcast.
Don't Miss What's Next
Subscribe to newsletter
smart contract deployment
Foundry deploy
Hardhat deploy
forge script
Sepolia testnet
Get in Touch
Our team will get back to you within 24 hours.













