ABI Encoder/Decoder
Encode and decode Ethereum ABI function signatures with function selectors
Supported Types
uint8/16/32/64/128/256, int8/16/32/64/128/256, address, bool, bytes32, string (dynamic)
Report a Problem
Found a bug or have a suggestion? Help us improve this tool.
What is this tool?
The ABI Encoder/Decoder helps Ethereum developers encode and decode smart contract function calls using the ABI (Application Binary Interface) standard. It supports encoding function signatures with parameters into hex data and decoding hex data back into human-readable parameters, making smart contract interaction and debugging easier.
How to use
- 1
Select encode or decode
Choose Encode (function โ hex) or Decode (hex โ parameters) mode.
- 2
Enter function details
For encoding: input function signature and parameter values. For decoding: paste hex data and the function ABI.
- 3
View result
See the function selector, encoded hex data, or decoded parameter values with type information.
Frequently Asked Questions
What is an ABI selector?
A function selector is the first 4 bytes of the Keccak-256 hash of the function signature. It uniquely identifies which function to call on the smart contract.
What Solidity types are supported?
Common types include uint256, int256, address, bool, string, bytes, and arrays. Fixed-size types like uint8, bytes32 are also supported. Complex nested types may require ABI encoding libraries.
How is this different from web3.eth.abi.encode?
This tool provides a quick, browser-based encoder without needing a full development environment. For production use, use web3.js, ethers.js, or the official @ethereumjs/abi library.