How to Migrate from Ropsten to Goerli
With the deprecation of the Ropsten and Rinkeby testnet, developers should migrate their dApps off testnets that are no longer supported after the Ethereum merge, where Ethereum's Proof-of-Work blockchain merged with the Proof-of-Stake Beacon Chain.
Testnets are important web3 developer tools for testing the smart contracts used in decentralized applications and the configurations of nodes running various types of client software. With the Ethereum Merge timeline underway, the recommended testnets engineers should use are changing.
While you can use the Goerli testnet, we caution against it as the Ethereum Foundation has announced that Goerli will soon be deprecated. Therefore, we recommend using Sepolia testnet as Alchemy has full Sepolia support and a free Sepolia faucet.
What testnets are being deprecated?
The testnets that have been deprecated include Kovan, Ropsten, Kintsugi, and Rinkeby. The Prater testnet was merged with Goerli. The Sepolia testnet continues to be maintained after the merge so client developers can continue to test their nodes.
Alchemy supported the Ropsten and Kovan testnets until July 1st, 2022. These testnets were deprecated by the Ethereum Foundation and the larger Ethereum community. Kovan was deprecated last year, whereas the Ropsten testnet completed its merge on June 8th, 2022, as a planning exercise ahead of the mainnet merge, which occurred on September 15th, 2022.
What happens after a testnet is deprecated?
After a testnet is deprecated, no additional client updates will be provided by the community, and the software used to run testnet nodes will not actively be maintained. This means these networks will no longer serve as a safe or accurate environment for testing applications.
Once a testnet is on the deprecation path, while some node infrastructure providers might continue running nodes, they will eventually lose parity with the Ethereum Virtual Machine (EVM). In other words, the EVM execution will drift apart from the production EVM execution environment on mainnet.
Because Ropsten and Kovan are no longer actively maintained, they are no longer good places to test smart contracts.
What is the difference between deprecated and sunset?
Deprecation means a testnet will no longer be supported by the community, whereas sunset means the testnet no longer exists (i.e., nodes are no longer running the network). Ropsten and Kovan have been sunsetted and deprecated, which means they no longer exist, and no more upgrades or bug fixes will be deployed to maintain the node client software.
What testnets should I use instead of Ropsten?
The testnets Alchemy and the Ethereum Foundation recommend using are Goerli and Sepolia.
For Ethereum application developers building dApps like DeFi protocols, NFT marketplaces, and web3 projects, Goerli is the recommended testnet. This will be the majority of builders in the web3 space. For engineers building, maintaining, and testing node client software, Sepolia is the recommended testnet to use after the merge because it is a Proof-of-Stake (PoS) testnet that most similarly reflects the current state of the Ethereum mainnet.
Since the Rinkeby testnet was deprecated in late 2022, it is recommended that web3 development teams using Rinkeby redeploy their contracts to the Goerli testnet as well.
Note: The Goerli testnet was deprecated in Q1 2023 and will sunset in Q4 2023, so developers and users should migrate to Sepolia for testing and development purposes.
How to Migrate from Ropsten to Goerli
To migrate from Ropsten to the Goerli testnet create a new app in the Alchemy dashboard for the Ethereum blockchain and the Goerli test network.
Then, copy the Goerli RPC URL for your app. This is what the new Goerli RPC URL will look like: https://eth-goerli.alchemyapi.io/v2/<your api key>
Once you've created a new Goerli RPC URL, get goETH from a Goerli faucet. This fake ETH will be used to pay for transaction on the Goerli testnet.
By signing up for a free Alchemy account you can request 0.02 goETH per day. If you need more goETH, please contact [email protected]. (Note: The Goerli faucet requires a minimum mainnet balance of 0.001 ETH on the wallet address used to prevent bots and abuse).
Now that you have goETH, deploy your smart contract in your new Goerli app with Alchemy the same way you deployed your Ropsten app.
Once your app is deployed on Goerli, you can run tests, fine-tune code, and iterate on your product the same way you did when testing dApps on other testnets.
Things to Consider Before Migrating from Ropsten to Goerli
Before migrating smart contracts from Ropsten to Goerli, dApp developers should consider their:
1. Product roadmap
2. Upcoming deadlines
3. Testing and verification needs
4. Smart contract dependencies
By considering these four areas, engineers can ensure their dApps work as they are expected to work on Goerli, and complete the migration from Ropsten before the deprecated testnet begins to lose parity with Ethereum.