
Лимит газа — максимум газа, который транзакции разрешено потратить в Ethereum или другой EVM-сети. Газ измеряет вычисления: каждая операция, которую вызывает транзакция, имеет фиксированную стоимость в газе. Вы платите за фактически использованный газ по цене за единицу, а лимит — заранее заданный предохранитель. Простой перевод ETH всегда использует ровно 21 000 газа; перевод токена или обмен — больше, в зависимости от контракта. Если лимит слишком мал, транзакция падает, а за сожжённый газ вы всё равно платите.
Лимит газа, использованный газ, цена газа
В каждой EVM-транзакции есть три числа, которые легко перепутать:
- Лимит газа — разрешённый вами максимум, кошелёк ставит его по оценке.
- Использованный газ — сколько транзакция реально потратила, известно только после выполнения.
- Цена газа — сколько вы платите за единицу, в gwei. С EIP-1559 это базовая комиссия плюс ваши чаевые, но не больше заданной max fee.
Уплаченная комиссия = использованный газ × фактическая цена газа. Неиспользованная часть лимита не списывается. Лимит 100 000 для перевода, который тратит 21 000, стоит столько же, сколько лимит 21 000. Поэтому кошельки добавляют запас к оценке. Калькулятор комиссии газа перемножает газ и цену для разных действий и сетей.
Типичный расход газа
Значения зависят от контракта, но порядок величин в Ethereum и EVM-сетях вроде BNB Smart Chain, Polygon, Arbitrum и Base такой:
| Действие | Газ | Почему |
|---|---|---|
| Отправить ETH / BNB / POL на адрес | 21 000 | фиксированная базовая стоимость транзакции |
| Перевод ERC-20, у получателя токен уже есть | ~35 000–50 000 | меняются два баланса в контракте |
| Перевод ERC-20, у получателя ноль | ~50 000–65 000 | новая ячейка хранилища дороже |
| Одобрение токена (approve) | ~45 000 | записывается разрешение |
| Обмен на DEX | ~120 000–250 000 | роутер и один или несколько пулов |
| Минт NFT | ~80 000–200 000+ | зависит от контракта коллекции |
Разница между отправкой на новый адрес и на адрес, где токен уже есть, реальна: запись ячейки хранилища из нуля в ненулевое значение — одна из самых дорогих операций EVM. В TRON похожий эффект выражается в энергии для USDT — смотрите статью о комиссии USDT TRC20.
Что будет, если газ кончится
Если выполнение упирается в лимит до завершения, EVM останавливается с ошибкой out of gas. Все изменения состояния откатываются, будто транзакции не было, кроме одного: газ, израсходованный до этого момента, уходит сети. Комиссию вы теряете, а перевод или обмен не происходит. В Etherscan такая транзакция отмечена как неудачная, а использованный газ равен лимиту.
- Найдите неудачную транзакцию в обозревателе: если использованный газ равен лимиту, газ закончился.
- Отправьте снова с большим лимитом. Кошельки обычно оценивают верно; самая частая причина — ручная правка лимита.
- Если не удаётся сама оценка, транзакция откатилась бы по другой причине — например, не хватает токенов или истёк срок обмена. Тогда увеличение лимита не поможет.
Другая ошибка, insufficient funds for gas, означает, что баланса нативной монеты не хватает на лимит газа × max fee ещё до начала. Ей посвящена отдельная статья.
Лимит газа блока
У каждого блока тоже есть лимит газа — сколько газа могут израсходовать все его транзакции вместе. В Ethereum валидаторы голосуют за изменение, и лимит несколько раз поднимали, что увеличивает пропускную способность. По EIP-1559 базовая комиссия целится в половину лимита блока: если блоки полнее цели, базовая комиссия растёт до 12,5% за блок, если пустее — снижается. Одна транзакция не может потратить больше лимита блока, что ограничивает размер вызова контракта. Калькулятор max fee EIP-1559 покажет, как быстро может расти базовая комиссия.
Лимит газа в других сетях
Понятие переносится на любую EVM-сеть со своей нативной монетой для газа: BNB в BNB Smart Chain, POL в Polygon, ETH в Arbitrum, Base и Optimism, AVAX в Avalanche C-Chain. Сети второго уровня добавляют плату за публикацию данных в Ethereum, поэтому итоговая стоимость в Arbitrum — не просто газ × цена газа L2. Не-EVM сети используют другие модели: у Solana вычислительные единицы с лимитом на транзакцию, у TRON — энергия и bandwidth.
На практике
Когда оплачиваете заказ KOT.CASH из EVM-кошелька, оставьте лимит газа кошельку. Держите немного нативной монеты на газ: для депозита USDT ERC-20 нужен немного ETH, для USDT BEP-20 — немного BNB. Если платёж упал с out of gas, USDT не покидал кошелёк; отправьте снова на тот же заказ, пока он открыт.
Частые вопросы
Что такое лимит газа?
Максимум газа, который может потратить транзакция. Платите вы только за использованный газ, а лимит защищает от бесконечного выполнения.
Почему перевод ETH — это 21 000 газа?
21 000 — фиксированная внутренняя стоимость любой транзакции Ethereum; простой перевод больше ничего не делает.
Что будет, если лимит газа слишком мал?
Транзакция упадёт с out of gas, изменения откатятся, а израсходованный газ всё равно оплачивается.
Больший лимит газа стоит дороже?
Сам по себе нет. Комиссия = использованный газ × цена; неиспользованный газ не списывается.
Какой лимит газа нужен для перевода ERC-20?
Обычно около 35 000–65 000 газа, больше, если у получателя этого токена ещё нет.