lyudik.rofd.io
Contact me

Growth Β· 2 min read

"Transaction Failed" β€” The Most Useless Error in Crypto

πŸ” "Transaction Failed" β€” The Most Useless Error in Crypto
"Execution reverted: ERC20: transfer amount exceeds balance"
To a Solidity developer, this is diagnostic gold. To your user, it's incomprehensible garbage that makes them blame your product for blockchain mechanics they never signed up to understand.
The error propagation problem is architectural. Smart contract reverts return raw reason strings defined by the developer. Frontend frameworks like ethers.js and web3.js surface these strings with minimal transformation. The gap between technical accuracy and user comprehension is where trust dies.
Analyze the error taxonomy from real production data:
The OpenZeppelin contracts repository shows 47 distinct revert reasons across standard implementations. Each maps to a specific user-actionable scenario. "ERC20: insufficient allowance" means the approval transaction failed or was never executed. "ERC721: caller is not token owner nor approved" means the user is trying to transfer an NFT they don't control.
The engineering solution requires a translation layer:
β†’ Build a revert reason β†’ human message β†’ recovery action mapping. This pattern is documented in the Uniswap error handling codebase and referenced in multiple Ethereum StackExchange discussions.
β†’ Extract and parse revert data using eth_call simulation before submission β€” this catches 90%+ of failures before they hit the chain and waste gas.
β†’ Provide one-click recovery paths: "Your approval expired. [Approve Again]" with pre-filled parameters.
Real-world validation: MayWap Protocol's error handler maps 47 common revert codes to plain-language explanations with direct action buttons. Support ticket volume for "transaction failed" issues dropped 60% within two months of deployment.
The dApp that explains its failures earns more trust than the one that hides behind "something went wrong."
β†’ MayWap | Building error states that actually help