What Is EVM?
The Ethereum Virtual Machine (EVM) is the execution environment that runs smart contract code on Ethereum and keeps every node in agreement on the result. EVM-compatible chains can use the same wallets and apps.
On this page 6
The Ethereum Virtual Machine (EVM) is the shared execution environment that runs smart contract code on Ethereum and defines exactly how that code is processed. Thousands of computers execute each transaction under the same EVM rules and arrive at the same result. Today the EVM is the common language not just of Ethereum but of dozens of other blockchains.
How does the EVM work?
Think of the EVM as a single computer shared by the whole world. That computer has a “state”: how much ETH sits at each address, the code of every contract and the data each contract stores. Every transaction updates that state according to fixed rules.
- A developer writes a contract in a language such as Solidity or Vyper.
- The code is compiled into bytecode, the low-level language the EVM understands, and deployed on-chain.
- When someone calls the contract, every node executes the bytecode step by step using basic instructions called opcodes.
- The outcome, meaning new balances and contract data, is written to the network’s shared state.
“Virtual machine” here doesn’t mean software you install on your laptop. The EVM rules are built into every Ethereum client that runs a node.
The EVM and gas
Every EVM instruction has a computational cost measured in gas. A simple ETH transfer uses 21,000 gas, while a complex DeFi transaction can use many times that. Gas serves two purposes: it makes users pay for the network resources they consume, and it stops runaway code such as an infinite loop from freezing the network, since execution halts when a transaction’s gas limit runs out. Our gas fee guide explains how the final fee is calculated.
What does EVM-compatible mean?
EVM-compatible chains support the same contract code, address format and transaction structure as Ethereum. BNB Smart Chain, Polygon PoS and Avalanche C-Chain belong to this group, as do layer-2 networks such as Arbitrum, Optimism and Base. Developers can port apps with minimal changes, and users can reach all of them from a single wallet like MetaMask.
Compatibility does not mean these chains share Ethereum’s security model. Validator counts, who holds upgrade keys, fees and time to finality can differ dramatically. Networks such as Solana and Bitcoin don’t use the EVM at all and have their own address formats and execution environments.
Same address, different balance: what users should watch
On EVM chains, one private key produces the same address on every network, which is why your wallet shows the same “0x…” address for Ethereum, Arbitrum and BNB Smart Chain. The balances, however, are separate: ETH on Ethereum can’t be spent on Arbitrum. What tells the networks apart is a network identifier called the chain ID.
- Check that the right network is selected in your wallet before sending.
- Make sure the receiving exchange supports that specific network; an accepted address format is not enough.
- You’ll need each network’s own coin to pay fees, such as ETH on Ethereum or BNB on BNB Smart Chain.
Our guide on choosing the right network covers this in detail.
Frequently asked questions
How do I move tokens between EVM chains?
Even with the same address, moving a token from one chain to another requires a bridge or an exchange that supports both networks.
Are there alternatives to the EVM?
Yes. Solana uses its own runtime, and some newer chains use virtual machines based on WebAssembly (Wasm).