Skip to main content

Documentation Index

Fetch the complete documentation index at: https://seilabs-docs-evm-reference-and-sei-js-examples.mintlify.app/llms.txt

Use this file to discover all available pages before exploring further.

EVM Compatibility

This page documents Sei’s EVM feature support. Each row shows whether a capability works as on standard Ethereum, behaves differently in a documented way, or is not available on Sei. Standard EVM tooling — viem, wagmi, ethers, Foundry, Hardhat — works on Sei for all rows marked Supported. Where Sei differs from Ethereum, the difference is noted so you can account for it in your application.

Status Legend

StatusMeaning
SupportedWorks on Sei EVM with standard Ethereum behavior.
Supported — differencesAvailable on Sei, but intentionally differs from Ethereum. See the notes.
Sei extensionA Sei-specific capability with no standard Ethereum equivalent.
Not supportedNot available on Sei EVM.

Transactions

FeatureSei statusNotes
Legacy transactions (type 0)Supported — differencesMinimum gas price is set by Sei governance parameters, not a fixed floor. See Gas and Fees.
EIP-2930 access list transactions (type 1)Supported
EIP-1559 fee market transactions (type 2)Supported — differencesNo base-fee burning. Fees go to validators rather than being burned. See Gas and Fees.
EIP-4844 blob transactions (type 3)Not supportedSei runs Pectra without blob transactions. See Transaction Types.
EIP-7702 set-code transactions (type 4)Supported

Account and State

FeatureSei statusNotes
eth_getBalanceSupported
eth_getTransactionCount (nonce)Supported
eth_getCodeSupported
eth_getStorageAtSupported — differencesSSTORE cost is governance-adjustable; do not hard-code gas assumptions. See Gas and Fees.
eth_getProofSupported — differencesReturns IAVL proof data rather than Ethereum Merkle Patricia Trie proofs. Proof verification logic must account for this. See State Proofs.

Blocks and Finality

FeatureSei statusNotes
eth_getBlockByHash, eth_getBlockByNumberSupported
eth_blockNumberSupported
Finality tags (latest, safe, finalized)Supported — differencesSei has instant finality. All three tags refer to the same commitment level. See Finality.
Pending block stateSupported — differencesEthereum-style pending state visibility is not guaranteed. Do not rely on pending transaction ordering. See Finality.

Logs, Filters, and Subscriptions

FeatureSei statusNotes
eth_getLogsSupported
Filter lifecycle (eth_newFilter, eth_getFilterChanges, eth_getFilterLogs, eth_uninstallFilter)Supported
WebSocket subscriptions (eth_subscribe)SupportedSee WebSocket Connections.

Execution and Simulation

FeatureSei statusNotes
eth_callSupported
eth_estimateGasSupported
debug_traceTransactionSupported
Block-level tracingSupported

Signing

FeatureSei statusNotes
EIP-155 replay protectionSupported
Personal sign (personal_sign, eth_sign)SupportedDepends on the connected wallet exposing the method. See Signing.
EIP-712 typed data signing (eth_signTypedData_v4)SupportedDepends on the connected wallet exposing the method. See Signing.
EIP-1271 contract signature validationSupportedSee Signing.

Token Standards

FeatureSei statusNotes
ERC-20Supported
ERC-721Supported
ERC-1155Supported

Account Abstraction

FeatureSei statusNotes
ERC-4337SupportedRequires a compatible bundler. Sei EVM is ERC-4337 compatible.

Name Services

FeatureSei statusNotes
ENSNot supportedSei does not run Ethereum mainnet ENS. Application-level name services can be deployed as contracts.

Sei Extensions

These capabilities are Sei-specific and have no standard Ethereum equivalent. They are exposed through @sei-js packages layered on top of standard EVM tooling.
FeatureNotes
Sei precompiles (staking, governance, distribution, oracle, P256, JSON, CosmWasm bridge)EVM contracts at deterministic addresses. ABIs and contract addresses are exported from @sei-js/precompiles for use with any standard EVM library.
Pointer contracts (CW20 ↔ ERC-20, CW721 ↔ ERC-721)Bridge between CosmWasm and EVM token standards. Standard ERC interfaces work against pointer contracts.
Native address association (EVM ↔ Cosmos address)Links an EVM address and a Cosmos address for the same account. Required before some Sei-native flows.
TokenFactory native token creationCreate native Sei tokens that are usable across EVM and CosmWasm without a wrapper contract.

Unsupported RPC Methods

The following JSON-RPC methods are either not available on Sei or will return errors:

Blob / EIP-4844

MethodReason
eth_blobBaseFeeSei runs Pectra without blob transaction support. This method does not exist on Sei.
engine_getBlobsV1Blob data availability endpoints are not supported.

Pending State

MethodBehavior on Sei
eth_getBlockByNumber("pending")Returns null or the latest committed block. Sei does not maintain an Ethereum-style pending block.
eth_getTransactionCount(address, "pending")Returns the same value as "latest". Pending nonce does not differ from confirmed nonce on Sei.
eth_newPendingTransactionFilterThe filter can be created but will not reliably emit pending transactions. Use eth_newBlockFilter or WebSocket block subscriptions instead.
eth_subscribe("newPendingTransactions")Supported at the RPC level but Sei does not guarantee Ethereum-style pending transaction visibility. Treat results as best-effort.

Proof Verification

MethodBehavior on Sei
eth_getProofReturns IAVL tree proofs, not Ethereum Merkle Patricia Trie proofs. The method itself works, but the proof format is incompatible with standard Ethereum MPT verifiers. See State Proofs.

Deprecated / Removed Opcodes

MethodReason
eth_accountsReturns an empty array on Sei RPC nodes. Use a wallet library (eth_requestAccounts) to get accounts from the connected user’s wallet instead.