[{"data":1,"prerenderedAt":41},["ShallowReactive",2],{"blog-content-en-stuck-tokens-no-gas-token-how-to-fix":3},{"slug":4,"title":5,"excerpt":6,"description":7,"bodyHtml":8,"howToSteps":9,"faqItems":25},"stuck-tokens-no-gas-token-how-to-fix","\"Insufficient Funds for Gas\" but You Have Tokens? How to Fix Stuck Crypto","Your wallet shows tokens but says \"insufficient funds for gas.\" The cause: token balance and gas balance are separate, and every chain wants its own native token. Here is how to fix it fast and avoid it next time.","Wallet says \"insufficient funds for gas\" even though you hold tokens? Token balance and gas balance are separate. Learn the cause and three fast fixes, plus the structural fix.","\u003Cblockquote>You see tokens in your wallet, but a transfer or swap fails with \"insufficient funds for gas.\" This almost always means one thing: \u003Cstrong>your token balance and your gas balance are two different things, and you are out of the chain's native gas token.\u003C\u002Fstrong> Every chain charges fees in its own native coin — ETH on Ethereum and most L2s, SOL on Solana, Toncoin on TON — and holding USDC, a meme coin, or even a bridged asset does not pay for the transaction. The fix is to get a small amount of that native token onto the same chain (via an on-ramp, a bridge, or a swap), keep a buffer for next time, or use a single-fee-token wallet that handles the juggling for you.\u003C\u002Fblockquote> \u003Cp>This is one of the most common and most confusing moments in self-custody. Nothing is broken, nothing is lost, and your tokens are exactly where you left them. You simply cannot move them until the right gas coin is sitting on the right chain. This guide explains why that happens, gives you three fast ways out, and shows how a single-fee-token wallet removes the problem structurally — with honest caveats about what that does and does not change.\u003C\u002Fp> \u003Ch2>The quick fix in one paragraph\u003C\u002Fh2> \u003Cp>If you just want to unstick a transaction right now: figure out which chain your stuck tokens are on, then get a \u003Cstrong>small amount of that chain's native token\u003C\u002Fstrong> into the same wallet on the same network. On an EVM chain (Ethereum, Arbitrum, Optimism, Base, Polygon, BNB Chain) you need a little ETH or BNB or MATIC; on Solana you need a little SOL; on TON you need a little Toncoin. The fastest routes are a built-in on-ramp (buy native gas directly with a card), a bridge from a chain where you already hold native (move a few dollars over), or a swap of a tiny slice of the tokens you already hold into the native coin — if you have enough native to pay for that one swap. Once the native balance covers the fee, your stuck transaction goes through.\u003C\u002Fp> \u003Ch2>Why this happens: token balance vs gas balance\u003C\u002Fh2> \u003Cp>Blockchains charge a fee for every state change — sending, swapping, approving, minting. That fee is called \u003Ca href=\"\u002Fblog\u002Fcrypto-gas-fees-explained\">gas\u003C\u002Fa>, and it is paid to the network's validators in the network's own native currency. Critically, the fee is \u003Cstrong>not\u003C\u002Fstrong> deducted from whatever token you are moving. If you send USDC, the network does not take its cut in USDC; it demands ETH (or whatever the chain's native coin is) on top.\u003C\u002Fp> \u003Cp>So your wallet effectively tracks two separate balances that happen to share one screen:\u003C\u002Fp> \u003Cul>\u003Cli>\u003Cstrong>Token balance\u003C\u002Fstrong> — the assets you hold (USDC, a meme coin, a wrapped or bridged token, an NFT). These are what you want to move.\u003C\u002Fli>\u003Cli>\u003Cstrong>Gas balance\u003C\u002Fstrong> — the native coin that pays the network fee. This is what actually lets you move anything.\u003C\u002Fli>\u003C\u002Ful> \u003Cp>You can hold $10,000 of a token and still be unable to send a single cent of it if your native gas balance is zero. The error is the network refusing to start a transaction it knows you cannot pay for. It is a balance problem, not a security problem.\u003C\u002Fp> \u003Cp>The second trap is that gas is \u003Cstrong>per-chain\u003C\u002Fstrong>. ETH on Ethereum mainnet does not pay for a transaction on Polygon, and SOL does nothing on an EVM chain. Each network is its own toll road with its own currency. People most often hit this right after bridging: they move USDC to a shiny new chain, arrive with tokens but zero native coin on that chain, and discover they cannot even move the USDC back out.\u003C\u002Fp> \u003Ch2>Step 1: identify which native token the chain needs\u003C\u002Fh2> \u003Cp>Before you fix anything, confirm two things: which chain your stuck tokens are actually on, and which native token that chain charges fees in. Open your wallet and check the network the token is sitting on — the same token symbol (say, USDC) can exist on a dozen chains, and only the native coin on \u003Cem>that specific chain\u003C\u002Fem> will work.\u003C\u002Fp> \u003Cp>Here is the mapping for the networks \u003Ca href=\"\u002Fsupported-chains\">WATS supports\u003C\u002Fa>:\u003C\u002Fp> \u003Ctable>\u003Cthead>\u003Ctr>\u003Cth>Chain\u003C\u002Fth>\u003Cth>Native gas token\u003C\u002Fth>\u003Cth>Notes\u003C\u002Fth>\u003C\u002Ftr>\u003C\u002Fthead>\u003Ctbody>\u003Ctr>\u003Ctd>Ethereum\u003C\u002Ftd>\u003Ctd>ETH\u003C\u002Ftd>\u003Ctd>Highest fees; you need real ETH, not wrapped or bridged variants.\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd>Arbitrum \u002F Optimism \u002F Base\u003C\u002Ftd>\u003Ctd>ETH\u003C\u002Ftd>\u003Ctd>These L2s also pay gas in ETH, but it must be ETH on that L2, not on mainnet.\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd>Polygon\u003C\u002Ftd>\u003Ctd>POL (formerly MATIC)\u003C\u002Ftd>\u003Ctd>Cheap fees, but still its own native coin.\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd>BNB Chain\u003C\u002Ftd>\u003Ctd>BNB\u003C\u002Ftd>\u003Ctd>Native BNB on BNB Chain pays the fee.\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd>Solana\u003C\u002Ftd>\u003Ctd>SOL\u003C\u002Ftd>\u003Ctd>Tiny fees, but you still need a small SOL balance to transact.\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd>TON\u003C\u002Ftd>\u003Ctd>Toncoin (TON)\u003C\u002Ftd>\u003Ctd>Native Toncoin pays for TON network operations.\u003C\u002Ftd>\u003C\u002Ftr>\u003C\u002Ftbody>\u003C\u002Ftable> \u003Cp>One honest note: WATS spans EVM chains, Solana, and TON in a single self-custody wallet, but it does \u003Cstrong>not\u003C\u002Fstrong> natively support Bitcoin, so Bitcoin's gas model is out of scope here. Once you know the exact chain and its native coin, you know precisely what to acquire.\u003C\u002Fp> \u003Ch2>Step 2: fastest ways to get a little native gas (on-ramp, bridge, swap)\u003C\u002Fh2> \u003Cp>You only need a small amount of native token — enough to cover one or a few transactions, not a big position. There are three reliable routes, roughly in order of speed depending on what you already have.\u003C\u002Fp> \u003Ch3>Option A — Buy native gas with an on-ramp\u003C\u002Fh3> \u003Cp>The most direct fix when you have no native coin anywhere is to buy a small amount directly with a card or bank transfer through an on-ramp, sending it straight to your wallet address on the chain you need. Make sure the on-ramp delivers the native coin \u003Cstrong>on the correct network\u003C\u002Fstrong> — buying ETH that lands on mainnet will not help a stuck transaction on Base. This is the only route that needs nothing pre-existing in your wallet.\u003C\u002Fp> \u003Ch3>Option B — Bridge a little native from another chain\u003C\u002Fh3> \u003Cp>If you already hold native gas on a different chain — say you have ETH on Arbitrum but your tokens are stranded on Base — you can \u003Ca href=\"\u002Fblog\u002Fhow-to-bridge-crypto-across-chains\">bridge\u003C\u002Fa> a few dollars of native across. Bridge a small, deliberate amount; you are topping up the gas tank, not relocating your whole balance. Watch out for the chicken-and-egg case: bridging itself costs gas on the source chain, so you need a little native there to start.\u003C\u002Fp> \u003Ch3>Option C — Swap a slice of what you already hold\u003C\u002Fh3> \u003Cp>If you have \u003Cem>just enough\u003C\u002Fem> native to cover one transaction, you can swap a small portion of your stuck tokens into more native coin to build a buffer. The catch is the same one that got you here: a swap is itself a transaction and needs gas. If your native balance is truly zero, a same-chain swap will not save you — you must use Option A or B first. Some wallets and aggregators offer gas-on-swap features that deduct the fee differently, which leads directly to the structural fix below.\u003C\u002Fp> \u003Ch2>Step 3: avoid it next time — keep a small native buffer\u003C\u002Fh2> \u003Cp>The simplest habit that prevents this entirely: whenever you move tokens onto a chain, bring a little native coin along with them. Treat it like keeping a few dollars of fuel in a car you might drive in a new city.\u003C\u002Fp> \u003Cul>\u003Cli>\u003Cstrong>Pre-fund every chain you use.\u003C\u002Fstrong> Keep a small native balance (often just a few dollars) on each network you actually transact on, so you are never stranded with tokens you cannot move.\u003C\u002Fli>\u003Cli>\u003Cstrong>Top up before you bridge, not after.\u003C\u002Fstrong> When you send tokens to a new chain, send or buy a little native there in the same session.\u003C\u002Fli>\u003Cli>\u003Cstrong>Leave a margin.\u003C\u002Fstrong> Do not drain your native coin to the last cent after a transaction — fees fluctuate, and the next one might cost slightly more than the last.\u003C\u002Fli>\u003Cli>\u003Cstrong>Mind the busy chains.\u003C\u002Fstrong> On Ethereum mainnet especially, gas spikes during congestion; a buffer that was fine yesterday can fall short during a busy hour.\u003C\u002Fli>\u003C\u002Ful> \u003Cp>This works, but it has an obvious downside: the more chains you use, the more little native balances you have to track and refill. That juggling is exactly the problem the next section addresses.\u003C\u002Fp> \u003Ch2>The structural fix: single-fee-token wallets (Hot Wallet, honest framing)\u003C\u002Fh2> \u003Cp>Keeping a native buffer on six chains is busywork. The structural alternative is a wallet that lets you pay fees in \u003Cstrong>one\u003C\u002Fstrong> token everywhere, so you stop managing a separate gas coin per chain. The WATS \u003Ca href=\"\u002Fhot-wallet\">Hot Wallet\u003C\u002Fa> does this with a single-fee-token model built on \u003Ca href=\"\u002Fblog\u002Fwhat-is-gas-abstraction\">gas abstraction\u003C\u002Fa>: you fund one ATS balance, and that token covers network fees across the chains the Hot Wallet supports, instead of you sourcing ETH here and SOL there.\u003C\u002Fp> \u003Cp>Now the honest framing, because this is easy to oversell:\u003C\u002Fp> \u003Cul>\u003Cli>\u003Cstrong>It changes which token pays, not how much.\u003C\u002Fstrong> Gas abstraction swaps the fee token from per-chain native coins to ATS. It is \u003Cstrong>not\u003C\u002Fstrong> a discount, \u003Cstrong>not\u003C\u002Fstrong> \"gasless,\" and \u003Cstrong>not\u003C\u002Fstrong> cheaper gas. The network still charges its real cost, tracked live; ATS just settles it.\u003C\u002Fli>\u003Cli>\u003Cstrong>You still need a funded balance.\u003C\u002Fstrong> The single fee token is ATS, so a zero ATS balance lands you right back at \"insufficient funds for gas.\" You have replaced many native balances with one — you have not removed the need for one.\u003C\u002Fli>\u003Cli>\u003Cstrong>It is a Hot Wallet feature, not a universal one.\u003C\u002Fstrong> This applies specifically to the WATS Hot Wallet. The WATS Chrome extension and mobile app are pure self-custody wallets that follow the normal per-chain native gas model, exactly as described above.\u003C\u002Fli>\u003C\u002Ful> \u003Cp>So the real benefit is narrow and concrete: \u003Cstrong>one fuel tank instead of six.\u003C\u002Fstrong> If your pain is constantly running dry on whichever chain you happen to land on, consolidating fees into a single funded token removes the per-chain juggling — while everything else about how fees work stays the same.\u003C\u002Fp> \u003Ch2>Chain-by-chain notes (EVM, Solana, TON)\u003C\u002Fh2> \u003Cp>\u003Cstrong>EVM chains (Ethereum, Arbitrum, Optimism, Base, Polygon, BNB Chain).\u003C\u002Fstrong> All of these use the same model: a native coin pays gas, and it must be that coin on that exact chain. ETH covers Ethereum and the major L2s, but ETH on Arbitrum will not pay a Base fee — they are separate balances. Polygon uses POL and BNB Chain uses BNB. Mainnet fees are the most volatile, so keep the largest relative buffer there.\u003C\u002Fp> \u003Cp>\u003Cstrong>Solana.\u003C\u002Fstrong> Fees are tiny, which lulls people into ignoring them — but \"tiny\" is not \"zero.\" You still need a small SOL balance to send SPL tokens or interact with programs. Some actions also require a small rent deposit to open token accounts, so keep slightly more SOL than the bare transaction fee suggests.\u003C\u002Fp> \u003Cp>\u003Cstrong>TON.\u003C\u002Fstrong> Network operations are paid in Toncoin. As with the others, holding a jetton (a TON token) does not pay for its own transfer; you need a little native Toncoin in the same wallet. Keep a small Toncoin buffer if you transact on TON regularly.\u003C\u002Fp> \u003Cp>The thread through all three is identical: tokens are cargo, native coin is fuel, and each chain only accepts its own fuel. Once that clicks, \"insufficient funds for gas\" stops being a mystery and becomes a quick, predictable top-up. If you want the deeper mechanics, read \u003Ca href=\"\u002Fblog\u002Fcrypto-gas-fees-explained\">crypto gas fees explained\u003C\u002Fa>; to understand how single-fee-token wallets shift the fee token without changing the cost, see \u003Ca href=\"\u002Fblog\u002Fwhat-is-gas-abstraction\">what is gas abstraction\u003C\u002Fa>.\u003C\u002Fp>",[10,13,16,19,22],{"title":11,"body":12},"Identify which native token the chain needs","Check which chain your stuck tokens are actually on, then match it to its gas coin: ETH on Ethereum, Arbitrum, Optimism and Base; POL on Polygon; BNB on BNB Chain; SOL on Solana; Toncoin on TON. The same token symbol can exist on many chains, and only the native coin on that exact chain pays the fee.",{"title":14,"body":15},"Buy a little native gas with an on-ramp","If you have no native coin anywhere, buy a small amount directly with a card or bank transfer through an on-ramp, sending it to your wallet address on the chain you need. Confirm the on-ramp delivers the coin on the correct network — ETH on mainnet will not fix a stuck transaction on Base.",{"title":17,"body":18},"Bridge a little native from another chain","If you already hold native gas on a different chain, bridge a few dollars of native across to the stuck chain. Bridge a small, deliberate amount to top up the gas tank, and remember the bridge itself needs a little native on the source chain to start.",{"title":20,"body":21},"Swap a slice of what you already hold","If you have just enough native for one transaction, swap a small portion of your tokens into more native coin to build a buffer. A swap is itself a transaction and needs gas, so if your native balance is truly zero, use an on-ramp or bridge first.",{"title":23,"body":24},"Keep a small native buffer to avoid it next time","Pre-fund every chain you use with a few dollars of native coin, top up before you bridge rather than after, and never drain your native balance to the last cent. To stop juggling a separate gas coin per chain, a single-fee-token wallet like the WATS Hot Wallet lets you pay fees from one funded ATS balance across supported chains.",[26,29,32,35,38],{"q":27,"a":28},"Why does my wallet say insufficient funds for gas when I have tokens?","Because token balance and gas balance are separate. Networks charge fees in their own native coin (ETH, SOL, Toncoin), not in the token you are moving. You can hold thousands in a token and still be unable to send it if your native gas balance on that chain is zero. Add a little native coin on the same chain to fix it.",{"q":30,"a":31},"Can I pay gas with USDC or my other tokens instead of the native coin?","On a standard self-custody wallet, no — each chain demands its native coin for gas. A single-fee-token wallet using gas abstraction, like the WATS Hot Wallet, lets you pay fees from one ATS balance instead of sourcing native coin per chain. It changes which token pays, not the cost, and still needs a funded ATS balance. The WATS extension and mobile app use the normal per-chain native model.",{"q":33,"a":34},"I just bridged tokens to a new chain and now I am stuck. What do I do?","This is the most common version of the problem: you arrived with tokens but zero native coin on the new chain. Get a small amount of that chain's native token there — buy it via an on-ramp, or bridge a few dollars of native from a chain where you already hold some. Next time, bring a little native along when you bridge.",{"q":36,"a":37},"How much native token should I keep for gas?","Enough to cover several transactions with margin — often just a few dollars per chain, more on Ethereum mainnet where fees spike during congestion. Do not drain your native coin to the last cent after a transaction, since the next fee may cost slightly more than the last one.",{"q":39,"a":40},"Does WATS support Bitcoin gas?","No. WATS is a self-custody wallet spanning EVM chains (Ethereum, Arbitrum, Optimism, Base, Polygon, BNB Chain), Solana and TON in one wallet, but it does not natively support Bitcoin, so Bitcoin's fee model is out of scope. For the chains it does support, each uses its own native gas coin as described above.",1784634269779]