gas fee কী, কীভাবে দেখবেন, কীভাবে বাঁচাবেন (gwei ও EIP-1559)
অনেকে প্রথমবার gas-এ পিছিয়ে যায় এমন একটা একদম ছোট অপারেশনে। আমার নিজেরই হয়েছে: কয়েক টাকা মূল্যের একটা টোকেন একটু সরাতে চাইলাম, সিস্টেম বলল ফি যেটা সরাব তার চেয়েও বেশি। তখন মাথা ভর্তি প্রশ্ন — শুধু একটা ট্রান্সফারই তো, এত নিচ্ছে কেন, এই টাকাটা যাচ্ছে কাকে? পরে মেকানিজমটা বুঝে দেখলাম gas না প্ল্যাটফর্মের যেমন-তেমন আদায়, না কোনো বাঁধা অঙ্ক, বরং নেটওয়ার্কের ব্যস্ততা-ফাঁকার সঙ্গে ওঠানামা করা একটা "বাজারদর"। এই লেখায় সবচেয়ে সহজ ভাষায় gas, gwei, EIP-1559 — এই জিলিপি-প্যাঁচানো শব্দগুলো পরিষ্কার করব, আর সঙ্গে বলব কীভাবে অযথা টাকা না ঢেলে চলবেন।
gas আসলে কী
এক বাক্যে: gas হলো ব্লকচেইনে কোনো অপারেশন করার সময় সেই চেইনকে দেওয়া চালু খরচ। ট্রান্সফার, টোকেন swap, airdrop নেওয়া, স্মার্ট কন্ট্রাক্টে interaction — যা-কিছু on-chain খাতা বদলায়, তাতেই gas লাগে। এটা প্রজেক্টকে দেওয়া হয় না, বরং গোটা চেইন রক্ষণাবেক্ষণকারী নেটওয়ার্ককে; একে এই "বিশ্বব্যাপী পাবলিক কম্পিউটার" ব্যবহারের বিদ্যুৎবিল ভাবতে পারেন।
আদায় করা হয় কেন? কারণ ব্লকচেইন পুরো পৃথিবীর শেয়ার করা একটা খাতা, প্রতিটা রেকর্ড লেখার সময় বহু node-কে যাচাই করে consensus-এ পৌঁছাতে হয়, এর সত্যিকার খরচ আছে। gas এই কম্পিউটিং-শক্তির ক্ষতিপূরণ দেয়, আবার একটা "টিকিট"-ও — অপারেশন ফ্রি হলে কেউ একগাদা আবর্জনা ট্রানজ্যাকশন দিয়ে নেটওয়ার্ক ঠেসে দিত।
আরেকটা সাধারণ ভুল ভাঙি: gas অবশ্যই সেই চেইনের native টোকেন দিয়ে দিতে হয়। Ethereum-এ ETH, BNB Smart Chain-এ BNB। এ কারণেই farming শুরু করতে আগে ওয়ালেটে একটু native কয়েন gas হিসেবে তুলতে হয় — ওয়ালেটে তেল দেওয়ার কয়েন না থাকলে অন্য টোকেন যত থাকুক, এক পা-ও নড়ানো যায় না (বিস্তারিত Binance থেকে Web3 ওয়ালেটে gas কীভাবে তুলবেন)।
gas কোনো বাঁধা অঙ্ক নয়, নেটওয়ার্কের ব্যস্ততা-ফাঁকার সঙ্গে ওঠানামা করা বাজারদর; এটা চেইনকেই দেওয়া হয়, প্রজেক্টকে নয়; আর অবশ্যই সেই চেইনের native কয়েন (ETH, BNB ইত্যাদি) দিয়ে দিতে হয়।
gwei: সবাই এই এককে দাম বলে কেন
gas-এর দাম দেখার সময় যে একক চোখে পড়ে সেটা প্রায়ই "ETH" নয়, বরং gwei নামের একটা শব্দ। এটা আসলে ETH-এরই একটা খুব ছোট পরিমাপ একক, শুধু gas বলার জন্য।
রূপান্তর খুব সহজ: ১ gwei = এক ETH-এর একশো কোটি ভাগের এক ভাগ (অর্থাৎ 0.000000001 ETH, মানে ১০-এর ঋণাত্মক ৯ ঘাত ETH)। সরাসরি ETH-এ দাম না বলে কেন? কারণ একটা ট্রানজ্যাকশনের gas ETH-এ ফেললে এত ছোট, একগাদা শূন্যের লম্বা সংখ্যা — মানুষের চোখ পড়তে পারে না; gwei এই "খুচরো একক" দিয়ে "এখন gas মোটামুটি কয়েক দশ gwei" বললে অনেক পরিষ্কার — ETH যেন "টাকা", gwei আরও সূক্ষ্ম খুচরো একক। প্রোটোকল-স্তর থেকে আরও নিখুঁত করে বুঝতে Ethereum-এর official gas ব্যাখ্যা সবচেয়ে নির্ভরযোগ্য একটা সূত্র।
EIP-1559: base fee + priority fee
২০২১ সালে Ethereum EIP-1559 নামের একটা আপগ্রেড চালু করে, যা gas হিসাবের পদ্ধতি বদলে দেয়। এটা বুঝলে ওয়ালেটের gas সেটিংয়ের ওই কয়েকটা অপশন কী সমন্বয় করছে তা ধরতে পারবেন। এটা gas-এর দামকে দুই ভাগে ভাগ করে:
- base fee: নেটওয়ার্ক এখনকার ভিড়ের ওপর ভিত্তি করে নিজে থেকে হিসাব করে, সবার জন্য এক, আপনি বদলাতে পারবেন না, প্রতিটা ব্লকে dynamically বদলায় — নেটওয়ার্ক যত ঠাসা তত বেশি, যত ফাঁকা তত কম। এই অংশটা পুড়িয়ে দেওয়া হয়, কাউকে দেওয়া হয় না।
- priority fee (miner/validator tip নামেও পরিচিত): আপনার বাড়তি দেওয়া তাড়ার ফি। একটু বেশি tip দিলে ট্রানজ্যাকশন আগে ব্লকে সাজার সম্ভাবনা বাড়ে। এই অংশটা আপনি (বা ওয়ালেট) সমন্বয় করতে পারেন — তাড়া থাকলে বেশি দিন, না থাকলে কম দিন।
তাই ওয়ালেটের চেনা "দ্রুত/মাঝারি/ধীর" ধাপগুলো মূলত priority fee-র উঁচু-নিচুই সমন্বয় করে: দ্রুত বাছলে tip বেশি, চেইনে ওঠা দ্রুত; ধীর বাছলে tip কম, সস্তা কিন্তু একটু অপেক্ষা করতে হয়। base fee-র অংশটা আপনি নিয়ন্ত্রণ করতে পারবেন না, ওটা তখনকার বাজারদর।
আপনার দেওয়া gas ≈ base fee (নেটওয়ার্ক ঠিক করে, বদলানো যায় না, পুড়ে যায়) + priority fee (আপনার দেওয়া তাড়ার ফি, সমন্বয়যোগ্য)। সস্তা চান আর তাড়া নেই — tip কমিয়ে ধীরে অপেক্ষা করুন; ট্রানজ্যাকশন দ্রুত চান — tip বাড়িয়ে আগে ওঠান।
* আমাদের কোড দিয়ে রেজিস্টার করলে ট্রেডিং ফি-তে ২০% ছাড়*। প্রকৃত হার Binance পেজ অনুযায়ী, পরিবর্তিত হতে পারে। ক্রিপ্টোর দাম খুবই অস্থির — দায়িত্ব নিয়ে অংশ নিন।
আলাদা চেইনে gas এত আলাদা কেন
একই ট্রান্সফার, একই swap — Ethereum mainnet-এ কয়েক টাকা এমনকি কয়েক দশ টাকা লাগতে পারে, কোনো Layer 2 বা BNB Smart Chain-এ মাত্র কয়েক পয়সা, তফাত এত বড় যে এক জিনিস বলে মনেই হয় না। কারণ মূলত চাহিদা-জোগান আর ডিজাইন:
- Ethereum mainnet: ক্যাপাসিটি সীমিত, চাহিদা বড়। প্রতিটা ব্লকে ট্রানজ্যাকশনের সীমা আছে, অথচ ব্যবহার করতে চাওয়া মানুষ অনেক, সবাই হুড়োহুড়ি করে ওঠে, base fee স্বাভাবিকভাবেই উঠে যায়। যত জনপ্রিয় তত দামি।
- Layer 2 (Arbitrum, Optimism, Base ইত্যাদি): কাজটা চেইনের বাইরে এনে batch-এ settle করে। বড় অংশ হিসাব mainnet-এর বাইরে করে, তারপর প্যাক করে Ethereum-এ settle করে, এক batch ট্রানজ্যাকশন একবারে mainnet খরচ ভাগ করে নেয়, একটার খরচ স্বাভাবিকভাবেই অনেক কম।
- BNB Smart Chain ইত্যাদি: ক্যাপাসিটি ও প্যারামিটার ডিজাইন আলাদা। ব্লক তৈরি আর ক্যাপাসিটির হিসাব আলাদা, একটার খরচ সাধারণত খুব কম, নতুনদের হাত পাকানোর জন্য উপযুক্ত।
তাই একই অপারেশন আলাদা চেইনে gas-এ এক digit-এর তফাত হওয়া স্বাভাবিক, কোনো চেইন "যেমন-তেমন আদায়" করছে এমন নয়। এটা farming কৌশলেও প্রভাব ফেলে: কোন চেইনে interaction করবেন আগে gas কষে নিন — কিছু প্রজেক্টের রিটার্ন সীমিত, জোর করে দামি mainnet-এ বারবার interaction করলে শুধু gas-এই খাতা লোকসানে যেতে পারে। এই হিসাবটা আমাদের Gas Fee ক্যালকুলেটর দিয়ে আন্দাজ করতে পারেন।
কীভাবে সময় বাছবেন, কীভাবে বাঁচাবেন
gas যেহেতু ব্যস্ততা-ফাঁকার সঙ্গে ওঠানামা করা বাজারদর, সস্তায় চলার মূল চিন্তা এক বাক্যে: তাড়া নেই এমন অপারেশন ভিড়ের চূড়া এড়িয়ে করুন। বিশ্ববাজারে তীব্র ওঠানামা, জনপ্রিয় প্রজেক্ট খোলা, নামকরা NFT বিক্রি নেটওয়ার্ক ঠেসে দিলে base fee খুব উঠে যায়; উল্টোদিকে নেটওয়ার্ক ফাঁকা থাকলে সস্তা। অভ্যাসে নামালে:
- তাড়া না থাকলে ফাঁকা সময় অপেক্ষা করুন। সময়-নির্ভর নয় এমন interaction নেটওয়ার্ক ফাঁকা থাকলে করুন, base fee কম, ওয়ালেটের "ধীর" ধাপের সঙ্গে মিলিয়ে একটু বেশি অপেক্ষা করতে রাজি থাকলে কম দিতে পারেন।
- সস্তা চেইন ব্যবহার করুন। Layer 2 বা BNB Smart Chain-এ যেটা সারা যায় সেটা জোর করে mainnet-এ ঠেলবেন না, চেইন বাছাই নিজেই সবচেয়ে বড় gas-বাঁচানোর লিভার।
- জ্যামের সময় জোর করে হুড়োহুড়ি করবেন না। gas আকাশছোঁয়া দেখলে, একান্ত দরকার না হলে একটু রেখে দিন, হুড়োহুড়ি করে ওঠা প্রায়ই সবচেয়ে দামি।
তবে বিশেষভাবে সতর্ক করি: কোনো বাঁধা "সস্তা সময়সূচি" নকল করে চলা যায় না। নেটওয়ার্কের ব্যস্ততা-ফাঁকা বিশ্ববাজার আর হটস্পট অনুযায়ী লাইভ বদলায়, গতকাল যে সময় ফাঁকা ছিল আজ হয়তো বড় বাজারের সঙ্গে পড়ে গেছে। তাই অপারেশনের আগে অবশ্যই এখনকার লাইভ gas দেখুন — Ethereum-এ Etherscan-এর gas tracker পেজ, BNB Smart Chain-এ BscScan, বা সরাসরি ওয়ালেটে ট্রানজ্যাকশন শুরুর সময়কার লাইভ আনুমানিক। যেকোনো বাঁধা "কয়টায় সবচেয়ে সস্তা" শুধু মোটামুটি রেফারেন্স।
একই swap, নেটওয়ার্ক স্পষ্ট ব্যস্ত আর স্পষ্ট ফাঁকা — দুই সময়ে একবার করে করলে তফাত আসলে কত? আমরা সত্যিই পরখ করলাম। ফল বেশ পরিষ্কার: জ্যামের সময় ওয়ালেটের দেওয়া gas আনুমানিক এক ধাপ বেশি, "দ্রুত"-"ধীর" ধাপের দরের ফারাকও অনেক চওড়া; ফাঁকা সময় সব মিলিয়ে অনেক সস্তা, এমনকি "ধীর" বেছে যা বাঁচে তা বাড়তি অপেক্ষার দামও ওঠে না। নির্দিষ্ট অঙ্ক আমরা টুকিনি — পরদিন আবার দেখলে বদলে গেছে — তবে এই পরীক্ষাটা একটা কথা মনে গেঁথে দিল: gas বাঁচানো সময় বাছা আর সঠিক চেইন বাছার ওপর, কোনো বাঁধা ফি-হার মুখস্থ করার ওপর নয়।
* আমাদের কোড দিয়ে রেজিস্টার করলে ট্রেডিং ফি-তে ২০% ছাড়*। প্রকৃত হার Binance পেজ অনুযায়ী, পরিবর্তিত হতে পারে। ক্রিপ্টোর দাম খুবই অস্থির — দায়িত্ব নিয়ে অংশ নিন।
gas-এর এই ধাপ বুঝলে "এই অপারেশনটা করা মূল্যবান কিনা" বিচার করার ভিত পাবেন, একটা ছোট ট্রান্সফারের ফি দেখে আর পিছিয়েও যাবেন না। পরের ধাপে Binance থেকে Web3 ওয়ালেটে gas কীভাবে তুলবেন পড়ে প্রথম gas নিরাপদে ওয়ালেটে তুলে নিন, আর আনুষ্ঠানিকভাবে সম্পূর্ণ farming workflow-এ পা রাখুন।
gas কম / gas নেই হলে কী করবেন
নতুনরা সবচেয়ে বেশি যেখানে আটকায়: ওয়ালেটে কয়েন আছে, একটা ট্রান্সফার বা withdraw করতে গিয়ে দেখে অপারেশন পাঠানোই যাচ্ছে না, বা সরাসরি "gas কম" / "ফি দেওয়ার মতো ব্যালান্স যথেষ্ট নয়" দেখাচ্ছে। সমস্যা প্রায় সবসময় একই জায়গায় — আপনার যেটা কম তা সেই কয়েনটা নয় যেটা পাঠাতে চান, বরং gas দেওয়ার native কয়েন। আগে বলেছি, gas অবশ্যই সেই চেইনের native টোকেন দিয়ে দিতে হয়: Ethereum-এ ETH, BNB Smart Chain-এ BNB। ওয়ালেটে একগাদা USDT বা অন্য টোকেন পড়ে থাকলেও, সেই চেইনের native কয়েন না থাকলে এই কয়েনগুলো এক পা-ও নড়বে না, কারণ "তেলের দাম দেওয়া"-র ধাপটাই পার হয় না।
সমাধান এক বাক্যে: আগে এই চেইনে একটু native কয়েন gas হিসেবে ভরুন। সবচেয়ে চেনা উপায় হলো Binance-এর মতো এক্সচেঞ্জ থেকে একটা ছোট অঙ্কের সেই চেইনের native কয়েন আপনার ওয়ালেটে তোলা (সঠিক network বাছুন, ভুল চেইনে তুলবেন না, ধাপ দেখুন Binance থেকে Web3 ওয়ালেটে gas কীভাবে তুলবেন)। কোনো চেইনে আছেন অথচ একটুও native কয়েন নেই — আরেক পথ হলো যে চেইনে native কয়েন আছে সেখান থেকে cross-chain bridge দিয়ে একটু এনে নেওয়া, কিংবা পরিচিত কাউকে দিয়ে এই চেইনের ঠিকানায় কয়েক টাকা সমমূল্যের native কয়েন জরুরিভিত্তিতে পাঠানো। বেশি ভরার দরকার নেই, এই কদিনের কয়েকটা interaction কভার করার মতোই যথেষ্ট — বেশি ভরলে উল্টো বসে থাকে। কতটা gas রাখা লাগবে আন্দাজ করতে Gas Fee ক্যালকুলেটর দিয়ে মোটামুটি কষে নিন।
ওয়ালেট বলছে "gas দেওয়ার জন্য BNB যথেষ্ট নয়" — মানে কী
"gas / network ফি দেওয়ার জন্য BNB যথেষ্ট নয়" — এই বার্তা মূলত উপরের পরিস্থিতিরই BNB Smart Chain সংস্করণ: আপনার এই অপারেশন BNB চেইনে হবে, আর এই চেইনের gas শুধু BNB দিয়েই দেওয়া যায়, অথচ ঠিক সেই BNB-ই ওয়ালেটে যথেষ্ট নেই (এমনকি ০)। অনেকের প্রথম প্রতিক্রিয়া "আমার তো কয়েন আছেই" — কিন্তু আপনার থাকা কয়েনগুলো (যেমন on-chain USDT, কোনো airdrop টোকেন) gas দিতে কাজে আসে না, চেইন শুধু BNB চেনে।
প্রতিকারও একই: এই ওয়ালেটের BNB চেইন ঠিকানায় একটু BNB ভরুন। Binance থেকে তোলার সময় কয়েন BNB বাছুন, network বাছুন BNB Smart Chain (BEP-20), একটা ছোট অঙ্ক পাঠান। তোলার আগে network বারবার মিলিয়ে নিন, BNB-কে অসমর্থিত চেইনে তুলবেন না — ভুল network বাছা নতুনদের কয়েন হারানোর বড় ফাঁদ, সত্যিই ভুল হলে ফেরত মেলে কিনা দেখুন withdraw-এ ভুল network বাছলে কী করবেন। BNB ভরার পর আটকে থাকা সেই অপারেশন স্বাভাবিকভাবে ফি দিয়ে সম্পন্ন হবে। প্রসঙ্গত, Ethereum বা অন্য চেইনে একই বার্তা একই যুক্তি, শুধু "BNB"-র জায়গায় সেই চেইনের native কয়েন বসিয়ে নিন।
সচরাচর জিজ্ঞাসা
gwei আর ETH-এর সম্পর্ক কী?
gwei হলো ETH-এর একটা খুব ছোট পরিমাপ একক, শুধু gas-এর দাম বলার জন্য ব্যবহৃত হয়। ১ gwei মানে এক ETH-এর একশো কোটি ভাগের এক ভাগ (অর্থাৎ 0.000000001 ETH)। একটা ট্রানজ্যাকশনের gas ETH-এ লিখলে এত ছোট যে একগাদা শূন্যের লম্বা সংখ্যা পড়তে কষ্ট, তাই সবাই gas-এর দাম gwei-তে বলে, যেমন এখন gas কয়েক দশ gwei — এটা লম্বা দশমিক লেখার চেয়ে অনেক পরিষ্কার শোনায়।
EIP-1559-এর base fee আর priority fee-র তফাত কী?
EIP-1559 gas-এর দামকে দুই ভাগে ভাগ করে। base fee নেটওয়ার্ক এখনকার ভিড়ের ওপর ভিত্তি করে নিজে থেকে ঠিক করে, সবার জন্য এক, আর এই অংশটা পুড়িয়ে দেওয়া হয়; priority fee হলো আপনার বাড়তি দেওয়া তাড়ার ফি, একটু বেশি দিলে আপনার ট্রানজ্যাকশন আগে প্যাক হওয়ার সম্ভাবনা বাড়ে। base fee আপনি বদলাতে পারেন না, priority fee আপনি বা ওয়ালেট দরকারমতো দ্রুত/ধীর অনুযায়ী সমন্বয় করতে পারে।
Ethereum mainnet-এ gas এত দামি কেন, অন্য চেইনে অনেক সস্তা কেন?
মূলত চাহিদা-জোগান। Ethereum mainnet-এর প্রতিটা ব্লকে সীমিত সংখ্যক ট্রানজ্যাকশন আঁটে, অথচ ব্যবহার করতে চাওয়া মানুষ অনেক, সবাই হুড়োহুড়ি করে ওঠে, base fee উঠে যায়। Layer 2 আর BNB Smart Chain-এর মতো চেইন হয় বড় অংশ হিসাব চেইনের বাইরে করে এনে batch-এ mainnet-এ settle করে, নয়তো নিজস্ব ক্যাপাসিটি ডিজাইন আলাদা, তাই একটা ট্রানজ্যাকশনের খরচ অনেক কম। তাই একই অপারেশন আলাদা চেইনে gas-এ এক digit-এর তফাত হতে পারে।
কীভাবে সস্তা সময় বেছে gas বাঁচাব?
gas দামি না সস্তা তা মূলত নির্ভর করে সেই মুহূর্তে কত মানুষ ট্রানজ্যাকশনের জন্য হুড়োহুড়ি করছে তার ওপর। বিশ্ববাজারে তীব্র ওঠানামা, জনপ্রিয় প্রজেক্ট খোলা, নামকরা NFT বিক্রির সময় নেটওয়ার্ক জ্যাম, base fee উঠে যায়। উল্টোদিকে নেটওয়ার্ক তুলনামূলক ফাঁকা থাকলে gas সস্তা। তাড়া নেই এমন অপারেশন ভিড় এড়িয়ে ফাঁকা সময়ে করুন। তবে ঠিক কোন সময় সস্তা তার কোনো বাঁধা নিয়ম নেই, আপনার অপারেশনের মুহূর্তে ব্লক এক্সপ্লোরার বা ওয়ালেটে দেখানো লাইভ gas-কেই চূড়ান্ত ধরুন, কোনো বাঁধা সময়সূচি নকল করবেন না।
gas কি প্রজেক্টকে দেওয়া হয়?
না। gas দেওয়া হয় এই ব্লকচেইন রক্ষণাবেক্ষণকারী নেটওয়ার্ককে, একে এই পাবলিক খাতা ব্যবহারের চালু খরচ ভাবতে পারেন, যে প্রজেক্টের সঙ্গে interaction করছেন তার সঙ্গে সরাসরি সম্পর্ক নেই। অন্যভাবে বললে, শুধু এক ওয়ালেট থেকে আরেক ওয়ালেটে টাকা পাঠালেও, কোনো প্রজেক্ট না জড়ালেও, আপনাকে gas দিতে হবে।


