Home / Articles / When do you have to activate a Tron address?
When do you have to activate a Tron address?
Short answer
Activate a Tron address the first time it exists on the network. After that there is nothing left to create, and the activation price is zero. An energy rental can include the creation. The USDT transfer is still a separate 65,000 or 131,000 of energy, depending on whether the recipient already holds USDT.
A fresh key is not an account
Generate an address in a wallet and all you have is a key. Until someone pays to create the account, nobody can delegate energy to it, and it cannot send anything of its own. The usual way an account gets born is that TRX arrives and the network creates it as part of that transfer. gasrent can do that creation from its own wallet when you order energy to an address that is not active yet, and put the fee on the same bill.
If the address has ever sent or received something, it is already active. You do not pay the creation fee again. Check before you assume a "new" payout address is inactive. A lot of them are old accounts with an empty USDT balance. Those need the larger energy rental and they do not need activation. A key that has never touched the network needs both, and mixing the two up is how a payout script charges the wrong line.
The two charges stay separate after the fact. Cancel the energy order later and the energy comes back. The creation fee does not, because the account is now there. You bought a fact on the network, not a reservation.
What the activation fee is made of
An address counts as active when wallet/getaccountresource shows freeNetLimit or EnergyLimit. Any other address, on a quote or an order, includes activation unless you set no_activation. With that flag, an inactive address comes back as inactive_address and nothing is charged. That is the right flag when your own system is supposed to create accounts and you do not want a rental to do it quietly.
The price is read when the call runs, so a quote from an hour ago can be slightly wrong:
- the chain's fee for creating an account, converted from sun to TRX
- plus the bandwidth of that creation transaction, at the bandwidth price the chain is charging then
The bandwidth part is the size of the transaction: the raw bytes, a short length prefix, a 65-byte signature, and 64 bytes the node counts for the result. It is a small TRX number next to the creation fee. An address that is already active quotes all of this as zero.
On an order, an inactive target is activated before any energy is delegated. The balance has to cover both, or the call stops with insufficient_balance and does not start. After the account shows up on the network, the order delegates the energy to it. Bandwidth is its own resource. It is not a nickname for energy, which is why it shows up inside this fee and still does not pay for the USDT transfer.
Activation does not change what the USDT transfer spends. After the account exists, a recipient with no USDT balance still costs 130,285 energy. A recipient who already holds USDT costs 64,285. The orders around those figures stay 131,000 and 65,000.
The energy check will not even estimate a sender that is inactive. The sender has to be a live account holding at least 0.000001 USDT. The recipient of that check can be anyone. If the recipient is the inactive one, you are looking at both bills at once: create the account, then rent for 130,285 of real consumption. The TRX for both has to be on the balance before the order.