Token standards overview
TRON supports four token standards — TRC-10 (protocol-level), TRC-20 (fungible, TVM-based), TRC-721 (non-fungible), and TRC-1155 (multi-token).
Prerequisites
TRON provides comprehensive support for most VM-level token standards. This guide covers four representative standards — TRC-10, TRC-20, TRC-721, TRC-1155 — to explain how TRON handles diverse use cases, from simple fungible tokens to complex multi-token systems. This page summarizes each standard so you can pick the right one for your project, then links to the dedicated documentation for hands-on work.
TRX is documented separately.TRX is the native token of the TRON network, not a token standard. See TRX — the native token for what TRX is, how it is minted and burned, and how to transfer and query it.
TRC-10 — protocol-level token
TRC-10 is a native token standard supported directly at the TRON protocol level — it does not use the TVM. Any account can issue one TRC-10 token by paying a 1,024 TRX creation fee.
Note
For new fungible token projects, use TRC-20 instead. TRC-10 is kept for compatibility with existing tokens but is not recommended for new development.
For details on issuing, transferring, and querying TRC-10 tokens, see TRC-10.
TRC-20 — fungible tokens (recommended)
TRC-20 is the fungible token standard on TRON. It runs inside the TRON Virtual Machine (TVM) and is fully compatible with Ethereum's ERC-20 at the interface level — most ERC-20 contracts compile and run on TRON without modification.
TRC-20 is the recommended standard for new fungible token projects. It offers richer programmability than TRC-10, integrates cleanly with the TRON DeFi ecosystem (DEXes, lending protocols, stablecoins), and works across EVM-compatible chains with the same contract code.
For the standard reference, contract examples, and deployment walkthroughs, see TRC-20.
TRC-721 — non-fungible tokens
TRC-721 is the non-fungible token (NFT) standard on TRON. It defines the common interface every NFT contract must expose — balance queries, ownership lookups, transfers, and approval management — so wallets, marketplaces, and explorers can interact with any TRC-721 contract without custom integration.
TRC-721 is fully compatible with the Ethereum ERC-721 standard at the interface level. The main TRON-specific difference is the receiver-hook return value (0x5175f878 instead of Ethereum's 0x150b7a02).
For the standard reference and reference implementation, see TRC-721.
TRC-1155 — multi-token
TRC-1155 lets a single contract manage many fungible, non-fungible, and semi-fungible tokens at once, with batch operations for transfers and approvals. It is well suited for in-game assets, where some items are unique and others are stackable.
TRC-1155 is fully compatible with the Ethereum ERC-1155 standard, including the receive-hook selectors (0xf23a6e61 and 0xbc197c81), so ERC-1155 contracts port to TRON without changing the receiver hook return values.
For the standard reference, see TRC-1155.
Choosing a standard
| Use case | Recommended standard |
|---|---|
| Maintaining an existing TRC-10 token | TRC-10 |
| New fungible token | TRC-20 |
| Non-fungible tokens (NFTs) | TRC-721 |
| Mixed fungible / non-fungible (e.g., game items) | TRC-1155 |
For native value, fees, and staking, use TRX (the native token, not a token standard).
Related resources
- TRX — the native token — covered separately in "How TRON Works"
- TRC-20 — fungible token standard (recommended)
- TRC-721 — non-fungible token standard
- TRC-1155 — multi-token standard
- TRC-10 — legacy protocol-level standard
- TRON DeFi ecosystem — where TRC-20 tokens primarily trade and are used as collateral
Updated 6 days ago