Gwei چیست؟ محاسبه Gas fee و رفع Insufficient balance و Pending
اگر کیف پول 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 | قیمت هر واحد Gas | Gwei واحد است، نه کوین جداگانه |
| 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 Gwei1 Gwei = 1,000,000,000 Wei1 ETH = 1,000,000,000,000,000,000 Wei1 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 را رفع نمیکند.
۳. 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 tipexecution 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 توکن بومی خواهد بود.
۵. پیش از تأیید چه چیزهایی را ببینیم
- شبکه و Chain ID دقیق را تأیید کنید؛ یک آدرس در زنجیرههای مختلف موجودی متفاوت دارد.
- موجودی توکن بومی Gas را ببینید، نه فقط توکن ارسالی.
- Value، Estimated network fee و Maximum fee budget را جدا بخوانید.
- تشخیص دهید انتقال ساده است یا contract call؛ عدد 21,000 را به قرارداد تحمیل نکنید.
- Recipient، contract method، token approval و allowance را در popup بخوانید.
- اگر تخمین غیرعادی است، فقط 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 gas | Gas Limit در حین اجرا تمام شده | receipt و limit پیشنهادی رسمی را پیش از ارسال مجدد بررسی کنید |
| Replacement transaction underpriced | افزایش fee برای همان nonce کافی نیست | از Speed Up یا Cancel داخلی کیف پول و پیشنهاد آن استفاده کنید |
| Nonce too low | nonce قبلاً استفاده یا تأیید شده است | activity کیف پول و آدرس را در explorer تازهسازی کنید |
| Execution reverted | منطق قرارداد عملیات را رد کرده است | revert reason را پیدا کنید؛ تنظیم fee راهحل منطق قرارداد نیست |
۷. Pending، Speed Up و Cancel
Pending میتواند از fee cap پایین، شلوغی، RPC کند یا تراکنش قبلی با nonce پایینتر ناشی شود. ابتدا explorer همان شبکه را ببینید: نبودن hash میتواند یعنی broadcast انجام نشده؛ وجود وضعیت Pending یعنی وضعیت mempool/chain ملاک است.
- شبکه، آدرس، hash، nonce و وضعیت فعلی را ثبت کنید.
- اگر fee طبیعی و ازدحام موقت است، صبر کنید.
- برای کار فوری از Speed Up داخلی کیف پول استفاده کنید تا replacement با همان nonce و fee کافی بفرستد.
- Cancel معمولاً self-transfer با value صفر و همان nonce است؛ تراکنش اصلی ممکن است زودتر تأیید شود.
- پیش از ثبت 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 بالاتر از منطق عبور نمیکند.
۱۰. چرا تخمین کیف پول تغییر میکند
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. رابطها و پارامترهای شبکه تغییر میکنند؛ هنگام تراکنش به کیف پول زنده و مستندات رسمی رجوع کنید.