> ## Documentation Index
> Fetch the complete documentation index at: https://docs.trady.xyz/llms.txt
> Use this file to discover all available pages before exploring further.

# Failed Transactions

> Symptom to cause to fix: slippage exceeded, timeouts, insufficient balance, can't sell, limit order didn't fire.

A failed trade at the wrong moment is the most expensive kind of failure. This page is the decision tree — symptom → cause → fix.

**First, the good news:** a failed/reverted trade did not spend your funds (beyond a minimal network fee, chain-dependent). Your balance is intact; the trade just didn't happen.

## "Slippage exceeded" / trade reverted

**Cause:** price moved past your slippage cap between quote and execution. The #1 failure on volatile tokens — and it's the protection *working*, refusing a fill worse than you authorized.

**Fix:**

1. Retry — on choppy pools the next attempt often lands.
2. Raise slippage in [Transaction Settings](/trading/transaction-settings) *consciously* (20–30% is realistic in the trenches).
3. Reduce size — your own order might be the price impact.
4. Honest check: if it keeps outrunning 30% slippage, you're chasing. See [the FOMO test](/learn/rug-check-basics).

## Transaction timed out / never confirmed

**Cause:** network congestion — your transaction didn't get processed in time. Common during major launches and meta frenzies.

**Fix:**

1. Check the transaction status in your history before retrying — don't double-buy.
2. Raise the priority fee and retry.
3. If MEV protection is on, private routing can add a beat during congestion — for tiny fast punts consider whether you need it; for size, keep it on and accept the beat.

## "Insufficient balance" (but I have money)

**Causes & fixes:**

* **Balance on the other chain** — buys draw from the USDC balance of the token's chain. Bridge USDC over first: [USDC Balance & Bridge](/portfolio/usdc-balance).
* **Gas reserve** — you need a sliver of the native token for network fees. {/* TODO(team): confirm gas handling / whether Trady abstracts this fully */}
* **Open limit orders reserving balance** — check the Orders tab. {/* TODO(team): confirm whether limit orders reserve funds */}

## "Can't sell" a token

**Causes, in order of likelihood:**

1. **Honeypot** — the token was designed unsellable. Check the Security Audit strip and sell tax on the [token page](/discovery/token-page). If sell tax is 99%, the exit was never real. This money is a tuition payment — [convert it to a rule](/learn/rug-check-basics).
2. **Liquidity gone** — the pool was drained (rug). Nothing to sell into.
3. **Slippage too tight for a collapsing price** — if the token is real but dumping, raise slippage and accept the hit; a bad exit beats no exit in a rug.

## Limit order didn't fire

**Causes:**

* Price gapped through your trigger too fast for on-chain execution (violent dumps) — the order fired but filled at the next executable price, or reverted on slippage.
* Order was already cancelled/expired. {/* TODO(team): confirm expiry rules */}

Check the order's status in the Orders tab for the specific reason. {/* TODO(team): confirm per-order failure reasons are shown */}

## Still stuck?

Grab the transaction hash (click the trade in your history → copy hash) and hit [Contact Support](/troubleshooting/contact-support). The hash lets us see exactly what happened — "my trade failed" without a hash means a round-trip of questions first.
