TRON does not have a single "gas" meter. It charges transactions in two separate resources: bandwidth, which pays for the bytes a transaction occupies, and energy, which pays for smart-contract execution. Understanding which one your transaction consumes explains almost every TRON fee surprise.
Bandwidth: paying for bytes
Every transaction, no matter how simple, is some number of bytes on the wire, and each byte costs one bandwidth point. A plain TRX transfer is around 268 bytes, so it consumes about 268 bandwidth.
The twist that confuses newcomers: every activated account receives 600 free bandwidth points per day. That allowance covers roughly two simple transfers, which is why casual TRX sends often cost exactly nothing. Once the free allowance runs out, bandwidth is paid by burning TRX at 1,000 SUN per byte, so that same 268-byte transfer costs about 0.268 TRX.
Energy: paying for computation
Energy only exists for smart contracts. Calling a TRC-20 token like USDT executes contract code on the TRON Virtual Machine, and every instruction consumes energy, exactly analogous to Ethereum's gas units. A standard USDT transfer to an address that already holds USDT consumes about 31,895 energy; a transfer to a fresh address roughly doubles that, because writing a brand-new storage slot is the most expensive thing the TVM does.
There is no free daily energy allowance. If you hold none, the network burns TRX from your balance at the going rate, currently 420 SUN per energy unit.
The worked example: one USDT transfer
Put the two meters together for the most common TRON transaction, sending USDT to an existing holder:
Burn vs stake: two ways to pay
Everything above describes the burn path: no preparation, TRX destroyed per transaction. The alternative is staking. Freezing TRX under Stake 2.0 grants a continuous quota of energy or bandwidth that regenerates every 24 hours. A wallet with enough staked TRX pays effectively zero marginal fee per transfer; the cost becomes the opportunity cost of the locked TRX.
This split is the economic heart of TRON: heavy users (exchanges, payment processors, USDT market makers) stake once and transact almost free, while occasional users burn. It is also why quoted "TRON fees" vary so wildly between sources; the honest answer is always "which path, and at today's committee-set prices?" More on the economics in Why TRON for USDT?.
The prices are votes, not constants
Both unit prices (420 SUN per energy, 1,000 SUN per byte) are parameters set by TRON's committee governance, and they have changed before: energy cost has been raised in steps over the years, which is why old blog posts quote much cheaper USDT transfers than you see today. Any serious fee estimate keeps these prices as variables, which is exactly how our calculator is built.