ประสบการณ์คลาสสิกของมือใหม่: จะโอนเหรียญมูลค่า 300 บาท แต่ระบบขึ้นค่าธรรมเนียม 400 บาท แล้วงงว่าทำไมมันเป็นแบบนั้นได้
คำตอบคือ ค่าธรรมเนียมบนบล็อกเชนไม่ได้คิดเป็นเปอร์เซ็นต์ของยอดโอน แต่คิดตาม พื้นที่และงานประมวลผลที่ธุรกรรมของคุณกินไป โอน 300 บาทกับโอน 3 ล้านบาทกินพื้นที่เท่ากัน จึงจ่ายเท่ากัน
gas คืออะไร
บน Ethereum ทุกการกระทำมีราคาคงที่เป็นหน่วยที่เรียกว่า gas ตั้งไว้ล่วงหน้าในระบบ เช่น การโอน ETH ธรรมดาใช้ 21,000 gas เสมอ ส่วนการโอนโทเคนอย่าง USDT ใช้มากกว่านั้นหลายเท่า เพราะต้องไปเรียกโค้ดสัญญาอัจฉริยะทำงานเพิ่ม
gas จึงเป็นหน่วยวัด “ปริมาณงาน” ที่คงที่ ส่วนสิ่งที่แพงขึ้นแพงลงคือ ราคาต่อหนึ่ง gas ซึ่งเปลี่ยนตามความหนาแน่นของเครือข่ายในแต่ละช่วงเวลา
ค่าธรรมเนียมที่คุณจ่ายจริง = ปริมาณ gas × ราคาต่อ gas
gwei คืออะไร
ราคาต่อ gas วัดเป็นหน่วย gwei ซึ่งเท่ากับหนึ่งในพันล้านของ ETH (0.000000001 ETH) เหตุผลที่ต้องมีหน่วยนี้ก็เพราะเลขจริงเล็กมากจนอ่านลำบาก คล้ายกับที่ฝั่ง Bitcoin มีหน่วยซาโตชิไว้ใช้แทนทศนิยมยาว ๆ
เวลาเห็นข่าวว่า “gas 12 gwei” แปลว่าตอนนั้นราคาถูก ส่วนช่วงที่เครือข่ายแน่นมาก ๆ เลขนี้อาจพุ่งขึ้นหลายสิบเท่าได้ในไม่กี่นาที
ทำไมค่าโอนถึงเหวี่ยงแรง
แต่ละบล็อกมีพื้นที่จำกัด เมื่อคนต้องการทำธุรกรรมมากกว่าพื้นที่ที่มี ระบบก็ต้องเลือก และมันเลือกจากคนที่ยอมจ่ายมากกว่า นี่คือการประมูลพื้นที่แบบเรียลไทม์
ตั้งแต่การอัปเกรดที่เรียกว่า EIP-1559 ในปี 2021 ค่าธรรมเนียม Ethereum แบ่งเป็นสองส่วน คือ base fee ที่ระบบกำหนดเองตามความหนาแน่นและถูกเผาทิ้ง (ไม่ได้ตกไปที่ผู้ตรวจสอบ) กับ priority fee หรือทิปที่คุณเลือกจ่ายเพิ่มเพื่อให้ธุรกรรมถูกหยิบก่อน
การเผา base fee ทิ้งมีผลข้างเคียงที่น่าสนใจคือ ในช่วงที่เครือข่ายใช้งานหนัก ปริมาณ ETH ในระบบจะลดลง
Bitcoin ไม่มี gas — คิดคนละแบบ
บน Bitcoin ไม่มีคำว่า gas เพราะไม่มีสัญญาอัจฉริยะให้ประมวลผล ค่าธรรมเนียมคิดจาก ขนาดของธุรกรรมเป็นไบต์ ในหน่วย sat/vB (ซาโตชิต่อไบต์เสมือน)
ผลลัพธ์ในทางปฏิบัติคล้ายกันคือยิ่งเครือข่ายแน่นยิ่งแพง และธุรกรรมที่ซับซ้อน (มี input หลายชิ้น) จะใหญ่กว่าและแพงกว่า แต่หลักการคำนวณคนละเรื่องกัน
ดูค่าธรรมเนียม Bitcoin แบบสด ๆ พร้อมคำแนะนำว่าควรจ่ายเท่าไรได้ที่ ค่าธรรมเนียม Bitcoin และอ่านคำอธิบายเต็มที่ ค่าธรรมเนียม Bitcoin คิดยังไง
วิธีลดค่า gas ที่ใช้ได้จริง
- เลือกเวลา — ค่าธรรมเนียมสัมพันธ์กับเวลาทำการของอเมริกาและยุโรปพอสมควร ช่วงสุดสัปดาห์และช่วงเช้าตามเวลาไทยมักถูกกว่า ถ้าไม่รีบ รอได้คุ้ม
- เลือกเครือข่ายให้ถูก — USDT มีอยู่บนหลายเชน ค่าโอนต่างกันได้หลายสิบเท่า แต่ต้องเช็กว่าปลายทางรองรับเชนนั้นจริง ๆ ก่อนกดส่งเสมอ
- ใช้เครือข่ายชั้นสอง (Layer 2) — เช่น Arbitrum, Base, Optimism ค่าโอนถูกกว่าเชนหลักมาก แต่การถอนกลับมาเชนหลักมีขั้นตอนและค่าใช้จ่ายเพิ่ม
- รวมธุรกรรม — ถ้าต้องโอนหลายรอบ ทำทีเดียวก้อนใหญ่ถูกกว่าทยอยโอนย่อย ๆ
- อย่าตั้ง gas ต่ำเกินไป — ธุรกรรมจะค้างและอาจต้องส่งซ้ำ กลายเป็นจ่ายสองรอบ
ข้อควรระวังก่อนกดยืนยัน
- ค่าธรรมเนียมจ่ายด้วยเหรียญประจำเชนเสมอ (Ethereum จ่ายด้วย ETH) ต่อให้คุณโอน USDT ก็ต้องมี ETH เหลือในกระเป๋า — เป็นสาเหตุที่คนโอนไม่ได้ทั้งที่มีเหรียญเต็มกระเป๋า
- ธุรกรรมที่ล้มเหลวก็เสียค่า gas เหมือนกัน เพราะเครือข่ายทำงานไปแล้ว
- ค่าธรรมเนียมที่กระดานเทรดเก็บตอนถอน ไม่เท่ากับค่าธรรมเนียมเครือข่ายจริง หลายเจ้าบวกเพิ่ม · อ่านความต่างที่ ค่าธรรมเนียม exchange กับค่าธรรมเนียมเครือข่าย
- ก่อนกดส่ง ตรวจที่อยู่ปลายทางให้ครบทุกตัวอักษร ไม่ใช่แค่ต้นกับท้าย — มัลแวร์บางตัวสลับที่อยู่ในคลิปบอร์ดโดยเลือกที่อยู่ที่ขึ้นต้นและลงท้ายคล้ายกัน