Skip to main content

Launching a new ERC‑20 token

This guide will walk you through the required steps to launch a new ERC‑20 token directly onto Immutable zkEVM.

If you have already launched your project’s ERC‑20 token on another blockchain, you will want to check out our guide on Using your existing ERC‑20 token on zkEVM instead.
in-game currency guidein-game currency guide
💡Who is this for?
Game developers who want to create, deploy and mint their own ERC‑20 tokens directly on Immutable zkEVM.

Immutable zkEVM supports smart contracts that run on the Ethereum Virtual Machine (EVM) including ERC‑20 tokens. Because our blockchain uses the same underlying technology as Ethereum, deploying an ERC‑20 token on Immutable zkEVM is done in the same way as any other EVM blockchain.

Why launch a custom ERC-20 token?

Games may choose to launch a custom ERC-20 token for several reasons:

  • In-Game Economy: Custom ERC-20 tokens can serve as the primary currency within the game, enabling players to buy, sell, and trade in-game assets.
  • Generate Revenue: By launching a custom ERC-20 token, game developers can create a new revenue stream. Tokens can be sold to early investors or community members to raise funds required for game development and other operational costs.
  • Crowdfunding: Custom tokens can be used in crowdfunding campaigns, allowing supporters to contribute to the project in exchange for tokens that may have future utility or value.
  • Enhanced Player Engagement: By using a unique token, game developers can create more immersive and engaging experiences for players. Tokens can be earned through gameplay, providing additional incentives for players to stay active.
  • Economy Control: Developers have full control over the tokenomics, allowing them to adjust supply, distribution, and other economic factors to maintain a balanced in-game economy.

The recommended approach to deploying ERC20 tokens is by using the Immutable Hub.

Deploying custom contracts on Immutable zkEVM


Deploying on Immutable zkEVM Testnet is unrestricted, anyone can deploy any smart contract. This is a good place to deploy your token and test it without risking any real tokens or digital assets.


Deploying custom contracts on Immutable zkEVM Mainnet is restricted during the early access phase of the network.

You will need to apply and be added to the deployer allow list before you can deploy custom contracts to mainnet.

You can apply through the Immutable Hub by logging in, then in the help menu in the bottom left click on "Deploy Custom Contracts on Mainnet" and fill in the form.

Allowlist Help Menu

When you fill out the form, you will be asked for your deployer address. This is the only Immutable zkEVM wallet address you can use to deploy contracts to mainnet once it's approved, so be sure to keep the keys to that wallet secure and backed up.

Once your deployer address is approved, you will need to manually write and deploy your ERC‑20 contract using conventional smart contract development tools such as Hardhat. You can find more information in the Deploy smart contracts guide under the "Deploy contract by code" subsection.

We strongly recommend you utilise our Contract Presets when developing your ERC‑20 tokens. These contracts have been audited and implement all the mandatory features required to deploy on Immutable zkEVM mainnet.

Related content

IMX Whitepaper IMX Tokenomics Block Explorer Careers Contact Us