What are EVM Compatible Blockchains? A Guide to the Ethereum Virtual Machine

What are EVM Compatible Blockchains? A Guide to the Ethereum Virtual Machine

In this blog post, we’re going to demystify everything you need to know about the EVM (Ethereum Virtual Machine) and EVM-compatible blockchains. We’ll cover what the EVM is, what it means for a blockchain to be EVM compatible, and give a list of EVM-compatible blockchains for you to get started with. Let’s dive in.

What is EVM (Ethereum Virtual Machine)?

EVM (or the ‘Ethereum Virtual Machine’) is a software environment that executes smart contracts on the Ethereum blockchain. It is the backbone of the Ethereum network, responsible for executing all operations and transactions on the blockchain.

The EVM operates on a unique set of instructions which allow for the creation and execution of smart contracts. The EVM is also responsible for managing the state of the Ethereum blockchain, including the storage of data, the processing of transactions, and the calculation of gas fees.

How does EVM work?

The EVM is designed to be a Turing-complete virtual machine, which means it is capable of executing any algorithm or program. This essentially gives Ethereum its ‘programmability’ — allowing developers to write complex smart contracts and build dApps on top of the Ethereum network.

Diagram of the EVM (Ethereum Virtual Machine) via Ethereum Foundation

A powerful feature of the EVM is its ability to execute code ‘deterministically,’ which means that any given smart contract will always produce the same output for the same input, regardless of where it is executed or who is executing it. This determinism is essential for the consensus mechanism of the Ethereum network, which requires all nodes to agree on the state of the network. Deterministic execution also ensures that smart contracts are executed exactly as written without interference from external sources.

The EVM is also designed to be isolated from the rest of the computer's operating system, ensuring security and protecting the network from attacks. Smart contracts are executed within the EVM environment, which provides a secure sandbox for the code to run in. This isolation means that the EVM can only interact with the Ethereum network, preventing malicious actors from accessing the underlying system or compromising the security of the network.

So we’ve defined the EVM and explained how it works — but what does it mean for a blockchain to be EVM-compatible? And why is that important?

What does ‘EVM compatibility’ mean?

EVM compatibility refers to the ability for a blockchain to run the EVM and execute Ethereum smart contracts. This means that developers can write & deploy the same smart contracts across multiple EVM blockchains, without needing to make significant changes to their code. These smart contracts can then interact with other EVM-compatible blockchains through the EVM, allowing anyone to create multi-chain dApps.

Although they are not synonymous, one of the largest subsets of EVM-compatible blockchains are Layer 2 networks — typically built for scalability & efficiency, while still being able to leverage the Ethereum ecosystem’s tools, technical upgrades, and user base. Layer 2 solutions, such as optimistic rollups & zk-rollups, are built on top of the Ethereum mainnet — but they offer reduced transaction fees and increased blockchain throughput by moving computation off-chain, only committing final state changes back to the mainnet.

Benefits of EVM compatible blockchains

The EVM comes with a number of benefits for developers writing smart contracts & building dApps on EVM-compatible blockchains:

  • Portability & interoperability: Smart contracts and dApps developed for one EVM-compatible chain (like Ethereum) can be easily migrated to other EVM-compatible chains (like Polygon) with minimal code modifications.
  • Lower costs: The EVM provides a standardized environment to write smart contracts and develop dApps — allowing developers to write code once and deploy it on any EVM-compatible chain, without having to create separate codebases for each chain. Because everything can be written in Solidity — one of the most widely-used programming languages for Ethereum — the learning curve is also much lower across EVM-compatible blockchains.
  • Broader user base & developer ecosystem: dApps built on EVM-compatible blockchains are also built on top of the Ethereum network by nature — meaning that they have access to its much broader user base of 100M+ unique wallets, making mass adoption easier for web3 applications built on EVM-compatible networks.

Which blockchains are EVM compatible?

There are many EVM-compatible blockchains that developers can deploy smart contracts on today, each with its own unique features. Some of the most popular examples, in order of TVL (total value locked), include:

  1. Ethereum
  2. BSC
  3. Arbitrum
  4. Polygon
  5. Avalanche
  6. Optimism
  7. Fantom
  8. Cronos
  9. Klaytn
  10. Canto

You can find all of these, along with resources to get started (such as RPCs, block explorers, and faucets) on thirdweb’s Chainlist which features 700+ EVM-compatible blockchains:

Chainlist | RPCs, Block Explorers, Faucets | thirdweb
A list of EVM networks with RPCs, smart contracts, block explorers & faucets. Deploy smart contracts to all EVM chains with thirdweb.

How do I build my dApp on EVM compatible blockchains?

thirdweb has built the first-ever universal web3 framework — adding support for all EVM-compatible networks & going from supporting 7 blockchains to 700+. Any web3 developer can now create new smart contracts — or import their own existing ones — to build dApps on any EVM-compatible blockchain, using thirdweb’s best-in-class development kit which includes:

  • SDKs for React, JavaScript, Unity, Python & Go
  • A decentralized storage service that uploads & pins files to IPFS for you
  • Plug-and-play UI components for frontend applications
  • An intuitive dashboard to manage all your contracts in one place
  • … and more

With thirdweb, developers can build, launch, and manage all of their smart contracts & web3 apps in one place.

Concluding thoughts: The future is multi-chain

In conclusion, EVM-compatible blockchains are extremely beneficial in that they can optimize for scalability and efficiency — while also being built on top of the Ethereum network and leveraging everything it has to offer.

Because the EVM provides a standardized environment for dApps, any application built on an EVM-compatible blockchain is portable and interoperable with other EVM networks — enabling access to the broader Ethereum ecosystem for all dApps built on those blockchains.

We hope this blog post has helped you better understand what EVM (Ethereum Virtual Machine) is, why EVM compatibility unlocks powerful functionality for blockchains, and which EVM-compatible networks you can build on top of.

And if you want to build web3 apps on any EVM-compatible blockchain, get started with thirdweb — it's free!