telos docs
Developing & Deploying Smart Contracts for tEVM
How to develop and deploy smart contracts on the Telos EVM.
This section is aimed at jumpstarting new Telos EVM (tEVM) developers. If you are totally new to developing on an EVM, we recommend reading the official Ethereum docs to get started or you can navigate to the external developer documents.
Telos makes developing and deploying to tEVM very easy for developers transitioning from other EVMs to the tEVM. All your favorite tools for developing and deploying smart contracts for Ethereum-based smart contracts on Solidity and Vyper are compatible with tEVM. This includes Hardhat, Remix, and Truffle.

Telos mainnet and testnet development

To deploy your smart contract on the tEVM, simply configure the correct network settings when you are ready to deploy. The table below provides the necessary information for the Telos EVM mainnet and testnet's respectively.
Chain ID
Websocket support is coming soon!

Example: Contract deployment for Remix

This example demonstrates how to deploy a simple Solidity contract on the Telos EVM testnet using Remix.
  • Add the Telos EVM network as a custom RPC network in Metamask.
  • Open Remix. An example project with the following structure will be created for you. (We will only be working with the 1_Storage.sol contract.)
Choose Smart contract example
  • Compile the 1_Storage.sol contract. Click on the 1_Storage.sol contract to open it in the editor. Navigate to the Solidity compiler tab and click on the "Compile 1_Storage.sol" button.
Compile smart contract
  • Deploy the compiled contract. Navigate to the "Deploy & Run Transactions" tab and change the environment to "Injected Web3".
Deploy to tEVM using Metamask
Make sure that you have selected the Telos EVM testnet in your Metamask and press the "Deploy" button.
A page refresh might be required after enabling Metamask in order to select the "Injected Web3" option. A more in-depth description of how to deploy smart contracts using Remix can be found here.

Tutorials (deploy using Hardhat and Truffle)

For a guided tutorial on compiling and deploying your smart contract to tEVM using Hardhart and Truffle, follow the tutorials below:


OpenZeppelin provides contracts which helps you minimize risk by using battle-tested libraries of smart contracts for Ethereum and other blockchains. It includes the most used implementations of ERC standards. You can reduce the risk of vulnerabilities in your applications by using standard, tested and community-reviewed code.
Follow the link to get started using OpenZeppelin code in your smart contacts.
The next section will help you to verify your smart contact code using Sourcify for Teloscan.