๐Ÿงฐ UtlKit

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.

๐Ÿ“Š Data Summary (auto-filled)

Tool: ABI Encoder/Decoder ยท /tools/abi-encoder/

mode: encode

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. 1

    Select encode or decode

    Choose Encode (function โ†’ hex) or Decode (hex โ†’ parameters) mode.

  2. 2

    Enter function details

    For encoding: input function signature and parameter values. For decoding: paste hex data and the function ABI.

  3. 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.