Let say that hypothetically I issue a contract on the testnet that doesn't need to receive any ether. Kind of an ERC-20, but in this case users won't exchange real ethers for tokens. These tokens would be arbitrarily provided by the contract owner to each user. Having said that, users will also be able to transfer those tokens between them, paying the necessary gas with faucet ethers.

Under such scenario, why should I use the real network, and use real ethers if testnet can basically solve my needs?

What am I missing?

1 Answer 1


Some reasons for using the main network in what is probably descending order of disruptiveness/inconvenience:

  • The test network can be shut down/restarted at any time (like Ropsten). This means token balances are cleared and/or unavailable.
  • The test networks are particularly susceptible to censorship and undoing transactions due to their lack of hashing power; a user with a few GPUs should have little trouble double-spending tokens.
  • Stable upgrade path.
  • The test networks are running bleeding-edge code and may have bugs in them.
  • Potentially additional confusion for users, especially if they use the main net for other things.
  • You lose out on interoperability with other contracts (which you may not care about, but means some people need to run multiple blockchains).

If anything, a private blockchain using something like proof of authority may be more suitable for your needs.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.