- Как решить проблему «превышения газа» в Ethereum‑кошельке при низкой комиссии
- Почему «низкая комиссия» — это не решение
- Что на самом деле увеличивает потребление газа
- Как узнать, сколько газа реально нужно
- Таблица: типичные значения газа для разных операций
- Что делать, если ты уже поставил низкий лимит и транзакция «зависла»
- Частые ошибки, которые усугубляют проблему
- Как лучше делать: практические рекомендации
- Что выбрать в зависимости от ситуации
- Как избежать проблемы в будущем
- Итог: что делать прямо сейчас
Как решить проблему «превышения газа» в Ethereum‑кошельке при низкой комиссии
Ты пытаешься отправить транзакцию — ETH, токен, взаимодействие с децентрализованным приложением — и получаешь ошибку: «Transaction failed: exceeds gas limit». Ты уже снизил комиссию до минимума, но всё равно не проходит. Ты не один. Это одна из самых частых и раздражающих проблем в Ethereum, особенно когда ты не хочешь переплачивать, но и не хочешь ждать сутки, пока транзакция «застынет».
Проблема не в том, что ты «неправильно настроил кошелёк». Проблема в том, что газ — это не просто комиссия. Это объём вычислений, которые сеть должна выполнить. И если твоя транзакция требует больше вычислений, чем ты указал — она падает. Даже если ты заплатил 0.0001 ETH за газ.
Сейчас я покажу тебе, как это исправить — без переплат, без ожидания, без паники. Всё по-человечески, как если бы мы сидели за кофе и ты спросил: «А как же мне теперь отправить токены?»
Почему «низкая комиссия» — это не решение
Многие думают: «Я снизил gas price — значит, сэкономил». Но на самом деле ты снизил цену за единицу газа, а не общий объём газа. Это разные вещи.
Представь, что ты хочешь построить сарай. Тебе нужно 100 кирпичей. Ты решаешь сэкономить — берёшь кирпичи дешевле. Но если тебе нужно 100 кирпичей, а ты купил только 50 — сарай не построится. Даже если каждый кирпич дешевле.
В Ethereum:
- Gas limit — это максимальное количество «кирпичей» (вычислений), которые транзакция может потратить.
- Gas price — цена за один кирпич.
- Если ты поставил gas limit слишком низкий — транзакция не дойдёт до конца, даже если gas price нулевой.
Ошибка «exceeds gas limit» означает: «Ты указал, что хватит 50 кирпичей, а на деле нужно 70». Сеть не может продолжить — и отменяет транзакцию.
Что на самом деле увеличивает потребление газа
Ты не всегда сам понимаешь, почему твоя транзакция требует столько газа. Вот самые частые причины:
- Взаимодействие со смарт-контрактом — особенно если это DeFi-протокол (Uniswap, Aave, Curve и т.д.). Каждый вызов функции (например, «обменять ETH на USDT») требует десятков операций внутри контракта.
- Множественные действия в одной транзакции — например, «разрешить» токен + «обменять» + «вывести» — всё это в одном клике. Это как три операции в одной.
- Неправильные настройки в кошельке — MetaMask и другие кошельки иногда автоподставляют слишком маленький лимит, особенно для новых или редких токенов.
- Сложные NFT-транзакции — когда ты выставляешь NFT на продажу или переводишь его на другой кошелёк с правами — это может потребовать 200–400k газа.
- Очистка разрешений — если ты когда-то разрешал токену тратить твои средства (например, для DEX), и теперь хочешь отозвать это разрешение — это отдельная транзакция, которая требует 100k+ газа.
Ты можешь не знать, что именно вызывает проблему — но ты можешь это проверить.
Как узнать, сколько газа реально нужно
Вот как найти правильный лимит — без догадок.
Шаг 1: Открой транзакцию в Etherscan — найди похожую, которая уже прошла успешно. Например, если ты хочешь обменять USDT на ETH на Uniswap, найди любую свежую транзакцию на Uniswap с тем же токеном. Посмотри на столбец Gas Used.
Шаг 2: Возьми это значение и добавь 10–20% на запас. Например, если в успешной транзакции использовано 180k газа — ставь 200k–220k. Это безопасный запас.
Шаг 3: Если ты не знаешь, где найти похожую транзакцию — открой список транзакций Ethereum, введи название твоего контракта (например, 0x...Uniswap), отсортируй по времени и найди последнюю успешную транзакцию с той же операцией.
Если ты не знаешь, как найти адрес контракта — просто скопируй ссылку на твой DApp (например, https://app.uniswap.org/swap) и введи его в Google: «Uniswap contract address». Ты найдёшь его в десятке результатов.
Таблица: типичные значения газа для разных операций
| Операция | Типичный gas limit | Что может увеличить лимит |
|---|---|---|
| Простой перевод ETH | 21 000 | Если адрес — смарт-контракт (например, биржа) |
| Обмен токенов на Uniswap (ETH ↔ USDT) | 180 000 – 220 000 | Редкие токены, высокая волатильность |
| Разрешение токена (Approve) | 90 000 – 110 000 | Старые, неоптимизированные контракты |
| Отзыв разрешения (Revoke) | 100 000 – 140 000 | Сложные токены с лимитами |
| Вывод NFT на OpenSea | 250 000 – 400 000 | Сложные метаданные, проверки прав |
| Внесение в ликвидность (LP) | 250 000 – 350 000 | Несколько токенов, сложные пулы |
| Создание NFT (mint) | 300 000 – 500 000 | Сложные метаданные, хранение на IPFS |
Эти цифры — ориентиры. Не бери их как закон. Но если ты ставишь 50 000 газа для обмена токенов — ты точно будешь получать ошибку. Не потому что ты «плохой пользователь», а потому что это технически невозможно.
Что делать, если ты уже поставил низкий лимит и транзакция «зависла»
Если ты уже отправил транзакцию с маленьким лимитом — она не исчезает. Она просто «висит» в мемпуле. И ты не можешь её отменить — только «замедлить» или «переписать».
Вот как это исправить:
- Открой кошелёк (MetaMask, Rabby, WalletConnect и т.д.)
- Найди транзакцию в списке — она будет с статусом «Pending» или «Waiting».
- Нажми на неё — появится опция «Speed up» (ускорить) или «Cancel» (отменить).
- Выбирай «Speed up» — это не просто увеличение комиссии. Это создание новой транзакции с тем же nonce, но с более высоким gas price и увеличенным gas limit.
- Вручную установи gas limit на 20–30% выше, чем в оригинальной транзакции (если ты не знаешь точное значение — поставь 300 000 для DeFi-операций).
- Gas price — поставь 1.5–2x выше, чем было. Например, если было 5 Gwei — поставь 10–12 Gwei.
- Подтверди. Транзакция заменит старую. Старая отменится автоматически.
Если у тебя нет кнопки «Speed up» — это значит, что кошелёк не поддерживает эту функцию. Тогда:
- Подожди 1–2 часа — транзакция может отмениться сама.
- Если не отменяется — используй инструмент вроде Etherscan → найди свою транзакцию → скопируй nonce → создай новую транзакцию с тем же nonce, но с большим gas limit и более высоким gas price.
Важно: Nonce — это порядковый номер транзакции. Он должен быть одинаковым, иначе новая транзакция не заменит старую.
Частые ошибки, которые усугубляют проблему
Вот что делают люди — и почему проблема не решается:
- «Я просто увеличу gas price — и всё будет». Нет. Если лимит 21 000, а нужно 200 000 — даже 100 Gwei не спасёт. Ты платишь больше, но транзакция всё равно упадёт.
- «Я ставлю 1 000 000 газа — чтобы точно хватило». Это не опасно, но дорого. Если ты поставишь 1 млн газа, а реально нужно 200 000 — ты заплатишь за 800 000 лишних вычислений. Это как оплатить 10 кирпичей, а использовать только 2.
- «Я не трогаю лимит — только gas price». Это стандартная ошибка новичков. Кошельки по умолчанию ставят лимиты, которые подходят только для простых переводов. Для DeFi — они не подходят.
- «Я использую «быстрый» режим в MetaMask». Он автоматически ставит высокий gas price, но лимит остаётся прежним. Ты платишь больше, но всё равно получаешь ошибку.
- «Я не проверяю транзакции других людей». Ты не знаешь, сколько газа нужно — потому что не смотришь. А это как строить дом без чертежа.
Как лучше делать: практические рекомендации
Вот что я делаю сам, когда работаю с Ethereum:
- Для любых DeFi-операций — всегда ставлю 250 000 как минимум. Даже если мне кажется, что это «простой обмен».
- Для approve/revokes — 120 000. Это безопасный порог.
- Для простых переводов ETH — 50 000. Даже если теоретически достаточно 21 000 — я оставляю запас на случай, если адрес — контракт (например, Binance).
- Никогда не полагаюсь на «авто-лимит» в кошельке. Всегда вручную проверяю и увеличиваю, если это DeFi или NFT.
- Если транзакция «зависла» — сразу использую «Speed up» с увеличенным лимитом. Не жду.
- Для редких токенов — ищу хотя бы одну успешную транзакцию на Etherscan, копирую её лимит и ставлю +20%.
Если ты не знаешь, как посмотреть лимит в MetaMask:
- Нажми «Отправить» → выбери токен → введи сумму.
- Перед подтверждением нажми на «Edit» рядом с «Gas Limit».
- Вручную введи нужное значение (например, 250000).
- Проверь gas price — если сеть спокойна, 5–10 Gwei достаточно.
- Подтверди.
Что выбрать в зависимости от ситуации
Ты не всегда можешь позволить себе переплатить. Вот как действовать в разных сценариях:
| Ситуация | Что делать | Gas limit | Gas price | Риск |
|---|---|---|---|---|
| Простой перевод ETH на кошелёк | Ставь 50 000 | 50 000 | 3–5 Gwei | Низкий |
| Обмен токенов на Uniswap | Всегда увеличивай лимит | 250 000 | 5–8 Gwei | Средний — если лимит слишком низкий |
| Вывод NFT на OpenSea | Не экономь — это критично | 350 000–450 000 | 8–12 Gwei | Высокий — транзакция может не пройти |
| Отзыв разрешения токена | Проверь похожие транзакции | 120 000 | 4–6 Gwei | Средний — если контракт старый |
| Транзакция «зависла» | Используй «Speed up» | На 20–30% выше оригинала | 1.5–2x выше | Низкий — если правильно выставлен nonce |
Если ты не уверен — всегда выбирай лимит выше, чем кажется. Это дешевле, чем ждать 12 часов и терять время.
Как избежать проблемы в будущем
Вот простой чек-лист, который я использую перед каждой транзакцией:
- Что я делаю? (перевод? обмен? approve? mint?)
- Если это DeFi или NFT — я не доверяю авто-лимиту.
- Я ищу похожую транзакцию на Etherscan и копирую её лимит.
- Я добавляю +20% к лимиту.
- Я ставлю gas price на уровне 5–10 Gwei — этого достаточно, если сеть не перегружена.
- Я не нажимаю «Подтвердить» без проверки лимита.
Если ты сделаешь это — ты сократишь количество «превышения газа» до нуля. Это не магия. Это просто внимание к деталям.
Итог: что делать прямо сейчас
Если ты читаешь это — значит, у тебя уже была проблема. Вот что тебе нужно сделать сейчас:
- Открой кошелёк и найди последнюю неудачную транзакцию.
- Скопируй её тип (например, «Swap on Uniswap»).
- Зайди на Etherscan → введи название протокола → найди последнюю успешную транзакцию с той же операцией.
- Посмотри, сколько газа она использовала.
- В кошельке при следующей попытке вручную установи лимит на 20% выше.
- Gas price — 5–8 Gwei — этого хватит.
- Подтверди и жди 2–5 минут.
Если ты уже делал это — и всё равно не работает — возможно, твой кошелёк или сеть испытывают проблемы. Попробуй сменить RPC-узел в MetaMask на https://rpc.ankr.com/eth — это часто помогает при «зависших» транзакциях.
Помни: газ — это не налог. Это плата за вычисления. И если ты не понимаешь, сколько вычислений нужно — ты не можешь правильно его оплатить. Ты не «плохой пользователь». Ты просто не знал, как это работает. Теперь знаешь.
Информация в этой статье носит ознакомительный характер. Транзакции в блокчейне необратимы. Перед отправкой средств всегда проверяй адрес, сумму и параметры газа. При сомнениях проконсультируйся с опытным пользователем или специалистом в области криптовалют.



