TRC-20 vs TRC-10: TRON Token Standards Compared — TRON Wiki

TRC-20 vs TRC-10: TRON Token Standards Compared

8 min read · ⌘K search

USDT on TRON is TRC-20, not TRC-10 — but both standards coexist on the same blockchain. TRC-10 is TRON's older, simpler native asset format; TRC-20 is the smart-contract standard that powers modern DeFi and stablecoins.

At a glance

FeatureTRC-10TRC-20
TypeNative TRON assetSmart contract
DeploymentIssue via wallet/APIDeploy contract code
Cost to create~1024 TRX (historical)Higher (contract + energy)
Custom logicNoYes (approve, burn, mint rules)
approve / DeFiNoYes
USDTNoYes (TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t)
Wallet supportBroadBroad

What is TRC-10?

TRC-10 tokens are built into TRON's core protocol. Issuers create them through TRON's asset issuance system — no custom Solidity code required. Each TRC-10 token has a numeric token ID (e.g., 1002000) in addition to a name and symbol.

Characteristics:

  • Transfers use mostly bandwidth, less energy than TRC-20
  • No approve function — unsuitable for Uniswap-style DEX patterns
  • Simpler for airdrops and basic utility tokens
  • Some legacy projects (early BTT distribution models) used TRC-10

TRC-10 is fine for simple value transfer but limited for programmable finance.

What is TRC-20?

TRC-20 tokens are smart contracts on the TVM. They implement a standard interface compatible with ERC-20 patterns — transfer, balanceOf, approve, transferFrom, and allowance mappings.

This enables:

  • Decentralized exchanges and liquidity pools
  • Lending protocols
  • Token approvals for third-party spenders
  • Complex supply rules (mint/burn/pause)

USDT, USDC, and USDD on TRON are all TRC-20. Learn more: what is TRC-20.

Fee differences

Transfer typeResource usageTypical cost
TRC-10 sendMostly bandwidthOften free with daily bandwidth
TRC-20 sendBandwidth + energyTRX burn or frozen energy
TRX sendBandwidthOften free

TRC-20 USDT transfers consume ~65,000 Energy. TRC-10 transfers are lighter. For high-frequency micro-transfers of simple tokens, TRC-10 can be cheaper — but stablecoins standardized on TRC-20.

Details: TRC-20 transfer fees.

DeFi and exchange support

Modern TRON DeFi almost exclusively uses TRC-20:

  • SunSwap, JustLend, and similar protocols expect approve + transferFrom
  • Exchanges list USDT as TRC-20 with contract verification
  • Portfolio trackers read TRC-20 contract events

TRC-10 remains supported on TronScan and basic wallets but is rare for new listings.

Creating tokens: which to pick?

GoalRecommendation
Simple community token, no DeFiTRC-10 may suffice
DEX listing, DeFi integrationTRC-20
Stablecoin or audited assetTRC-20 (industry standard)

Developer guide: create TRC-20 token.

TRC-10 cannot replace TRC-20 for DeFi
If you plan liquidity pools or lending, TRC-10's lack of approve is a hard blocker. Start with TRC-20.

Identification on TronScan

  • TRC-20 — shows contract address (T... or base58 contract format)
  • TRC-10 — shows token ID and issuer account

When verifying USDT, confirm the TRC-20 contract:

Code
TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t

Guide: verify USDT TRC-20 contract.

Migration and bridges

Some projects migrated from TRC-10 to TRC-20 by issuing a new contract and offering swap portals. There is no universal TRON protocol button to "upgrade" TRC-10 to TRC-20 — each project handles migration independently.

User practical advice

For everyday USDT users, only TRC-20 matters. If someone mentions "TRON USDT," they mean TRC-20 unless explicitly discussing legacy infrastructure.

If you receive an unknown token labeled TRC-10, research the issuer before trading — low-liquidity assets can be worthless or scams.

Browse major assets: TRC-20 token list.

Wallet display differences

Wallets surface TRC-10 and TRC-20 differently:

UI elementTRC-10TRC-20
IdentifierToken ID numberContract address
TronScan tabTRC-10 transfersTRC-20 transfers
Custom importID + nameContract address

If a token appears twice with similar names, check whether one is TRC-10 legacy and one is TRC-20 — they are not fungible with each other.

Historical context

TRC-10 predates widespread TVM DeFi on TRON. Early ecosystem projects issued native assets before smart-contract tokens became standard. As SunSwap and lending protocols matured, TRC-20 became the default for anything touching approve / transferFrom patterns.

New issuers should assume TRC-20 unless they have a specific reason to avoid smart contracts — and understand that major exchanges will ask for a contract address, not a TRC-10 ID, for USDT-grade assets.

Airdrop hygiene

Unsolicited TRC-10 and TRC-20 drops are common:

  • Do not visit websites printed in token metadata.
  • Do not approve spending rights to "sell" dust.
  • Hide scam tokens in wallet UI after verifying they are not official USDT (TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t).

TRC-10 airdrops cost scammers less to distribute but carry the same phishing risk as TRC-20 dusting attacks.

FAQ

Does USDT use TRC-10 or TRC-20?

USDT on TRON uses TRC-20. The official contract is TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t.

Can I convert TRC-10 to TRC-20?

Not directly at the protocol level. Conversion requires a project-specific bridge or swap if the issuer supports it.