Bitcoin · TRON · EVM · Solana — one lookup box

Why did my transaction fail?

Paste any transaction hash, signature or explorer link. The chain is detected automatically, and you get the failing program or contract, the decoded error, and the actual fix.

· Read-only · No wallet connection · Free
22 Solana errors decoded14 EVM reverts decoded~2s per diagnosis
Under the hood

How the diagnosis works

Three steps, no black box. Everything is derived from the transaction the validator actually recorded.

1

Finds the instruction that broke

A failed transaction carries an instruction index plus an error. We resolve that index to the program that rejected it — System, SPL Token, Jupiter, Raydium, Pump.fun and others.

2

Decodes the error code

Custom codes are program-specific: 6001 means slippage on Jupiter but something else elsewhere. We map the code to the program that raised it, then fall back to reading the program's own log lines.

3

Gives you the fix, not just the code

Each diagnosis ends with concrete next actions — raise slippage, top up SOL, re-create the token account, refresh the quote — plus the raw evidence so you can verify it yourself.

Coverage

One lookup box for nine chains

There is no network switch to get wrong. The input format decides the family, and a hash is probed against every chain in that family in parallel.

Bitcoin txid TRON 3s blocks Ethereum chain id 1 Base 8453 Arbitrum One 42161 OP Mainnet 10 Polygon 137 BNB Chain 56 Solana base58

Browse the EVM revert library →

Reference

The five failures we see most

Each row links to a full write-up with the causes, the fix list and a real log sample.

What you seeWhat it meansQuick fix
Slippage tolerance exceeded
custom program error 0x1771
The price moved past your slippage limit, so the swap was cancelled instead of filling at a worse rate. Raise slippage slightly or shrink the trade.
Not enough SOL to pay the fee
InsufficientFundsForFee
The fee payer has no SOL to pay the network fee plus rent for new accounts. Send ~0.01 SOL to the wallet and retry.
Blockhash not found (expired)
BlockhashNotFound
The transaction waited longer than the ~60–90 second blockhash window and expired. Just retry — the wallet signs a fresh one.
Not enough token balance
custom program error 0x1
The token account holds less than the amount being sent, or two instructions spent the same balance. Refresh balances, retry with a smaller amount.
Token account is frozen
custom program error 0x11
The token issuer froze this account; only they can unfreeze it. Contact the issuer — nobody else can lift it.
Related errors

Browse the error libraries

Every entry explains what the error means, which program or contract raises it, and the concrete steps that make it go away.

Background

What actually happens when a transaction fails

A Solana transaction is atomic: every instruction either succeeds or none of them do. When one program rejects an instruction, the runtime unwinds the whole transaction, but the fee is still charged because validators already did the work of processing and including it. That is why a failed swap costs you a few thousand lamports and leaves your token balances untouched.

The error you see in a wallet is only the top layer. Underneath there are three distinct signals, and they rarely agree:

Tx Doctor reads all three and only then offers an explanation. When it meets a code it has never seen, it says so plainly instead of guessing, and it shows you the raw logs so you can check the conclusion yourself.

Failures that are not really failures

Two very common support questions are not on-chain failures at all. First, an expired blockhash: the transaction was signed but never landed, so it simply does not exist and no funds moved. Second, a wallet-side simulation warning: many interfaces simulate a swap before submitting, and the scary red text you see is a prediction, not a recorded result. If the signature is not found on chain, nothing happened — you can safely try again.

FAQ

Frequently asked questions

Why did my Solana transaction fail?

Most failures fall into four groups: slippage exceeded on a swap, not enough SOL for fees or rent, a token account that is frozen or missing, or an expired blockhash. Paste the signature above to see which program rejected it and what its code means.

Does this tool need my wallet or private key?

No. It only reads public on-chain data with a read-only RPC call. It never asks you to connect a wallet, sign anything, or type a seed phrase. Anything that does is a scam.

Is a failed transaction charged a fee?

Yes. The base fee and any priority fee are still paid, because the transaction was included and executed before it was rolled back. It is usually a fraction of a cent.

What does custom program error 0x1771 mean?

0x1771 is 6001, which on Jupiter means slippage tolerance exceeded — the price moved outside your limit and the router cancelled the swap rather than filling it at a worse price.

Does this work for Ethereum, Base, Bitcoin and TRON?

Yes. A 0x hash is probed against Ethereum, Base, Arbitrum One, OP Mainnet, Polygon and BNB Chain in parallel and decoded on the chain that actually ran it. A 64-character hash is checked against Bitcoin and TRON, and a base58 string goes to Solana.

The transaction is not found — what now?

Either it was submitted seconds ago, it expired before landing, or it happened on a testnet. Wait a moment and retry, or open the hash in a block explorer.