ERC/EVM-Compatible Tokenization
Hedera provides full compatibility with ERC token standards through its EVM smart contract support, allowing developers to deploy and interact with ERC-20, ERC-721, and other EVM-based tokens. By integrating ERC standards with Hedera’s scalability, security, and low fees, developers can use familiar EVM tooling while benefiting from Hedera’s performance optimizations.
Why Choose ERC/EVM Tokenization on Hedera?
Deploy ERC-20, ERC-721, and other EVM-based contracts directly on Hedera's EVM implementation.
Use EVM-native tools like Hardhat, Web3.js, ethers.js, and Remix to interact with smart contracts.
Interact with smart contracts via JSON-RPC relay, maintaining a familiar EVM development workflow.
Achieve greater scalability and efficiency, with predictable low-cost transactions and higher throughput than Ethereum.
This makes Hedera an ideal platform for EVM developers looking for high-performance alternatives without modifying their existing smart contracts.
ERC Token Standards on Hedera
Hedera supports multiple ERC token standards, allowing developers to deploy smart contracts that interact seamlessly with EVM dApps and wallets.

These standards enable the deployment of any smart contract, including DeFi applications and tokenization contracts like ERC-20 and ERC-721 tokens. This compatibility alows EVM developers to leverage familiar workflows, tools and, frameworks on Hedera.
Deploying and Interacting with ERC Tokens on Hedera
Using JSON-RPC for EVM Tooling
Hedera provides a JSON-RPC relay, making it easy for developers to interact with smart contracts using EVM-native tools. These tools provide standard EVM developer workflows on Hedera's EVM environment. Developers can use the same JSON-RPC methods as Ethereum, ensuring compatibility with dApps, wallets, and DeFi protocols.

HTS Tokens as ERC-20/ERC-721 via Facade Contracts
Hedera provides facade contracts (per HIP-218 and HIP-376) that allow HTS-native tokens to function as ERC-20 or ERC-721 tokens. With these contracts, developers can leverage Hedera’s efficiency while maintaining EVM compatibility.
A facade contract on Hedera acts as a built-in adapter, allowing Hedera Token Service (HTS) tokens to function seamlessly as standard ERC-20 or ERC-721 tokens within EVM-compatible (EVM) environments. This integration enables developers to interact with HTS tokens using familiar Ethereum interfaces, such as transfer()
, approve()
, and transferFrom()
, without requiring modifications to existing Ethereum wallets or decentralized applications (dApps).
Under the hood, when an EVM-compatible tool interacts with an HTS token's facade contract, the call is delegated to Hedera's native token service. This design ensures that HTS tokens can be managed and transacted using standard Ethereum tooling, providing a seamless developer experience.
In summary, facade contracts provide a bridge between Hedera's native token services and the Ethereum ecosystem, enabling developers to leverage Hedera's performance benefits while maintaining compatibility with established Ethereum standards and tools.
IHRC904AccountFacade.sol
IHRC906AccountFacade.sol
IHRC755ScheduleFacade.sol
Token Associations
When transferring HTS tokens on Hedera, recipients must associate the token with their account before receiving it. Learn more about token auto associations and fees.
Synthetic Events for Tokens Managed by Smart Contracts
Smart contract tokens like ERC-20 and ERC-721 emit events, creating contract logs that developers can query or subscribe to. Hedera Token Service (HTS) tokens do not natively generate such event logs. As a solution to this limitation, Hedera Mirror Nodes generate synthetic event logs, enabling event-driven workflows to mimic the behavior of smart contract tokens for HTS transactions. Synthetic events are generated for transactions such as:
CryptoTransfer
CryptoApproveAllowance
CryptoDeleteAllowance
TokenMint
TokenWipe
TokenBurn
This feature enables developers to effectively monitor HTS token activities as if they were smart contract tokens. An example code implementation demonstrating using ethers.js to listen to synthetic events can be found here.

Video Resource
Last updated
Was this helpful?