Short for ‘test network’, a testnet is a test environment for developers to trial network upgrades, concepts, integrations and more. Distinct from a mainnet—short for ‘main network’—a testnet has no economic value.
Why Are Testnets Useful?
Developers use testnets to test their apps. For non-developers, the main benefits of testnets are as follows:
- Educational tool and risk-free practice: In the crypto space, often the best way to learn is to ‘do’. However, this can be costly in the event of an error on mainnet. Testnet environments are perfect for learning as you can practice with valueless cryptocurrencies. You can get comfortable with performing actions such as sending or swapping cryptocurrencies, or providing liquidity—all in a risk-free setting. (Read ‘Using Testnets as a Learning Tool’ for more.)
- Opportunities for airdrops: Projects often reward users for testnet feedback, and can also be a way to become eligible for future airdrops should the project issue a token. By connecting your wallet and performing specific actions, you’re logging your Ethereum address (‘0x’ or ‘ETH’ address) with the testnet app’s smart contracts. As blockchains like Ethereum are public, the developers can track which addresses have connected to the app and performed certain actions. Projects will “take snapshots” of the smart contracts at certain block heights to get a list of the app’s historical user base. Becoming eligible for airdrops is often as simple as logging your ETH address on the platform.
Examples of Testnets
|Blockchain (or sidechain)||Testnet(s)|
|Ethereum||Ropsten, Kovan, Rinkeby, Goerli|
|Binance Smart Chain||Binance Smart Chain testnet|
|Energy Web Chain||Volta|
|Huobi Eco Chain||Huobi Eco Chain testnet|
Testnets can also be categorised as ‘command line interface’ (CLI) or ‘graphical user interface’ (GUI) facing. The most complex and early-stage testnets are open-source codebases that you can interact with through a web browser. CLI testing is often for back-end code. Alternatively, non-coding users can interact with apps using a normal GUI, and typically test both the back-end functionality and front-end visual and practical display of the app.
Getting Testnet Tokens From Faucets
When using a testnet, valueless cryptocurrency is distributed to testers to use as ‘play’ money to transact and try products or apps. Testnet tokens are obtainable through faucets. You’ll typically need to get test versions of the blockchain’s native token (e.g. ETH) and the app’s native token. (Note: to mint testnet funds you’ll often need ETH).
Examples of testnet faucets: Kovan, Rinkeby, Ropsten, Goerli, Chainlink, Binance Smart Chain, Polygon, Terra, Aave v1, Huobi Eco Chain, Hop Exchange
By default, MetaMask is connected to Ethereum’s 4 testnets. For non-Ethereum testnets, you must first add a custom remote procedure call (RPC). To connect, input the required information such as network name, new RPC URL and Chain ID. Chainlist is a list to help you connect your wallets with EVM-compatible blockchains and testnets.
Below are links to 2 member-only walkthroughs recorded by research analyst Nathan Gurr.
Risks & Tips
- Testnet tokens are valueless. Be careful not to mix up your different ETH balances.
- Ethereum addresses and private keys that work on Ethereum, work on each testnet so be extremely careful not to send ETH or tokens on the Ethereum mainnet to a testnet address. You’ll lose your assets if you do. Same goes for other blockchains or testnet funds.
- Use a dedicated address or account for testnets, similar to airdrops and to avoid sending real ETH to a testnet. To mitigate the risk of being scammed, vet the project that’s running the testnet.
- When connecting to a custom network, verify that the details are from a trusted source.