EVM Compatibility
Sonic is fully compatible with the Ethereum Virtual Machine (EVM). Any smart contract that runs on Ethereum can be deployed on Sonic without modification.
Supported Languages Solidity and Vyper
Supported EIPs Sonic supports Ethereum's Cancun hard fork features, including PUSH0 opcode (EIP-3855), with the exception of EIP-4844 data blobs. As of Sonic v2.1, the network also supports the Ethereum Prague/Pectra feature set, including EIP-7702 (set EOA account code), EIP-2537 (BLS12-381 precompile), and EIP-7623 (increased calldata cost). See Pectra Compatibility for the full list of supported Prague-era EIPs.
Note on PUSH0 Opcode: Sonic's EVM supports the PUSH0 opcode. RPC tests that fail with eth_call are often missing the required block parameter (e.g., "latest"). A correctly formatted call like eth_call with params [{"to": null, "data": "0x5f"}, "latest"] will succeed.
Last updated

