ERC-777
An advanced token standard improving on ERC-20 with operator concepts and better transfer hooks.
Last Updated
2026-03-19
Related Concepts
What is ERC-777?
ERC-777 is an advanced Ethereum token standard designed to be more flexible and safer than the original ERC-20. It introduces "hooks" that allow smart contracts to react automatically when they receive tokens, simplifying complex transactions.
How does ERC-777 work?
- It uses a
send()function instead oftransfer(), which can include extra data for the recipient. - It introduces "Hooks" (tokensReceived and tokensToSend) that are triggered during a
transfer. - These hooks allow a recipient contract to reject tokens or perform an action (like buying an item) in a single step.
- It features "Operators," which are addresses authorized to move tokens on behalf of a user without needing a separate
approvetransaction. ERC-777is backward-compatible withERC-20.
Why does ERC-777 matter?
ERC-777 aims to fix common ERC-20 issues, such as tokens being permanently "stuck" when sent to a contract that wasn't designed to handle them. However, its use of hooks introduced new security risks, specifically "reentrancy" vulnerabilities, which have limited its widespread adoption compared to ERC-20.
Key features of ERC-777
- Reactive hooks for incoming tokens
- Operator-based permissioning
- Backward-compatible with
ERC-20 - Avoids "stuck tokens" in contracts
- More complex and requires careful security auditing
Examples of ERC-777
The LUX token used ERC-777 to allow for more complex transaction logic. While not as common as ERC-20, it is used in niche DeFi applications where multi-step transactions need to be compressed into a single "send" operation.
