Ethereum गैस शुल्क समझें: बेस फ़ी, प्रायोरिटी फ़ी और गैस लिमिट
Ethereum में गैस यूनिट, गैस लिमिट, बेस फ़ी, प्रायोरिटी फ़ी और अधिकतम फ़ी का अर्थ जानें, फिर किसी ट्रांज़ैक्शन की वास्तविक लागत की गणना करें।
इस गाइड मेंगैस गणना के काम को मापती है, भेजी जाने वाली राशि को नहीं
संक्षिप्त सारांश
Ethereum में गैस फ़ी निकालने के लिए ट्रांज़ैक्शन में वास्तव में इस्तेमाल हुई गैस को उस ब्लॉक के प्रभावी गैस मूल्य से गुणा किया जाता है जिसमें ट्रांज़ैक्शन शामिल हुआ। प्रोटोकॉल बेस फ़ी तय करके उसे बर्न करता है; प्रायोरिटी फ़ी वैलिडेटर को मिल सकती है। अधिकतम फ़ी कीमत की सीमा है, ज़रूरी नहीं कि आप उतनी ही फ़ी दें।
गैस गणना के काम को मापती है, भेजी जाने वाली राशि को नहीं
Ethereum में गैस वह इकाई है जो EVM में किसी ट्रांज़ैक्शन को प्रोसेस करने के लिए आवश्यक गणना के काम को मापती है। साधारण ETH ट्रांसफ़र में तुलनात्मक रूप से कम काम लगता है; टोकन भेजने या स्मार्ट कॉन्ट्रैक्ट की कई शर्तें चलाने में अधिक काम लग सकता है। इसलिए समान मात्रा में ETH भेजने वाले दो ट्रांज़ैक्शन अलग-अलग मात्रा में गैस इस्तेमाल कर सकते हैं, अगर वे अलग काम करते हैं।
गैस यूनिट काम की मात्रा बताती हैं और गैस मूल्य बताता है कि आप हर यूनिट के लिए कितना ETH देना चाहते हैं। दोनों को गुणा करने पर फ़ी मिलती है। गैस लिमिट वह अधिकतम यूनिट संख्या है जिसे ट्रांज़ैक्शन इस्तेमाल कर सकता है, जबकि maxFeePerGas प्रति यूनिट कीमत की सीमा है। ये एक ही “अधिकतम फ़ी” के अलग नाम नहीं हैं।
यह गाइड Ethereum मेननेट पर सामान्य EIP-1559 ट्रांज़ैक्शन के बारे में है। दूसरे ब्लॉकचेन और लेयर 2 नेटवर्क में फ़ी की संरचना, भुगतान की संपत्ति और स्क्रीन पर दिखने वाले नाम अलग हो सकते हैं। Ethereum के शब्दों को हर नेटवर्क पर अपने-आप लागू न करें। Ethereum.org की गैस गाइड और ट्रांज़ैक्शन गाइड इन फ़ील्ड की परिभाषा देते हैं।
गैस का इस्तेमाल ट्रांज़ैक्शन के काम पर निर्भर करता है
EVM गणना और स्टेट में बदलाव के लिए गैस लागत तय करता है। कॉन्ट्रैक्ट कॉल में फ़ंक्शन चलाना, स्टोरेज पढ़ना या लिखना और इवेंट दर्ज करना शामिल हो सकता है—ऐसे काम जो साधारण ट्रांसफ़र में नहीं होते। अधिक ऑपरेशन या लंबा एक्ज़ीक्यूशन पथ अधिक गैस इस्तेमाल कर सकता है। इस्तेमाल की गई गैस, भेजे गए ETH की मात्रा या टोकन के बाज़ार मूल्य को गुणा करके नहीं निकाली जाती।
ETH ट्रांसफ़र, टोकन ट्रांसफ़र और dapp कॉल अलग-अलग काम करते हैं। कॉन्ट्रैक्ट कॉल अतिरिक्त फ़ंक्शन चला सकती हैं और स्टोरेज पढ़ या बदल सकती हैं, इसलिए इनमें साधारण ट्रांसफ़र से अधिक गैस लग सकती है। शामिल ट्रांज़ैक्शन की रिसीट में वास्तव में इस्तेमाल हुई गैस का मान दर्ज होता है।
Ethereum.org सामान्य ETH ट्रांसफ़र के उदाहरण के रूप में 21,000 गैस देता है। यह सरल ट्रांसफ़र का संदर्भ है, कॉन्ट्रैक्ट कॉल के लिए दोबारा इस्तेमाल करने योग्य गैस लिमिट नहीं; उनका काम चलने वाले फ़ंक्शन और स्टोरेज एक्सेस पर निर्भर करता है।
नेटवर्क गैस किसी सेवा के निकासी शुल्क से भी अलग है। एक्सचेंज संचालन शुल्क जोड़ सकता है या अपनी फ़ी सूची लागू कर सकता है। ऑन-चेन गैस नेटवर्क द्वारा प्रोसेस किए गए गणना कार्य के लिए दी जाती है। निकासी स्क्रीन पर एक ही राशि दिखे तो जाँचें कि उसमें प्लेटफ़ॉर्म शुल्क और नेटवर्क लागत दोनों शामिल हैं या नहीं।
गैस लिमिट और इस्तेमाल की गई गैस अलग-अलग संख्याएँ हैं
गैस लिमिट (gasLimit) वह अधिकतम गैस यूनिट संख्या है जिसे ट्रांज़ैक्शन खर्च कर सकता है। इस्तेमाल की गई गैस (gasUsed) वह मात्रा है जो एक्ज़ीक्यूशन पूरा होने पर वास्तव में खर्च हुई। लिमिट बढ़ाने का अर्थ यह नहीं कि उसकी हर यूनिट का शुल्क लगेगा। शामिल ट्रांज़ैक्शन में फ़ी वास्तविक गैस उपयोग और प्रभावी गैस मूल्य के आधार पर होती है; लिमिट की अप्रयुक्त यूनिट खर्च नहीं होतीं।
अगर ट्रांज़ैक्शन खुद एक्ज़ीक्यूशन के दौरान गैस खत्म कर दे, तो पूरी गैस लिमिट खर्च होती है और ट्रांज़ैक्शन विफल होता है। उसके स्टेट बदलाव वापस हो जाते हैं, लेकिन की गई गणना की लागत बनी रहती है। ऊँची लिमिट अधिक काम की अनुमति देती है, पर गैस की अधिकतम संभावित लागत भी बढ़ाती है: gasLimit × maxFeePerGas। वास्तविक शुल्क फिर भी वास्तव में इस्तेमाल हुई गैस और प्रभावी कीमत पर निर्भर है।
गैस लिमिट वास्तविक इस्तेमाल का अनुमान नहीं, बल्कि एक अधिकतम सीमा है। यह प्रति-यूनिट कीमत नहीं है; कीमत बढ़ाने से गैस यूनिट की कमी दूर नहीं होती। अगर आपको समझ नहीं आता कि कॉल क्या चलाएगी, तो मनमाने ढंग से लिमिट बदलने के बजाय वॉलेट या ऐप की आधिकारिक जानकारी देखें।
ब्लॉक स्पेस की माँग के साथ बेस फ़ी बदलती है
EIP-1559 ट्रांज़ैक्शन में बेस फ़ी वह प्रति-गैस कीमत है जिसे प्रोटोकॉल किसी ब्लॉक के लिए तय करता है। जिस ब्लॉक में ट्रांज़ैक्शन शामिल होगा, उसकी बेस फ़ी चुकाने के लिए अधिकतम फ़ी पर्याप्त होनी चाहिए। पिछले ब्लॉक में लक्ष्य की तुलना में कितना गैस इस्तेमाल हुआ, इसके अनुसार प्रोटोकॉल हर ब्लॉक पर बेस फ़ी समायोजित करता है। यह बढ़ या घट सकती है; हमेशा के लिए तय दर नहीं है।
वास्तव में इस्तेमाल हुई गैस के लिए बेस फ़ी वाला हिस्सा बर्न हो जाता है। वैलिडेटर को यह हिस्सा टिप के रूप में नहीं मिलता। बेस फ़ी हर ब्लॉक में बदलती है, इसलिए लंबित ट्रांज़ैक्शन को शामिल किए जाने के समय सबमिट करते समय की तुलना में अलग बेस फ़ी का सामना करना पड़ सकता है।
gwei, ETH की छोटी इकाई है: 1 gwei = 0.000000001 ETH। गैस मूल्य बढ़ने पर, गैस उपयोग समान रहने के बावजूद ETH में लागत बढ़ती है। गैस अधिक इस्तेमाल होने पर, प्रति यूनिट कीमत समान रहने के बावजूद लागत बढ़ती है। ETH की डॉलर कीमत से अलग भी ये दोनों बदलाव ETH में फ़ी बदल सकते हैं।
प्रायोरिटी फ़ी एक टिप है जो शामिल होने की संभावना बढ़ा सकती है
प्रायोरिटी फ़ी प्रति गैस यूनिट वह टिप है जिसे आप ट्रांज़ैक्शन शामिल करने वाले वैलिडेटर को देने की पेशकश करते हैं। उपयोगकर्ता सीमित ब्लॉक स्पेस के लिए प्रतिस्पर्धा करते हैं, इसलिए दूसरी स्थितियाँ समान हों तो अधिक टिप ट्रांज़ैक्शन को आकर्षक बना सकती है। यह जल्दबाज़ी का संकेत देती है, लेकिन किसी खास ब्लॉक या समय तक शामिल होने की गारंटी नहीं देती।
स्क्रीन पर प्रायोरिटी फ़ी का बड़ा अंक दिखना और ट्रांज़ैक्शन को अधिक गैस यूनिट चाहिए होना अलग बातें हैं। प्रायोरिटी फ़ी प्रति यूनिट कीमत बदलती है; गैस लिमिट अनुमत काम को सीमित करती है। पर्याप्त गैस न हो तो ऊँची टिप के बावजूद जटिल कॉन्ट्रैक्ट कॉल विफल हो सकती है। इसके उलट, पर्याप्त गैस यूनिट होने से मदद नहीं मिलेगी अगर कीमत की सीमा ब्लॉक की बेस फ़ी नहीं चुका सकती।
ट्रांज़ैक्शन चुनते समय वैलिडेटर ब्लॉक स्पेस और दूसरी शर्तों पर भी ध्यान देते हैं। बेस फ़ी और उपलब्ध ब्लॉक स्पेस समय के साथ बदलते हैं; बड़ी टिप भी किसी खास समय पर शामिल होने की गारंटी नहीं देती। EIP-1559 विनिर्देश बेस फ़ी और प्रायोरिटी फ़ी की अलग भूमिकाएँ तय करता है और उनकी संयुक्त प्रभावी कीमत को अधिकतम फ़ी के भीतर सीमित करता है।
अधिकतम फ़ी कीमत की सीमा है, वास्तविक कीमत नहीं
maxFeePerGas वह अधिकतम प्रति-यूनिट कीमत है जिसे आप चुकाने को तैयार हैं। maxPriorityFeePerGas प्रति यूनिट अधिकतम टिप है। ट्रांज़ैक्शन शामिल होने पर प्रभावी कीमत बेस फ़ी और दोनों सीमाओं के भीतर आने वाली टिप को जोड़कर बनती है। लागू टिप, maxPriorityFeePerGas और maxFeePerGas - baseFee में से कम राशि तक सीमित होती है, इसलिए प्रभावी कीमत अधिकतम फ़ी से ऊपर नहीं जाती।
मान लें अधिकतम फ़ी 30 gwei, अधिकतम टिप 2 gwei और ब्लॉक की बेस फ़ी 18 gwei है। तब टिप 2 gwei हो सकती है और प्रभावी कीमत 20 gwei होगी। केवल इसलिए कि अधिकतम सीमा 30 gwei है, ट्रांज़ैक्शन अपने-आप 30 gwei नहीं चुकाता। अगर बेस फ़ी 31 gwei हो जाए, तो 30 gwei की सीमा उस ब्लॉक के लिए पर्याप्त नहीं होगी और ट्रांज़ैक्शन उसमें शामिल नहीं हो सकता।
बेस फ़ी अधिकतम फ़ी के करीब आने पर टिप के लिए जगह कम बचती है। आपने अधिकतम टिप 5 gwei रखी हो, फिर भी अगर maxFeePerGas - baseFee केवल 1 gwei है, तो लागू टिप अधिकतम 1 gwei होगी। दोनों सीमाओं को मौजूदा बेस फ़ी के साथ देखें।

उदाहरण से वास्तविक फ़ी और उसकी अधिकतम सीमा निकालें
नीचे दिए गए आँकड़े काल्पनिक हैं और केवल गणना समझाने के लिए हैं। मान लें गैस लिमिट 30,000 यूनिट है, ट्रांज़ैक्शन 24,000 यूनिट इस्तेमाल करता है और 18 gwei बेस फ़ी वाले ब्लॉक में शामिल होता है। अधिकतम टिप 2 gwei और अधिकतम फ़ी 30 gwei रखें। लागू टिप min(2, 30 - 18) = 2 gwei है, इसलिए प्रभावी कीमत 18 + 2 = 20 gwei है।
वास्तविक गैस फ़ी 24,000 × 20 = 480,000 gwei है। 1 ETH = 1,000,000,000 gwei होने के कारण यह 0.00048 ETH है। बेस फ़ी का हिस्सा 24,000 × 18 = 432,000 gwei, यानी 0.000432 ETH है। टिप का हिस्सा 24,000 × 2 = 48,000 gwei, यानी 0.000048 ETH है। दोनों हिस्सों का योग वास्तविक फ़ी 0.00048 ETH है।
पूरी गैस लिमिट को दोनों कीमत सीमाओं से गुणा करने पर 30,000 × 30 = 900,000 gwei, यानी 0.0009 ETH मिलता है। इन सेटिंग में, अगर पूरी लिमिट और प्रति-यूनिट अधिकतम कीमत दोनों इस्तेमाल हों तो यह गैस लागत की अधिकतम सीमा है। यह उदाहरण की वास्तविक फ़ी नहीं है। रिसीवर को भेजी गई ETH राशि गैस फ़ी से अलग है। अधिकतम सीमा को तय शुल्क या फ़ी को ट्रांसफ़र का प्रतिशत न समझें। ये समझाने के लिए काल्पनिक संख्याएँ हैं, नेटवर्क का मौजूदा भाव नहीं।
विफल ट्रांज़ैक्शन में भी गैस खर्च हो सकती है
वॉलेट में “विफल” दिखने पर यह न मानें कि गैस फ़ी लौट आएगी। ट्रांज़ैक्शन ब्लॉक में शामिल होकर EVM एक्ज़ीक्यूशन शुरू करने के बाद रिवर्ट हो, तो स्टेट में बदलाव वापस हो सकता है, जबकि गणना में इस्तेमाल हुई गैस की लागत बनी रहती है। अगर ट्रांज़ैक्शन खुद एक्ज़ीक्यूशन के दौरान गैस खत्म कर दे, तो पूरी गैस लिमिट खर्च होती है। इच्छित नतीजा न मिलने पर भी गणना का काम हुआ था।
जो ट्रांज़ैक्शन शामिल होने से पहले वैलिडेशन पास नहीं करता, वह अलग स्थिति है। उदाहरण के लिए, ज़रूरत से कम गैस लिमिट के साथ भेजा गया ETH ट्रांसफ़र ब्लॉक में आने से पहले अस्वीकार हो सकता है; उस स्थिति में एक्ज़ीक्यूशन गैस खर्च नहीं होती। “शामिल होने से पहले अस्वीकार” और “शामिल होने के बाद एक्ज़ीक्यूशन में रिवर्ट”—ये एक जैसी स्थितियाँ नहीं हैं।
ट्रांज़ैक्शन हैश खोलकर उसका स्टेटस, इस्तेमाल की गई गैस, प्रभावी गैस कीमत और एक्ज़ीक्यूशन का नतीजा देखें। वॉलेट का छोटा त्रुटि संदेश कारण नहीं बताता हो सकता है। Ethereum.org शामिल होने से पहले हुए वैलिडेशन अस्वीकार और एक्ज़ीक्यूशन के दौरान गैस खत्म होने वाले ट्रांज़ैक्शन में अंतर बताता है।
लिमिट, कीमत और भेजी जाने वाली राशि अलग-अलग देखें
साइन करने से पहले पुष्टि करें कि आप किस नेटवर्क पर हैं और ट्रांज़ैक्शन साधारण ट्रांसफ़र है या कॉन्ट्रैक्ट कॉल। वॉलेट अनुमानित फ़ी, गैस लिमिट, अनुमानित बेस फ़ी, प्रायोरिटी फ़ी की सीमा, अधिकतम फ़ी की सीमा और भेजी जाने वाली ETH या टोकन राशि दिखा सकता है। ये मान अलग-अलग सवालों के जवाब देते हैं। अगर स्क्रीन केवल अधिकतम गैस लागत दिखाती है, तो उसे पक्का कटने वाला शुल्क न मानें; विवरण खोलकर देखें कि वह किस सीमा को दर्शाती है।
वॉलेट फ़ी का अनुमान अपने-आप भर सकते हैं, इसलिए अक्सर हर फ़ील्ड को हाथ से बदलने की ज़रूरत नहीं पड़ती। ये उस समय की नेटवर्क स्थिति पर आधारित अनुमान हैं; ट्रांज़ैक्शन कब शामिल होगा या उसकी अंतिम लागत क्या होगी, इसकी गारंटी नहीं। कीमत की कम सीमा ट्रांज़ैक्शन को इंतज़ार में रख सकती है। कॉल को समझे बिना लिमिट या टिप बढ़ाने से संभावित लागत बढ़ सकती है, पर मूल समस्या हल नहीं होती। मौजूदा मान देखें और तभी साइन करें जब ट्रांज़ैक्शन आपको समझ में आए।
यह व्याख्या Ethereum मेननेट के सामान्य ट्रांज़ैक्शन पथ के लिए है। लेयर 2 या किसी दूसरे चेन में अतिरिक्त डेटा फ़ी दिख सकती है, फ़ी का एसेट अलग हो सकता है या गणना अलग तरीके से हो सकती है। दस्तावेज़ देखे बिना Ethereum का फ़ॉर्मूला दूसरे नेटवर्क पर लागू न करें। गंतव्य नेटवर्क और पते के लिए क्रिप्टो ट्रांसफ़र चेकलिस्ट देखें; कॉन्ट्रैक्ट को टोकन इस्तेमाल करने की अलग अनुमति के लिए टोकन अप्रूवल गाइड पढ़ें।
आम सवाल
Q1विफल ट्रांज़ैक्शन में भी ETH की लागत क्यों हो सकती है?
अगर ट्रांज़ैक्शन शामिल होकर एक्ज़ीक्यूशन शुरू कर चुका था, तो स्टेट में बदलाव रिवर्ट होने पर भी गणना गैस खर्च कर सकती है। एक्ज़ीक्यूशन विफलता और शामिल होने से पहले अस्वीकार होने का अंतर जानने के लिए ट्रांज़ैक्शन हैश देखें।
Q2क्या maxFeePerGas मेरे वॉलेट में दिखने वाली वास्तविक गैस कीमत है?
नहीं। यह प्रति यूनिट कीमत की अधिकतम सीमा है। प्रभावी कीमत में शामिल ब्लॉक की बेस फ़ी और सीमाओं के भीतर आने वाली टिप जुड़ती है, इसलिए ट्रांज़ैक्शन अधिकतम से कम चुका सकता है।
Q3क्या Ethereum मेननेट ट्रांज़ैक्शन गैस का भुगतान ETH में करते हैं?
Ethereum मेननेट के सामान्य ट्रांज़ैक्शन नेटवर्क की मूल संपत्ति ईथर में गैस फ़ी देते हैं। वॉलेट कोई दूसरा टोकन या तीसरे पक्ष का प्रायोजक दिखाए तो जाँचें कि क्या अलग फ़ी भुगतान व्यवस्था है। दूसरे चेन पर तरीका अलग हो सकता है।
स्रोत और आगे पढ़ें
समस्या की रिपोर्ट करें
हम इस लेख का लिंक जोड़कर ईमेल तैयार करेंगे। भेजने के बाद ही Mark को आपकी रिपोर्ट मिलेगी
त्वरित जाँच
गाइड पढ़ने के बाद 3 सवालों से खुद को जाँचें
सवाल 01
gasLimit किसे दर्शाता है?
व्याख्या देखने के लिए एक उत्तर चुनें