Ethereum Gas Ücretleri: Base Fee, Priority Fee ve Gas Limit
Gas birimlerinin, gas limitinin, base fee ve priority fee'nin ve maksimum ücretin ne anlama geldiğini öğrenin; ardından bir Ethereum işleminin gerçek maliyetini hesaplayın.
Bu rehberdeGas, gönderdiğiniz tutarı değil hesaplama işini ölçer
Kısa özet
Ethereum gas ücreti, işlemin gerçekten kullandığı gas miktarının işlemin dahil edildiği bloktaki etkin gas fiyatıyla çarpılmasıyla hesaplanır. Protokol base fee'yi belirler ve yakar; priority fee doğrulayıcıya gidebilir. Maksimum ücret bir fiyat tavanıdır, mutlaka ödeyeceğiniz fiyat değildir.
Gas, gönderdiğiniz tutarı değil hesaplama işini ölçer
Ethereum'da gas, EVM'nin bir işlemi işlemek için yapması gereken hesaplamayı sayan birimdir. Basit bir ETH transferi görece az işlem gerektirirken, token gönderimi veya akıllı sözleşmede birden fazla koşulun yürütülmesi daha fazlasını gerektirebilir. Bu nedenle aynı miktarda ETH gönderen iki işlem, farklı işler yapıyorsa farklı miktarda gas kullanabilir.
Gas birimleri iş miktarını, gas fiyatı ise birim başına teklif ettiğiniz ETH miktarını gösterir. İkisini çarptığınızda ücret ortaya çıkar. Gas limiti, işlemin kullanmasına izin verilen en yüksek birim sayısıdır; maxFeePerGas ise birim fiyatına konan tavandır. Bunlar aynı “maksimum ücret” kavramının birbirinin yerine geçen alanları değildir.
Bu rehber, Ethereum ana ağındaki standart bir EIP-1559 işlemini ele alır. Diğer blokzincirler ve katman 2 ağları farklı ücret yapıları, ödeme varlıkları ve alan adları kullanabilir. Ethereum terimlerini her ağa otomatik olarak uygulamayın. Ethereum.org gas rehberi ve işlemler rehberi alanları tanımlar.
Gas kullanımı, işlemin yaptığı işe bağlıdır
EVM, hesaplama ve durum değişiklikleri için gas maliyeti belirler. Bir sözleşme çağrısı; fonksiyon yürütme, depolama okuma veya yazma ve olay kaydetme gibi basit transferin gerektirmediği ek işler içerebilir. İşlem sayısı ya da yürütme yolu uzadıkça daha fazla gas gerekebilir. Kullanılan gas, gönderilen ETH tutarı veya tokenın piyasa fiyatıyla çarpılarak hesaplanmaz.
ETH transferi, token transferi ve dApp çağrısı farklı işlemler yürütür. Sözleşme çağrıları ek fonksiyonları çalıştırıp depolama verilerini okuyabilir veya değiştirebilir; bu nedenle basit bir transferden daha fazla gas kullanabilir. Bloka dahil edilen işlemin makbuzu, gerçekten kullanılan gas miktarını bildirir.
Ethereum.org standart bir ETH transferi için 21.000 gas değerini örnek verir. Bu, basit transferler için bir referanstır; gerekli iş yürütülen fonksiyonlara ve depolama erişimine bağlı olduğundan sözleşme çağrıları için genel bir gas limiti olarak kullanılamaz.
Ağ gas'ı, bir hizmetin çekim ücretinden de farklıdır. Bir borsa operasyon bedeli ekleyebilir veya kendi ücret tarifesini uygulayabilir. Zincir üstü gas, ağın işlediği hesaplama için ödenir. Çekim ekranında tek tutar gösteriliyorsa bunun platform ücretiyle ağ maliyetini birleştirip birleştirmediğini kontrol edin.
Gas limiti ile kullanılan gas farklı değerlerdir
Gas limiti (gasLimit), işlemin tüketmesine izin verilen en yüksek gas birimidir. Kullanılan gas (gasUsed), yürütme bittiğinde gerçekten tüketilen miktardır. Limiti yükseltmek, o limitteki her birimin otomatik olarak ücretlendirileceği anlamına gelmez. Bloka dahil edilen işlemde ücret, gerçekten kullanılan gas ve etkin gas fiyatı üzerinden hesaplanır; kullanılmayan limit birimleri tüketilmez.
İşlemin kendisi yürütme sırasında gas'ı bitirirse gas limitinin tamamı tüketilir ve işlem başarısız olur. Durum değişiklikleri geri alınır, ancak hesaplama yine ücret doğurur. Daha yüksek bir limit daha fazla iş yapılmasına izin verir, ancak maksimum gas-maliyeti riskini de artırır: gasLimit × maxFeePerGas. Gerçek tahsilat yine kullanılan gas miktarına ve etkin fiyata bağlıdır.
Gas limiti bir tavandır; gerçek kullanım tahmini değildir. Limit birim fiyatı değildir ve fiyatı artırmak yetersiz gas birimini telafi etmez. Çağrının ne yapacağını anlamıyorsanız limiti gelişigüzel değiştirmek yerine cüzdanın veya uygulamanın resmi yönergelerini inceleyin.
Base fee, blok alanına olan taleple değişir
EIP-1559 işleminde base fee, protokolün bir blok için belirlediği gas başına fiyattır. İşlemin maksimum ücreti, dahil olacağı bloğun base fee'sini karşılayacak kadar yüksek olmalıdır. Protokol, önceki bloğun kullandığı gas miktarını hedefle karşılaştırarak base fee'yi bloktan bloğa ayarlar. Yükselebilir veya düşebilir; kalıcı ve sabit bir oran değildir.
Gerçekten kullanılan gas için base fee'ye karşılık gelen bölüm yakılır. Doğrulayıcılar bu bölümü bahşiş olarak almaz. Base fee bloktan bloğa değişir; bekleyen bir işlem dahil edildiğinde gönderildiği andakinden farklı bir base fee ile karşılaşabilir.
Gwei, ETH'nin küçük bir birimidir: 1 gwei, 0,000000001 ETH'ye eşittir. Kullanılan gas aynı kalsa bile gas fiyatının yükselmesi ETH cinsinden maliyeti artırır. Birim fiyatı aynı kalırken daha fazla gas kullanılması da maliyeti yükseltir. Her iki etki de ETH'nin dolar fiyatından bağımsız olarak ETH cinsinden ücreti değiştirebilir.
Priority fee, dahil edilmeyi teşvik edebilen bir bahşiştir
Priority fee, işlemi dahil eden doğrulayıcıya gas başına teklif edilen bahşiştir. Kullanıcılar sınırlı blok alanı için yarışır; diğer koşullar benzerken daha büyük bir bahşiş işlemi daha cazip kılabilir. Aciliyeti belirtir ancak belirli bir bloğa veya zamana kadar dahil edilme garantisi vermez.
Ekrandaki yüksek priority fee değeri, işlemin ihtiyaç duyduğu gas birimi sayısından ayrıdır. Priority fee birim fiyatını değiştirirken gas limiti izin verilen işi sınırlar. Karmaşık bir sözleşme çağrısı, bahşiş yüksek olsa bile gas yetersizliğinden başarısız olabilir. Tersine, fiyat tavanı bloğun base fee'sini karşılamıyorsa yeterli gas birimi de işe yaramaz.
Doğrulayıcılar işlem seçerken blok alanını ve diğer işlem koşullarını değerlendirir. Base fee ve kullanılabilir blok alanı zaman içinde değişir; bu yüzden daha büyük bir bahşiş işlemin belirli bir zamanda dahil edilmesini garanti etmez. EIP-1559 spesifikasyonu, base fee ile priority fee'ye ayrı roller verir ve etkin toplam fiyatı maksimum ücretle sınırlar.
Maksimum ücret, gerçek fiyat değil fiyat tavanıdır
maxFeePerGas, bir gas birimi için karşılamayı kabul ettiğiniz en yüksek fiyattır. maxPriorityFeePerGas, birim başına teklif ettiğiniz en yüksek bahşiştir. İşlem dahil edildiğinde etkin fiyat, base fee ile iki tavanın altında kalan bahşişin toplamıdır. Uygulanan bahşiş, maxPriorityFeePerGas ile maxFeePerGas - baseFee değerlerinden düşük olanıyla sınırlıdır; bu yüzden etkin fiyat maksimum ücreti aşamaz.
Örneğin maksimum ücret 30 gwei, maksimum bahşiş 2 gwei ve blok base fee'si 18 gwei olsun. Uygulanabilecek bahşiş 2 gwei olduğundan etkin fiyat 20 gwei olur. Maksimum değer 30 gwei diye işlem otomatik olarak 30 gwei ödemez. Base fee 31 gwei'ye çıkarsa 30 gwei tavanı o bloğu karşılamaz ve işlem o bloğa dahil edilemez.
Base fee maksimum ücrete yaklaştıkça bahşiş için daha az alan kalır. Bahşiş tavanınız 5 gwei olsa bile maxFeePerGas - baseFee yalnızca 1 gwei ise uygulanacak bahşiş en fazla 1 gwei olur. İki tavanı ve o anki base fee'yi birlikte değerlendirin.

Örnek bir ücret hesabını adım adım yapın
Aşağıdaki rakamlar yalnızca hesap yöntemini göstermek için varsayımsaldır. Gas limiti 30.000 birim, kullanılan gas 24.000 birim, blok base fee'si 18 gwei, maksimum bahşiş 2 gwei ve maksimum ücret 30 gwei olsun. Uygulanan bahşiş min(2, 30 - 18) = 2 gwei, etkin fiyat ise 18 + 2 = 20 gwei olur.
Gerçek gas ücreti 24.000 × 20 = 480.000 gwei'dir. 1 ETH, 1.000.000.000 gwei olduğundan bu tutar 0,00048 ETH eder. Base fee bölümü 24.000 × 18 = 432.000 gwei veya 0,000432 ETH'dir. Bahşiş bölümü 24.000 × 2 = 48.000 gwei veya 0,000048 ETH'dir. İkisi birlikte 0,00048 ETH gerçek ücreti verir.
Gas limitinin tamamını iki tavanla çarpmak, 30.000 × 30 = 900.000 gwei yani 0,0009 ETH verir. Limitin ve birim başına maksimum fiyatın ikisinin de tamamen kullanıldığı varsayımında bu, ayarlara göre gas maliyetinin üst sınırıdır. Örnekteki gerçek ücret değildir. Alıcıya gönderilen ETH tutarı gas ücretinden ayrıdır. Tavanı sabit kesinti, ücreti de transferin yüzdesi olarak değerlendirmeyin. Rakamlar açıklama içindir; canlı ağ teklifi değildir.
Başarısız bir işlem yine de gas tüketebilir
Cüzdandaki “başarısız” uyarısının gas ücretinin iade edileceği anlamına geldiğini varsaymayın. İşlem bloka dahil edilip EVM yürütmesi geri alınmadan önce başlarsa durum değişikliği geri çevrilebilir, ancak kullanılan gas yine ücretlendirilebilir. İşlemin kendisi yürütme sırasında gas'ı bitirirse gas limitinin tamamı tüketilir. İstenen sonuç alınmasa da hesaplama yapılmıştır.
Bloka dahil edilmeden önce doğrulamayı geçemeyen işlem farklıdır. Örneğin gerekli miktardan düşük gas limitiyle gönderilen bir ETH transferi bloğa girmeden reddedilebilir; böyle bir durumda yürütme gas'ı tüketilmez. “Dahil edilmeden önce reddedildi” ile “dahil edildi, sonra yürütme sırasında geri alındı” aynı durum değildir.
İşlem hash'inden durumu, kullanılan gas miktarını, etkin gas fiyatını ve yürütme sonucunu kontrol edin. Cüzdanın kısa hata mesajı nedeni açıklamayabilir. Ethereum.org, dahil edilme öncesi doğrulama reddini yürütme sırasında gas bitmesinden ayrı ele alır.
Limit, fiyat ve transfer tutarını ayrı ayrı okuyun
İmzalamadan önce hangi ağı kullandığınızı ve işlemin basit transfer mi yoksa sözleşme çağrısı mı olduğunu doğrulayın. Cüzdan; tahmini ücret, gas limiti, tahmini base fee, priority fee tavanı, maksimum ücret tavanı ve gönderilen ETH veya token miktarını gösterebilir. Bu değerler farklı soruları yanıtlar. Ekranda yalnızca maksimum gas maliyeti görünüyorsa bunu kesin kesinti saymak yerine ayrıntıları açıp hangi tavanı gösterdiğini öğrenin.
Otomatik cüzdan tahminleri, ücret alanlarını elle ayarlamadan işlem göndermenize yardımcı olur. Yine de o andaki ağ koşullarına dayalı bir tahmindir; zamanlama veya son maliyeti garanti etmez. Düşük fiyat tavanı işlemi bekletebilir. Çağrıyı anlamadan limiti veya bahşişi yükseltmek, asıl sorunu çözmeden olası maliyeti artırabilir. Güncel değerleri gözden geçirin ve işlemi anlıyorsanız imzalayın.
Bu açıklama standart Ethereum ana ağ işlem akışını kapsar. Katman 2 veya başka bir zincir ek veri ücreti gösterebilir, farklı bir ücret varlığı kullanabilir ya da ücretleri farklı hesaplayabilir. Belgelerini kontrol etmeden Ethereum formülünü başka ağa uygulamayın. Hedef ağ ve adres için kripto transferi kontrol listesine, bir sözleşmenin token kullanabilmesi için gereken ayrı izin için token onay rehberine bakın.
Sık sorulan sorular
Q1Başarısız bir işlem neden yine de ETH'ye mal olabilir?
İşlem bloğa dahil edilip yürütme başladıysa, durum değişikliği geri alınsa bile hesaplama gas tüketebilir. Yürütme hatasıyla bloka dahil edilmeden önceki reddi ayırmak için işlem hash'ini kontrol edin.
Q2maxFeePerGas cüzdanımın gösterdiği gerçek gas fiyatı mı?
Hayır. Birim başına fiyat tavanıdır. Etkin fiyat, dahil eden bloğun base fee'siyle tavanların altında kalan bahşişi birleştirir; dolayısıyla işlem maksimumdan daha az ödeyebilir.
Q3Ethereum ana ağ işlemleri gas ücretini ETH ile mi öder?
Standart Ethereum ana ağ işlemleri gas'ı ağın yerel varlığı olan ether ile öder. Cüzdan başka bir token veya üçüncü taraf sponsor gösteriyorsa ayrı bir ücret ödeme mekanizması olup olmadığını kontrol edin. Diğer ağlar farklı çalışabilir.
Kaynaklar ve daha fazla okuma
Sorun bildir
Bu makalenin bağlantısını içeren bir e-posta hazırlayacağız. Mark bildirimi yalnızca gönderdiğinizde alır
Hızlı kontrol
Rehberi okudunuz mu? 3 soruyla kendinizi kontrol edin
Soru 01
gasLimit neyi ifade eder?
Açıklamayı görmek için bir yanıt seçin