روش پایه

Gwei چیست؟ محاسبه Gas fee و رفع Insufficient balance و Pending

کاور راهنمای Gwei و عیب‌یابی Gas fee
خلاصه یک‌خطی: Gas مقدار کار محاسباتی است و Gwei واحد رایج قیمت هر Gas. کارمزد واقعی از Gas Used × Effective Gas Price به دست می‌آید. Gas Limit و Max fee سقف بودجه‌اند و لزوماً مبلغ نهایی کسرشده نیستند.

اگر کیف پول 12 Gwei، مقدار Gas Limit برابر 150,000 و Max fee برابر 0.003 ETH نشان دهد، هزینه واقعی چقدر است؟ چرا با وجود توکن آزمایشی پیام کمبود موجودی می‌بینید؟ برای Pending باید Speed Up بزنید، Cancel کنید یا صبر کنید؟ این راهنما واحدها، فیلدهای EIP-1559، سه محاسبه نمونه و ترتیب امن عیب‌یابی را یکجا توضیح می‌دهد. این صفحه قیمت لحظه‌ای Gas ارائه نمی‌کند.

خواندن هزینه کیف پول در ۳۰ ثانیه

فیلدپاسخ چه پرسشی استبرداشت اشتباه رایج
Gas Limitتراکنش حداکثر چه مقدار Gas می‌تواند مصرف کندسقف است، نه مصرف قطعی؛ افزایش آن سرعت را زیاد نمی‌کند
Gas Usedواقعاً چه مقدار محاسبه مصرف شدمعمولاً پس از اجرا مشخص می‌شود
Gwei / fee per gasقیمت هر واحد GasGwei واحد است، نه کوین جداگانه
Max feeبیشترین قیمت مجاز برای هر Gasسقف بودجه است، نه برداشت قطعی
Network feeتخمین کل کیف پول با وضعیت فعلیبا شبکه و وضعیت قرارداد تغییر می‌کند

در شبکه EVM مبتنی بر EIP-1559، رابطه اصلی را این‌گونه بخوانید: execution fee = Gas Used × Effective Gas Price. مبلغ ارسالی جداست؛ موجودی معمولاً باید هم value و هم بودجه کارمزد را پوشش دهد.

۱. تبدیل Wei، Gwei و ETH

Wei کوچک‌ترین واحد Ether و Gwei واحد خواناتر برای قیمت Gas است. هر سه فقط یک مقدار را با دقت متفاوت بیان می‌کنند:

  • 1 ETH = 1,000,000,000 Gwei
  • 1 Gwei = 1,000,000,000 Wei
  • 1 ETH = 1,000,000,000,000,000,000 Wei
  • 1 Gwei = 0.000000001 ETH

۲۰ Gwei یعنی قیمت هر Gas، نه «۲۰ توکن». در زنجیره EVM با توکن بومی دیگر، کیف پول ممکن است همچنان قیمت را با Gwei نشان دهد اما تسویه با توکن بومی همان شبکه انجام می‌شود. برای تبدیل دقیق از مبدل Gwei / Wei / ETH استفاده کنید؛ محاسبه در مرورگر انجام می‌شود و قیمت لحظه‌ای نیست.

۲. Gas Used، Gas Limit و کارمزد کل

Gas حجم کار محاسباتی EVM را اندازه می‌گیرد. انتقال ساده ETH از یک EOA به EOA دیگر، بدون داده اضافی، معمولاً 21,000 Gas مصرف می‌کند. این عدد برای انتقال توکن، Swap، Mint یا فراخوانی قرارداد معتبر نیست، زیرا مسیر اجرا متفاوت است.

Gas Limit مرز ایمنی است، نه قیمت

اگر limit برابر 120,000 باشد ولی فقط 83,000 مصرف شود، معمولاً هزینه بر پایه 83,000 محاسبه می‌شود. اگر limit پیش از پایان اجرا تمام شود، تراکنش می‌تواند با Out of gas شکست بخورد و محاسبات مصرف‌شده همچنان هزینه داشته باشد.

Value را از Network fee جدا کنید

در ارسال 0.1 ETH، مقدار 0.1 ETH همان value است و کارمزد اجرا جداگانه محاسبه می‌شود. در انتقال ERC-20، موجودی توکن و موجودی توکن بومی Gas دو عدد مستقل‌اند؛ بنابراین داشتن توکن لزوماً پیام Insufficient funds را رفع نمی‌کند.

اشتباه متداول: USDT، توکن پروژه یا دارایی بریج‌شده معمولاً هزینه Gas شبکه را نمی‌پردازد؛ Gas به توکن بومی همان شبکه نیاز دارد.

۳. EIP-1559: Base fee، Priority fee و Max fee

فیلدمعناتعیین‌کننده
Base feeقیمت پایه لازم برای بلاکپروتکل بر اساس استفاده بلاک قبل تنظیم می‌کند؛ در اتریوم سوزانده می‌شود
Max priority feeبیشترین انعام به اعتبارسنجکاربر یا پیشنهاد کیف پول
Max fee per gasسقف مجموع Base fee و انعام برای هر Gasحد قیمتی که کاربر اجازه می‌دهد
  • effective tip = min(Max priority fee, Max fee − Base fee)
  • effective gas price = Base fee + effective tip
  • execution fee = Gas Used × effective gas price

اگر Base fee از Max fee بالاتر رود، تراکنش ممکن است تا کاهش Base fee یا جایگزینی آن Pending بماند. فاصله سقف تا قیمت واقعی لزوماً کسر نمی‌شود.

در Layer 2 ممکن است کارمزد اجرای L2 و هزینه جداگانه داده یا settlement روی L1 وجود داشته باشد. breakdown کامل کیف پول یا explorer را ببینید؛ عدد Gwei به‌تنهایی همه هزینه را نشان نمی‌دهد.

۴. سه نمونه محاسبه

انتقال ساده

21,000 Gas × 12 Gwei = 252,000 Gwei = 0.000252 ETH. این فقط کارمزد اجراست؛ مقدار ETH ارسالی جداگانه افزوده می‌شود.

تعامل با قرارداد

اگر Gas Used برابر 150,000 و Effective Price برابر 3 Gwei باشد، هزینه 150,000 × 3 = 450,000 Gwei = 0.00045 توکن بومی است. این عملیات را نباید انتقال 21,000-Gas فرض کرد.

سقف بودجه در برابر مبلغ نهایی

با Gas Limit برابر 200,000 و Max fee برابر 12 Gwei، بودجه بالایی 0.0024 توکن بومی است. اگر 100,000 Gas با قیمت مؤثر 10 Gwei مصرف شود، هزینه نهایی اجرا 0.001 توکن بومی خواهد بود.

سه عدد متفاوت: تبدیل واحد، تخمین قبل از ارسال و receipt واقعی را با هم یکی نگیرید. برای تراکنش تأییدشده، receipt اکسپلورر مرجع Gas Used و Effective Gas Price است.

۵. پیش از تأیید چه چیزهایی را ببینیم

  1. شبکه و Chain ID دقیق را تأیید کنید؛ یک آدرس در زنجیره‌های مختلف موجودی متفاوت دارد.
  2. موجودی توکن بومی Gas را ببینید، نه فقط توکن ارسالی.
  3. Value، Estimated network fee و Maximum fee budget را جدا بخوانید.
  4. تشخیص دهید انتقال ساده است یا contract call؛ عدد 21,000 را به قرارداد تحمیل نکنید.
  5. Recipient، contract method، token approval و allowance را در popup بخوانید.
  6. اگر تخمین غیرعادی است، فقط limit را بالا نبرید؛ simulation و وضعیت رسمی dapp را بررسی کنید.

۶. جدول خطاهای رایج

خطامعنای محتملاولین اقدام امن
Insufficient funds for gasتوکن بومی برای value و سقف fee کافی نیستشبکه و native balance را بررسی کنید؛ در تست‌نت فقط Faucet رسمی
Gas required exceeds allowance / estimate failedقرارداد احتمالاً revert می‌کند یا state/input نادرست استخطای dapp و simulation را بخوانید؛ limit را کورکورانه زیاد نکنید
Out of gasGas Limit در حین اجرا تمام شدهreceipt و limit پیشنهادی رسمی را پیش از ارسال مجدد بررسی کنید
Replacement transaction underpricedافزایش fee برای همان nonce کافی نیستاز Speed Up یا Cancel داخلی کیف پول و پیشنهاد آن استفاده کنید
Nonce too lownonce قبلاً استفاده یا تأیید شده استactivity کیف پول و آدرس را در explorer تازه‌سازی کنید
Execution revertedمنطق قرارداد عملیات را رد کرده استrevert reason را پیدا کنید؛ تنظیم fee راه‌حل منطق قرارداد نیست

۷. Pending، Speed Up و Cancel

Pending می‌تواند از fee cap پایین، شلوغی، RPC کند یا تراکنش قبلی با nonce پایین‌تر ناشی شود. ابتدا explorer همان شبکه را ببینید: نبودن hash می‌تواند یعنی broadcast انجام نشده؛ وجود وضعیت Pending یعنی وضعیت mempool/chain ملاک است.

  1. شبکه، آدرس، hash، nonce و وضعیت فعلی را ثبت کنید.
  2. اگر fee طبیعی و ازدحام موقت است، صبر کنید.
  3. برای کار فوری از Speed Up داخلی کیف پول استفاده کنید تا replacement با همان nonce و fee کافی بفرستد.
  4. Cancel معمولاً self-transfer با value صفر و همان nonce است؛ تراکنش اصلی ممکن است زودتر تأیید شود.
  5. پیش از ثبت hash و nonce، account را reset نکنید و چند بار تراکنش تکراری نفرستید.

پاک‌کردن history محلی کیف پول تراکنش زنجیره‌ای را حذف نمی‌کند. پس از تأیید تراکنش اصلی، replacement دیگر آن را برنمی‌گرداند.

۸. اسکرین‌شات‌های واقعی از پشتیبانی رسمی MetaMask

سه تصویر زیر از محتوای رسمی MetaMask Support هستند و تصویر تولیدشده نیستند. رابط ممکن است تغییر کند؛ از آن‌ها برای تشخیص نوع پیام استفاده کنید، نه نقشه دقیق دکمه‌ها.

۹. مشکلات ویژه Gas در تست‌نت

  • شبکه اشتباه: ممکن است در یک تست‌نت توکن داشته باشید اما در شبکه فعلی هیچ موجودی نباشد.
  • توکن اشتباه: توکن پروژه همیشه توکن بومی Gas نیست.
  • محدودیت Faucet: cooldown، سقف روزانه یا eligibility با بالا بردن fee حل نمی‌شود.
  • RPC ناپایدار: estimate یا Pending display ممکن است قدیمی باشد؛ با explorer رسمی مقایسه کنید.
  • وضعیت قرارداد آزمایشی: pause، تمام‌شدن quota یا تغییر task می‌تواند باعث revert شود؛ Gas Limit بالاتر از منطق عبور نمی‌کند.
مرز امنیت: هیچ عیب‌یابی معتبر تست‌نت به seed phrase، private key، خرید test token یا انتقال دارایی مین‌نت نیاز ندارد.

۱۰. چرا تخمین کیف پول تغییر می‌کند

Estimate یک simulation بر پایه Base fee فعلی، وضعیت mempool، پاسخ RPC، nonce حساب، storage قرارداد و مسیر اجراست. هرکدام می‌توانند پیش از ورود تراکنش به بلاک تغییر کنند.

در Swap و Mint، قیمت، deadline، quota، allowance و تراکنش کاربران دیگر مسیر را عوض می‌کند. Gas Limit بالاتر همیشه امن‌تر نیست؛ اگر recipient یا approval اشتباه باشد، بودجه بزرگ‌تر محافظت ایجاد نمی‌کند.

برای بررسی نهایی receipt را بخوانید: network، status، block، Gas Used، Effective Gas Price، value و events. Preview برای تصمیم قبل از ارسال است؛ receipt مدرک بعد از اجراست.

۱۱. چک‌لیست قبل و بعد از تراکنش

پیش از امضا

  • دامنه رسمی، شبکه درست و حساب موردنظر.
  • موجودی کافی توکن بومی و تفکیک روشن value از fee.
  • قرارداد، method، recipient، مقدار approval و سقف بودجه خوانده شده است.
  • هیچ seed phrase، private key یا واریز دارایی واقعی درخواست نمی‌شود.

پس از ارسال

  • hash را ذخیره و در explorer همان شبکه بررسی کنید.
  • در Failed ابتدا receipt یا revert reason را بخوانید.
  • در Pending پیش از Speed Up یا Cancel، nonce را ثبت کنید.
  • تراکنش تکراری نفرستید و approvalهای اضافی را لغو کنید.

پرسش‌های رایج

Gwei چیست و چه ارتباطی با ETH و Wei دارد؟

Gwei واحد رایج نمایش قیمت هر واحد Gas در اتریوم و شبکه‌های EVM است. هر 1 Gwei برابر 10^9 Wei و 10^-9 ETH است؛ هر 1 ETH نیز یک میلیارد Gwei است. Gwei توکن مستقلی نیست.

در کیف پول توکن دارم؛ چرا پیام Insufficient funds می‌بینم؟

Gas با توکن بومی همان شبکه پرداخت می‌شود. داشتن USDT، توکن پروژه یا دارایی بریج‌شده به معنی داشتن Gas نیست. موجودی بومی باید هم مبلغ ارسالی و هم بودجه کارمزد را پوشش دهد.

آیا بالا بردن Gas Limit تراکنش را سریع‌تر می‌کند؟

معمولاً خیر. Gas Limit سقف محاسبات مجاز تراکنش است، نه پیشنهاد قیمت برای سرعت. Effective Gas Price، شلوغی شبکه و انتخاب اعتبارسنج بر زمان ورود به بلاک اثر مستقیم‌تری دارند.

آیا می‌توان تراکنش Pending را لغو کرد؟

گزینه Cancel معمولاً تراکنش جایگزینی با همان nonce و کارمزد بیشتر می‌فرستد. موفقیت آن تضمین‌شده نیست و پس از تأیید تراکنش اصلی دیگر لغو ممکن نیست. ابتدا وضعیت را در اکسپلورر همان شبکه بررسی کنید.

اگر تراکنش Failed شود باز هم Gas کم می‌شود؟

اگر تراکنش وارد بلاک شده و پس از اجرا revert کرده باشد، محاسبات مصرف‌شده معمولاً هزینه دارد. اگر فقط شبیه‌سازی کیف پول شکست خورده و چیزی broadcast نشده باشد، هزینه زنجیره‌ای ایجاد نمی‌شود.

برای Gas تست‌نت باید با پول واقعی توکن بخرم؟

خیر. توکن بومی آزمایشی را فقط از Faucet رسمی همان شبکه بگیرید. هر صفحه‌ای که برای Gas تست‌نت پول، دارایی مین‌نت، کلید خصوصی یا عبارت بازیابی می‌خواهد باید فوراً بسته شود.

منابع رسمی

آخرین بررسی: 2026-08-18. رابط‌ها و پارامترهای شبکه تغییر می‌کنند؛ هنگام تراکنش به کیف پول زنده و مستندات رسمی رجوع کنید.