Energy vs Bandwidth on TRON
TRON splits transaction costs into two separate resources, and understanding the difference explains why a USDT transfer can fail even when a plain TRX transfer wouldn't.
What Bandwidth covers
Bandwidth pays for the raw size of a transaction on the network. Every account gets a small free daily allowance of Bandwidth, which is generally enough to cover simple TRX transfers without any cost at all.
What Energy covers
Energy pays specifically for executing smart contract code, which is what a TRC20 token transfer like USDT actually is under the hood. This is a separate, usually much larger cost than Bandwidth, and it's not covered by the same free daily allowance.
Why this trips people up
Someone who's only ever sent plain TRX may never have needed to think about Energy at all, since Bandwidth alone covers that. The first time they send USDT, the Energy requirement can catch them off guard if their account has none staked.