Solana Transaction Decoder
Paste a Solana transaction signature to decode it into human-readable instructions, accounts, program calls, and log messages.
What the decoder shows
| Section | Description |
|---|---|
| Status | Success or failure with error code |
| Block / Slot | Slot number and block time |
| Fee | Transaction fee paid (lamports) |
| Signers | Accounts that signed the transaction |
| Instructions | Each instruction with program, accounts, and data |
| Inner instructions | CPI calls made by programs |
| Log messages | Program log output |
| Balance changes | SOL and token balance changes per account |
How to decode a transaction
- Enter the transaction signature (base58 string, 88 characters).
- The tool calls
getTransactionwithmaxSupportedTransactionVersion: 0. - Instructions are parsed and displayed with known program names.
- Balance changes are calculated from pre/post balances.
Decoding programmatically
const tx = await connection.getTransaction(signature, {
maxSupportedTransactionVersion: 0,
});
if (tx) {
console.log("Status:", tx.meta?.err ? "Failed" : "Success");
console.log("Fee:", tx.meta?.fee, "lamports");
console.log("Compute units:", tx.meta?.computeUnitsConsumed);
for (const ix of tx.transaction.message.compiledInstructions) {
const programId = tx.transaction.message.staticAccountKeys[ix.programIdIndex];
console.log("Program:", programId.toBase58());
console.log("Accounts:", ix.accountKeyIndexes.length);
}
}
FAQ
Why does my transaction show “null”? The RPC node may not have the transaction in its history. Standard nodes keep ~2 epochs of data. For older transactions, use an archival RPC endpoint.
What is a “versioned transaction”?
Versioned transactions (v0) use address lookup tables to reference more accounts. The decoder handles both legacy and v0 transactions. Pass maxSupportedTransactionVersion: 0 to your RPC call.
Can I decode failed transactions? Yes. Failed transactions are recorded on-chain with their error information. The decoder shows the failure reason and any logs that were produced before the failure.
Data powered by Supanode RPC
Updated: