Почему перевод USDT на пустой кошелёк съедает вдвое больше энергии: 64 285 против 130 285
Перевод USDT TRC-20 на адрес, где ещё нет USDT, требует 130 285 энергии вместо обычных 64 285 — вдвое дороже. Разбираем, откуда берётся разница в 66 000 единиц, сколько это в TRX при сжигании и как проверить цифры по реальным транзакциям через TronGrid.
Перевод USDT TRC-20 на адрес, на котором ещё нет USDT, требует 130 285 единиц энергии, а на адрес с ненулевым балансом USDT — 64 285. Разница составляет ровно 66 000 единиц: «пустой» получатель делает перевод примерно вдвое дороже. При оплате сжиганием TRX это 13,03 TRX против 6,43 TRX по действующему тарифу 100 sun за единицу энергии. Причина — устройство хранилища смарт-контракта Tether: запись баланса в новую ячейку стоит сети дороже, чем обновление уже существующей. Обе цифры проверены 18 июля 2026 года по реальным транзакциям контракта USDT в сети TRON — методика проверки ниже, вы можете повторить её сами.
64 285 против 130 285: два сценария одного и того же перевода
С точки зрения пользователя перевод выглядит одинаково: вы указываете адрес, сумму и подписываете транзакцию. Но контракт USDT хранит балансы всех держателей в таблице «адрес → количество токенов», и стоимость операции зависит от того, есть ли получатель в этой таблице.
- 64 285 энергии — получатель уже держит USDT. В хранилище контракта для его адреса существует ненулевая запись, и перевод лишь изменяет число в готовой ячейке.
- 130 285 энергии — на адресе USDT ещё не было. Контракту приходится создавать новую запись в хранилище, а такая запись тарифицируется сетью заметно дороже.
- Разница 130 285 − 64 285 = 66 000 единиц энергии — это и есть плата за создание новой ячейки под баланс получателя.
Сумма перевода на расход энергии не влияет: отправка 1 USDT и 100 000 USDT на один и тот же адрес стоит одинаково. Важен только статус получателя — держал он токен на момент перевода или нет.

Методика: как мы проверяли цифры и как повторить проверку
Цифры 64 285 и 130 285 — не справочные значения из чужих статей, а фактический расход энергии реальных переводов USDT, снятый с публичной ноды TRON 18 июля 2026 года. Проверка занимает пару минут и не требует ничего, кроме командной строки.
- Возьмите свежие транзакции контракта USDT (TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t): запросите события Transfer через публичный API TronGrid и выпишите несколько transaction_id.
- Для каждой транзакции вызовите метод wallet/gettransactioninfobyid и посмотрите поле receipt.energy_usage_total — это полный расход энергии перевода.
- Сверьте тариф сжигания: метод wallet/getchainparameters, параметр getEnergyFee. На дату проверки он равен 100 sun за единицу энергии.
В нашей выборке из десяти подряд идущих переводов USDT семь показали ровно 64 285 энергии, три — ровно 130 285. Пример «дорогой» транзакции: 7c4c317b95c3ae5dcd1848267366f011fb45c0b85e883082f174b3e542270c8a — расход 130 285 энергии, итоговое списание 13 378 500 sun (13,03 TRX за энергию плюс 0,35 TRX за bandwidth). Пример «обычной»: 1e452d85551ff0cf1a081e6c67d459e118ab04747fde5e14eca65b3100f2c463 — 64 285 энергии, списание 6 428 500 sun. Методы API описаны в официальной документации: gettransactioninfobyid и getchainparameters; сами запросы шли на публичный эндпоинт api.trongrid.io.
Почему новая запись стоит дороже: как TVM тарифицирует хранилище
Виртуальная машина TRON (TVM) устроена по образцу EVM: каждая ячейка постоянного хранилища контракта оплачивается отдельно, и запись ненулевого значения в пустую ячейку стоит существенно дороже, чем изменение уже занятой. Логика сети простая: новая ячейка — это новые данные, которые каждый узел блокчейна обязан хранить бессрочно, а обновление существующей ячейки нового места не занимает.
Когда адрес впервые получает USDT, контракт Tether выполняет именно такую «дорогую» запись: создаёт ячейку под баланс нового держателя. Все последующие входящие переводы лишь обновляют её и потому обходятся в базовые 64 285 энергии. Как энергия и bandwidth в принципе тарифицируются сетью, описано в ресурсной модели TRON, а общий разбор всех трёх составляющих комиссии мы делали в статье о комиссиях TRON: энергия, bandwidth и sun.
«Пустой» — это про баланс USDT, а не про TRX
Частая путаница: «пустым» в этой задаче считается не новый и не безденежный кошелёк, а адрес, на котором нет именно USDT. Кошелёк может год работать в сети, держать TRX и другие токены — но если USDT на нём никогда не было (или весь баланс когда-то ушёл в ноль), первый входящий перевод USDT всё равно потребует 130 285 энергии. И наоборот: даже свежий адрес, уже получивший хотя бы 1 USDT, дальше принимает переводы по 64 285.
Отдельный случай — адрес, которого вообще ещё нет в сети (не активирован). Тогда к расходу энергии добавляется активация аккаунта: по данным того же getchainparameters, системный сбор getCreateNewAccountFeeInSystemContract составляет 1 000 000 sun (1 TRX), плюс getCreateAccountFee 100 000 sun (0,1 TRX). Что такое активация и почему без неё адрес «не существует», мы подробно разбирали в статье об активации нового TRON-кошелька.
Сколько это в TRX и как не платить вдвое
Если энергии на кошельке нет, сеть спишет её стоимость сжиганием TRX по тарифу getEnergyFee. На дату проверки (18 июля 2026, 100 sun за единицу) арифметика такая: 64 285 × 100 sun = 6,43 TRX за перевод на адрес с USDT и 130 285 × 100 sun = 13,03 TRX за перевод на пустой. Сверху добавляется bandwidth: транзакция перевода занимает около 345 байт, и без свободного bandwidth это ещё примерно 0,35 TRX — именно поэтому в реальной «дорогой» транзакции из нашей выборки списано 13,38 TRX.
- Перед крупным переводом проверьте получателя в обозревателе блоков: если USDT на адресе уже есть, хватит стандартных ~65 000 энергии.
- Если адрес свежий или без USDT — закладывайте ~131 000 энергии, иначе недостающую часть сеть доберёт сжиганием TRX.
- Дешевле не сжигать TRX, а арендовать энергию на время перевода: вы платите за ресурс, а не за его «покупку навсегда» через заморозку.
Подробный расчёт потребности в энергии для разных сценариев есть в статье «Сколько энергии нужно на перевод USDT», а о том, почему при отсутствии энергии сеть именно сжигает TRX и куда они уходят, — в разборе «Почему USDT TRC-20 сжигает TRX».
Если перевод на пустой адрес уже запланирован, необязательно держать ради него лишние TRX: арендуйте нужный объём энергии в боте @overtronbot — выбираете пакет под обычный или «пустой» адрес, энергия делегируется на ваш кошелёк обычно за несколько минут, и перевод уходит без сжигания TRX.
Читайте также
Влияет ли сумма перевода USDT на расход энергии?
Нет. Контракт выполняет одну и ту же операцию независимо от суммы: перевод 1 USDT и 100 000 USDT стоит одинаково. На расход влияет только то, есть ли у получателя ненулевой баланс USDT на момент перевода.
Получатель раньше держал USDT, но сейчас баланс ровно ноль. Сколько энергии уйдёт?
Снова по «дорогому» тарифу — около 130 285 единиц. Когда баланс обнуляется, ячейка в хранилище контракта освобождается, и следующий входящий перевод снова создаёт запись заново. Важно текущее состояние баланса, а не история адреса.
Есть ли смысл сначала отправить 1 USDT, а потом основную сумму?
Для экономии — нет: первый перевод в любом случае пройдёт по повышенному тарифу, а суммарно вы заплатите за две транзакции больше, чем за одну. Но как тест правильности адреса перед крупной суммой пробный перевод — разумная практика.
Депозитный адрес биржи считается пустым?
Часто да: многие биржи генерируют персональный депозитный адрес под каждого пользователя, и до первого пополнения USDT на нём нет. Если не уверены, проверьте адрес в обозревателе блоков или сразу закладывайте расход ~131 000 энергии.
Цифры 64 285 и 130 285 постоянные или могут измениться?
Могут измениться: расход зависит от кода контракта Tether и тарифов TVM, а они исторически менялись — как и цена энергии (getEnergyFee снижался с 420 до 210 и затем до 100 sun). Поэтому цифры стоит сверять по свежим транзакциям, методика проверки описана в статье.
Что будет, если арендовать 65 000 энергии, а адрес окажется пустым?
Арендованная энергия покроет свою часть, а недостающие ~66 000 единиц сеть спишет сжиганием TRX с вашего кошелька. Если TRX на комиссию не хватит и лимит транзакции окажется ниже фактического расхода, перевод завершится ошибкой, а лимит всё равно спишется. Поэтому статус получателя лучше проверять до отправки.
У других TRC-20 токенов расход тоже удваивается на пустой адрес?
Принцип общий для всех токенов на TVM: первая запись баланса нового держателя дороже обновления существующей. Конкретные числа зависят от кода каждого контракта, поэтому значения 64 285 и 130 285 относятся именно к USDT.
Нужно ли на перевод к пустому адресу больше bandwidth?
Нет. Bandwidth оплачивает размер транзакции в байтах (у перевода USDT это ~345 байт), а размер не зависит от того, держит получатель токен или нет. Удваивается только энергия.


