Skip to content

Troubleshooting Common Errors

Find solutions for the most common TRON errors and technical issues encountered by users and developers. This guide provides exact steps to diagnose and resolve problems with transactions, account activation, and resource limits.

1. “Account not activated” / transaction to new address fails

Section titled “1. “Account not activated” / transaction to new address fails”

What happened: TRON addresses must be activated before they can receive transactions. An address is activated automatically when it receives its first 1 TRX. An unactivated address exists in your wallet software but does not yet exist on-chain.

How to fix:

  • If you are sending to a brand-new address you control: send at least 1 TRX to that address first. Wait for confirmation on TRONSCAN, then retry your original transaction.
  • If you are sending to someone else’s new address: ask them to activate it first, or include 1 TRX with your initial transfer.
  • Activation via smart contract (instead of a direct TRX transfer) costs 25,000 Energy rather than 1 TRX.

2. Transaction fails: “OUT_OF_ENERGY” or fee limit reached

Section titled “2. Transaction fails: “OUT_OF_ENERGY” or fee limit reached”

What happened: Your transaction ran out of Energy mid-execution. The fee limit (maximum TRX you authorised to burn) was reached before the contract finished, causing an automatic revert.

How to fix:

  1. Check the failed transaction on TRONSCAN. The “Energy Used” field shows how much the contract actually required.
  2. Either stake more TRX to obtain sufficient Energy before retrying, or increase the fee limit in your wallet settings.
  3. In TronLink, you can adjust the fee limit under Advanced settings when confirming a transaction. Set it to at least 1.5× the Energy amount shown on the failed transaction.

USDT transfers require 14,650 Energy (existing holder) or 29,650 Energy (new account). The Dynamic Energy Model adds a congestion penalty (up to 340%), pushing the real-world cost to ~64,460 or ~130,460 Energy at peak. At 100 sun/Energy burn rate, that is roughly 6.4–13 TRX. Staking ~1,600 TRX generates ~14,650 Energy/day — enough for a single USDT transfer to an existing holder at zero burn cost.

3. USDT transfer keeps failing despite having TRX balance

Section titled “3. USDT transfer keeps failing despite having TRX balance”

What happened: Having TRX in your wallet is not enough. USDT transfers are TRC-20 smart contract calls and consume Energy, not just Bandwidth. If you have no staked TRX, the Energy cost is burned from your TRX balance — but if your fee limit is set too low, the transaction reverts before the burn completes.

How to fix:

  • Option A — Stake TRX: Freeze at least 1,600 TRX for Energy in TronLink. This gives you ~14,650+ Energy per day, enough to cover daily USDT transfers to existing holders at zero burn cost.
  • Option B — Raise the fee limit: In TronLink advanced settings, increase the fee limit to 15–20 TRX for a USDT transfer. The actual burn will range from ~1.5–13 TRX depending on congestion.
  • Option C — Rent Energy: Use an Energy rental service for one-off transfers if you do not want to stake long-term.

Use our interactive Energy & Fee Calculator to instantly simulate your transaction requirements and find your exact cost parameters.

What happened: Exchange withdrawals go through multiple stages: internal processing → broadcast to network → confirmation. Delays are common and do not indicate a lost transfer.

How to diagnose:

  1. Check your exchange withdrawal history. Note the transaction hash (TXID) if one is shown.
  2. Search the TXID on TRONSCAN. If it appears and shows “SUCCESS”, the transfer is confirmed — check your wallet is on the correct network (TRON, not Ethereum or BSC).
  3. If no TXID appears yet, the exchange has not broadcast it. Wait or contact exchange support with your withdrawal request ID.
  4. If TRONSCAN shows the transaction as “FAILED”, the exchange will typically refund — contact support.
Section titled “5. TronLink shows wrong balance or won’t connect to a DApp”

What happened: TronLink’s local cache may be out of sync with the network, or the DApp’s injected provider is stale after a page reload or wallet update.

How to fix:

  • Wrong balance: Open TronLink → Settings → Network → switch to a different RPC endpoint and back. This forces a cache refresh. Alternatively, search your address on TRONSCAN to confirm the true on-chain balance.
  • Won’t connect to DApp: Disconnect and reconnect from within TronLink’s “Connected Sites” list. Hard-refresh the DApp page (Ctrl+Shift+R / Cmd+Shift+R). If it persists, try disabling and re-enabling the TronLink extension.
  • TronLink not detected: Ensure you are using a Chromium-based browser and the extension is enabled for the site. TronLink is not available as a native mobile Safari extension — use TronLink’s mobile app browser for iOS.

Ledger Live Synchronization Errors (Hardware Wallet Sync Issue)
Ledger desktop and mobile applications frequently encounter node sync lag with the TRON network, displaying incorrect balances or blocking transaction signatures.

How to bypass Ledger Live sync errors:

  1. Keep your Ledger device connected to your computer and open the TRON app on the hardware screen.
  2. Open the official TronLink Chrome Extension and click “Add Wallet” (or the wallet profile icon).
  3. Select “Pair Hardware Wallet” and click “Ledger”. Connect via USB.
  4. Import your TRON account address. TronLink acts as a safe, real-time interface, allowing you to sign and broadcast TRON transactions securely using your Ledger device, entirely bypassing Ledger Live’s interface.

What happened: TRON transactions are irreversible once confirmed. There is no recall mechanism.

Recovery options (limited):

  • If the address is one you control (another wallet of yours): import the receiving wallet’s private key or seed phrase into TronLink and transfer the tokens back.
  • If the address belongs to an exchange: contact the exchange’s support with the TXID. Some exchanges will manually credit funds sent to a deposit address of the wrong asset — this is not guaranteed and may take weeks.
  • If the address is random or unknown: the funds are unrecoverable. No support team, including the TRON DAO, can reverse a confirmed transaction.

What happened: Every transaction consumes Bandwidth proportional to its byte size. Each account receives 600 free Bandwidth points per day. Simple TRX transfers cost ~300 Bandwidth; TRC-20 transfers and contract calls cost more. If you have no staked Bandwidth and your free daily allocation is exhausted, transactions fail.

How to fix:

  • Wait until midnight UTC — free Bandwidth resets to 600 every 24 hours.
  • Stake a small amount of TRX for Bandwidth (Freeze → Bandwidth in TronLink). Even 10 TRX provides several thousand Bandwidth, enough for dozens of daily transactions.
  • Alternatively, having at least 0.1 TRX available to burn covers Bandwidth costs automatically (1 TRX = 1,000 Bandwidth points burned as needed).

8. Transaction stuck as pending / not confirming

Section titled “8. Transaction stuck as pending / not confirming”

What happened: TRON blocks confirm approximately every 3 seconds. A transaction should appear on TRONSCAN within 30 seconds. If it is not visible after 2 minutes, one of the following is likely:

  • The transaction was never broadcast (network error in your wallet)
  • The transaction was broadcast but rejected by the node (invalid signature or duplicate nonce)
  • TRONSCAN’s indexer is briefly behind

How to diagnose and fix:

  1. Search your wallet address on TRONSCAN. If the transaction appears — even as failed — it was broadcast successfully.
  2. If nothing appears after 5 minutes, the transaction was likely not sent. Retry from your wallet.
  3. If you submitted the same transaction twice (e.g., by double-clicking Confirm), only one will succeed. The duplicate will be dropped automatically.
  4. If the TRONSCAN UI is showing stale data, try the API directly: https://apilist.tronscanapi.com/api/transaction-info?hash=YOUR_TXID

9. Unknown or unwanted contract approval in your wallet

Section titled “9. Unknown or unwanted contract approval in your wallet”

What happened: A TRC-20 approval grants a smart contract permission to spend tokens from your wallet up to a specified limit. Approvals persist indefinitely. If you interacted with a malicious DApp, it may have a standing approval to drain your tokens.

How to check and revoke:

  1. Go to TRONSCAN and search your wallet address.
  2. Click the Approvals tab (or navigate to tronscan.org/#/address/YOUR_ADDRESS/approvals).
  3. Review the list of contracts with active approvals. Any contract you do not recognise or no longer use should be revoked.
  4. Click Revoke next to the approval and confirm the transaction in TronLink. Revocation is an on-chain transaction that requires standard contract execution resource costs. It typically consumes ~10,000–15,000 Energy and Bandwidth, which burns ~1.5–3 TRX (or up to 5–6 TRX during high network congestion under the Dynamic Energy Model) if you do not have staked resources.

Alternative: Native Wallet Revocation You can bypass TRONSCAN entirely and audit/revoke approvals natively inside your wallet:

  • TronLink Extension: Open the extension, click the menu in the top-right → Approval Management.
  • TronLink Mobile App: Go to MeSecurity CenterApproval Management.

10. Received tokens are not visible in your wallet

Section titled “10. Received tokens are not visible in your wallet”

What happened: TronLink and most TRON wallets do not automatically add every TRC-20 token to the display. If someone sent you a token your wallet has not seen before, it is on-chain but not shown in the UI.

How to fix:

  1. Confirm the tokens were received: search your address on TRONSCAN → click the TRC-20 tab. All TRC-20 balances are visible here regardless of wallet display settings.
  2. In TronLink, tap the token list → Add custom token (or the + icon).
  3. Enter the token’s contract address. TronLink will look up the token name, symbol, and decimals automatically.
  4. Save. The balance now appears in your wallet UI.

Always verify the contract address against a trusted source (TRONSCAN’s verified token list or Token Registry) before adding a custom token. Scammers create fake tokens with the same name as legitimate ones.

11. Staking 2.0 Unstaking & Manual Withdrawal (Where is my TRX?)

Section titled “11. Staking 2.0 Unstaking & Manual Withdrawal (Where is my TRX?)”

What happened: In TRON’s Stake 2.0 model, initiating an unstaking request de-allocates your resources immediately but does not automatically return your TRX to your available wallet balance.

How to fix:

  1. Wait for the unbonding period: There is a mandatory 14-day waiting period (336 hours) from the exact moment you submit the unstake request. During this unbonding time, your TRX remains locked.
  2. Track the countdown: In TronLink, open the Stake panel and look under your unstaked assets to see the precise countdown remaining.
  3. Execute the manual withdrawal: Once the 14-day countdown finishes, the TRX status transitions to “withdrawable.” You must manually claim the TRX by sending a WithdrawExpireUnfreeze transaction.
    • In TronLink Extension/App: Navigate to the Stake page → Click Unstake / History → Click the Withdraw button next to your expired stake.
    • In TRONSCAN: Connect your wallet, go to your Account details → Staking Management → Click Withdraw under your available unfreezes.

Once you sign this manual transaction, the TRX is instantly returned to your active, liquid balance. Executing a manual withdrawal consumes only a small amount of Bandwidth (free daily bandwidth covers it fully).

12. Unauthorized 0 USDT transfers in my wallet history (Address Poisoning)

Section titled “12. Unauthorized 0 USDT transfers in my wallet history (Address Poisoning)”

What happened: This is known as an “Address Poisoning” scam. A scammer has broadcast a transaction sending 0 USDT from your address to their address. TRON’s TRC-20 protocol design allows anyone to initiate a 0-value transfer on behalf of another address (it simply costs the initiator Energy/fees, and does not move any of your actual funds). The scammer’s goal is to pollute your transaction history with a wallet address that looks almost identical to one you frequently use (e.g., matching the first and last 4 characters).

Why they do it: They hope that the next time you go to send tokens, you will copy the recipient address from your recent transaction history instead of your address book, accidentally sending your funds to the scammer’s lookalike address.

How to fix:

  1. Do nothing: Your funds are completely safe. The scammer cannot access your wallet or spend your money. They merely paid network fees to insert a fake receipt into your history.
  2. Ignore the transfers: Do not attempt to interact with the scammer’s address or any tokens they may have sent you.
  3. Change your habits: NEVER copy an address from your transaction history. Always copy addresses from a verified source, your address book, or by scanning a QR code.
  4. Use address books: Most wallets, including TronLink, have a built-in address book feature. Save your frequent contacts there and use them exclusively.
  5. Verify the full address: Before confirming any transaction, double-check the entire address, not just the first and last few characters. Scammers use vanity address generators to create lookalikes.

Have a question that isn’t covered here? The TRON community and developer groups are available to help with specific edge cases and technical troubleshooting.