Solidity Error Decoder
Paste hex revert data from a failed transaction to decode the error message, type, and parameters.
Panic Code Reference
Frequently Asked Questions
What is a Solidity revert data?▼
When a smart contract reverts, it optionally returns error data — a hex-encoded ABI payload. The first 4 bytes are the function selector (keccak256 hash of the error signature). The remaining bytes are ABI-encoded parameters. This tool decodes that hex into a human-readable error message.
What is error(string)?▼
require(condition, 'message') and revert('message') produce a standard Error(string) ABI encoding. The selector is 0x08c379a0. The string is ABI-encoded as an offset + length + data.
What is Panic?▼
Solidity 0.8+ emits Panic(uint256) for programming errors: division by zero, array out of bounds, integer overflow, etc. The selector is 0x4e487b71. The uint256 code identifies the error type (0x11 = arithmetic overflow, 0x12 = divide by zero, 0x21 = enum conversion, 0x32 = array bounds).
What are custom errors?▼
Solidity 0.8.4+ introduced custom errors: error InsufficientBalance(address account, uint256 balance). They're more gas-efficient than string errors and can carry typed parameters. The selector is the first 4 bytes of keccak256('InsufficientBalance(address,uint256)').
Related Products
on GumroadDeveloper Productivity Bundle
Stop rebuilding the same setup every project. 51 VSCode snippets, 40 Git aliases, 5 Docker Compose stacks, 5 GitHub Actions workflows, 5 README templates, and a dotfiles kit. Set up a professional dev environment in under an hour.
Buy on Gumroad →AI Prompt Engineering Toolkit
58 structured prompt templates for Claude, ChatGPT, and Gemini — organized by use case. Code Review, Debugging, Documentation, Architecture, and 10 model-specific tips. Stop writing prompts from scratch.
Buy on Gumroad →Developer Cheat Sheet Bundle
10 print-ready cheat sheets for the tools developers use every day: Git, Docker, Linux CLI, SQL, Regex, HTTP Status codes, VS Code shortcuts, Bash scripting, jq/JSON, and Markdown.
Buy on Gumroad →You Might Also Need
EVM Calldata Decoder
Decode Ethereum transaction calldata from raw hex. Parse function selectors, decode ABI-encoded arguments for all Solidity types, and analyze transaction input data.
Open free tool →
Smart Contract Gas Estimator
Estimate Ethereum smart contract gas costs in USD. Compare operation costs across mainnet, Arbitrum, Optimism, and Base L2 networks.
Open free tool →
ABI Encoder/Decoder
Encode and decode Ethereum ABI data. Supports all Solidity types: uint, address, bool, bytes, string, arrays, tuples. Includes abi.encode and encodePacked.
Open free tool →
More Free Tools
Enjoying this tool? Get more like it.
Weekly developer tool guides, productivity playbooks & AI tricks. Free. No spam.
Unlock AI-Powered Dev Tools
- ⚡ AI Code Review, Doc Generator & SQL Builder
- ⚡ All premium templates & early access
- ⚡ Member discounts on Gumroad products
$9/mo after trial · Cancel anytime
Want the full toolkit?
Get DevPlaybook Pro
Every template, guide, boilerplate, and automation script in one bundle. 13 premium products — grab them all at once and save big.
MIT licensed · Instant download · No subscription
See what's included → Browse all deals →