Claude token nedir ve maliyeti nasıl hesaplanır?
Claude token yapısı ve maliyet hesaplama yöntemleri incelenmektedir. Bir Claude Code oturumunun neden 80.000 token harcadığını ve maliyet artışlarını öğrenin.
Claude'daki token nedir?
Token, Claude'un okuduğu ve yazdığı metin birimidir: bir kelime parçasıdır ve yaklaşık 3.5 İngilizce karakter uzunluğundadır. Bu değer Anthropic'in kendi sözlüğünden alınmıştır; boşluklar ve noktalama işaretleri dahil edildiğinde kelime başına bir token'dan çok daha fazlasına denk gelir. Bu nedenle, bin kelimelik bir düz metin rahatlıkla 1.300 token'ın üzerindedir. Kod satırları daha fazla yük oluşturur: parantezler, operatörler, alt çizgiler ve girintiler, İngilizceye kıyasla karakter başına daha fazla token'a bölünür. Birkaç yüz satırlık bir kaynak dosyası tipik olarak birkaç bin token tutar. Agent'ın okumaya karar verdiği 2.000 satırlık bir dosya, henüz yeni bir kod satırı yazılmadan önce beş haneli bir token maliyeti oluşturur.
Tokenizer'lar hakkında kullanıcıları yanıltan iki durum vardır. Birincisi, modele özgüdürler. Temmuz 2026 itibarıyla, Opus 4.7 ve sonrası ile Sonnet 5 ve Fable 5, aynı metin için önceki Claude modellerine kıyasla yaklaşık %30 daha fazla token üreten yeni bir tokenizer kullanmaktadır (tam artış içeriğe göre değişir); bu durum, token başına fiyatlar artmasa bile token bütçesini değiştirir. İkincisi, her blog yazısında başvurulan tiktoken, OpenAI'ın tokenizer'ıdır ve düz metinlerde Claude'u yaklaşık %15–20 oranında, kodlarda ise daha fazla eksik sayar. Tek güvenilir sayım yöntemi, aşağıda ele alınan count_tokens uç noktasıdır.
Kodlama oturumunuzun maliyet nedenleri
API faturası veya abonelik limiti fark etmeksizin, tüm Claude faturaları tek bir ölçüme dayanır: girdi tokenları ve çıktı tokenları. Fiyatlandırma sayfası durumu basit gösterir: her bir milyon girdi tokenı için belirli bir dolar tutarı, her bir milyon çıktı için belirli bir tutar. Ancak bir agentic kodlama oturumunda, girdi tarafındaki tüketimin sezgilerden çok daha yüksek olduğunu belirtmez; çünkü her adımda tüm konuşma geçmişi yeniden gönderilir. On beş yıldır metrajlı altyapı satışı yapmaktayım ve tokenlar, müşterilerin çoğunun maliyeti neyin artırdığını gerçekten anlayamadığı ilk ölçüm birimidir. Bu ders şunları kapsar: agentic bir oturumda girdi ve çıktı olarak ne kabul edilir, yeniden gönderim döngüsü neden bu kadar maliyetlidir, prompt caching hesaplamaları nasıl değiştirir ve maliyeti asıl etkileyen unsurlar nelerdir.
Her şey girdidir: Sayaç gerçekte neyi sayar
Kullanıcılar Claude tarafından yazılan kod için ödeme yaptıklarını varsayarlar. Agentic bir oturumda bu, maliyet kalemlerinin en küçük kısmıdır. Daha düşük ücretli ancak hacmi çok daha yüksek olan input token'lar şunları içerir:
- System prompt. Claude Code'un kendi yönergeleri ile oturum başında yüklenen ve sonraki her istekte mevcut olan
CLAUDE.mdve memory dosyalarınız. - Tool definitions. Agent'ın çağırabileceği her bir tool şeması. Bağlandığınız her MCP server bu sabit maliyeti artırır; ancak Claude Code artık varsayılan olarak tam MCP tool tanımlarını ertelemektedir. Bu nedenle, bir tool ilk kez kullanılana kadar context içinde sadece tool isimleri bulunur; bu durum maliyeti azaltır ancak tamamen ortadan kaldırmaz.
- Agent'ın okuduğu her dosya. Bir kaynak dosyanın
Readdeğeri, dosyanın tamamını context içine dahil eder ve dosya orada kalmaya devam eder. - Her bir tool sonucu. Test çıktıları, grep çıktıları, terminal çıktıları, build logları — tüm bunlar input token olarak geri döner. 8,000 satır yazdıran başarısız bir test suit'i, küçük bir kitap maliyetine yol açar.
- Her adımda yeniden gönderilen tüm konuşma geçmişi. Bu madde ayrı bir bölüm gerektirir.
Maliyetlerin artma sebebi
Claude API stateless (durumsuz) bir yapıdadır. İstekler arasında oturumu hatırlamaz; hiçbir sistem hatırlamaz. Bu nedenle 2. adımda istemci, 1. adımı, yanıtı ve yeni mesajı birlikte gönderir. 50. adımda ise 1'den 49'a kadar olan tüm adımları —okunan her dosya, her araç sonucu, her diff— ve 50. adımı tekrar gönderir. Model her seferinde tüm transkripti yeniden okur ve bu yeniden okunan tokenların her biri input olarak ücretlendirilir.
Sonuç: Tur başına maliyet oturum uzunluğuyla doğru orantılı olarak artar, toplam oturum maliyeti ise yaklaşık olarak karesel olarak artar. 3. adımda yarım sent olan tek satırlık bir soru, 60. adımda aynı soru için yirmi kat daha fazla maliyet çıkarabilir; çünkü 60 adımın yükünü taşımaktadır. Bu durum, "faturam neden bu kadar yüksek" konulu destek taleplerinin çoğunu açıklayan temel faktördür. Bu durum Claude'a özgü bir durum değildir; stateful (durumlu) gibi görünen her LLM ürünü, altta bir resend loop (yeniden gönderme döngüsü) barındıran stateless bir API'dir.
Output: gördüğünüz çıktı ve görmediğiniz düşünme süreci
Output tokenları en maliyetli olanlardır; mevcut ürün gamında input oranının beş katıdır (Temmuz 2026 itibarıyla Opus 4.8 için 5$/25$, Sonnet 5 için 3$/15$, Haiku 4.5 için 1$/5). Output; Claude tarafından üretilen metni, kodu ve thinking tokens (düşünme tokenları) dediğimiz, modelin yanıt vermeden önce gerçekleştirdiği dahili akıl yürütmeyi kapsar. Burada iki önemli gerçek bulunmaktadır. Düşünme süreci, output oranları üzerinden ücretlendirilir ve max_tokens limitine dahildir; stop_reason: "max_tokens" ile sonlanan bir API yanıtı ve kesintiye uğramış bir cevap, genellikle bütçenin yanıttan önce düşünme süreci tarafından tüketildiğini gösterir. Ayrıca mevcut modellerde akıl yürütme özeti hiç görüntülenmeyebilir; Opus 4.8, Sonnet 5 ve Fable 5 varsayılan olarak bunu göstermez, ancak düşünme süreci gerçekleşir ve ücretlendirilir. Görünmez olması, ücretsiz olduğu anlamına gelmez.
Claude Code, çok adımlı işleri ölçülebilir şekilde iyileştirdiği için varsayılan olarak genişletilmiş düşünme özelliğini etkinleştirir; varsayılan bütçe istek başına on binlerce tokena ulaşabilir. Daha basit görevlerde bu değer düşürülebilir: /effort veya /model ile çaba seviyesi azaltılabilir ya da /config içindeki düşünme ayarları düzenlenebilir. Bu bir batıl inanç değil, gerçek bir maliyet kontrol mekanizmasıdır.
Prompt caching matematiksel hesaplamaları değiştirir
Prompt caching, tekrarlanan döngülerin maliyetini düşüren unsurdur. API; sistem promptu, araç tanımları ve konuşma geçmişi gibi sabit bir prefix kısmını önbelleğe alabilir. Bir sonraki istekte bu kısım çok daha düşük bir maliyetle sunulur. Temmuz 2026 itibarıyla çarpanlar şöyledir: bir cache write işlemi temel giriş ücretinin 1.25× katına (1 saatlik varyant için 2×) mal olur; bir cache read işlemi ise 0.1× maliyetindedir. Yazma işlemleri maliyetlidir; okuma işlemleri ise %90 indirim sağlar. Tek bir okuma işlemi, 5 dakikalık yazma maliyetini fazlasıyla karşılar.
Claude Code önbelleği sizin yerinize yönetir ve verimli bir oturumda büyük veri gönderimlerinin neredeyse tamamı önbellekten sağlanır. Ancak varsayılan önbellek süresi son kullanımdan itibaren beş dakikadır. Uzun bir mola verip geri döndüğünüzde ve yeni bir mesaj gönderdiğinizde, önbellek süresi dolmuş olur. Bu durumda biriken tüm prefix, 0.1× maliyetle okunmak yerine 1.25× maliyetle yeniden yazılır. 150K-token içeren bir oturumda, bu tek bir soğuk (cold) işlem, bir düzine sıcak (warm) işlemden daha maliyetlidir. Kavranması gereken ters mantık şudur: boşta kalıp sonra devam etmek, sürekli çalışmaktan daha maliyetli olabilir; çünkü TTL süresini aşan her boşluk, bir sonraki işlemi ucuz bir okumadan pahalı bir yeniden yazmaya dönüştürür. Parça parça çalışın; büyük bir oturumu her on dakikada bir mesaj göndererek yavaşlatmayın.
Eğer API'yi VPS üzerindeki kendi uygulamanızdan çağırıyorsanız, bu avantajlardan ücretsiz yararlanamazsınız. Yaygın hata, sistem promptuna zaman damgası veya request ID eklenmesidir. Bu durum her istekte prefix baytlarını değiştirerek önbelleği sessizce devre dışı bırakır. Belirtisi, birbirine benzeyen çağrılarda usage.cache_read_input_tokens değerinin sıfır olmasıdır.
Formül ve uygulanmış bir örnek
"Bir oturum $X tutarındadır" şeklindeki sabit ifadeleri dikkate almayın. Oturum maliyetleri iki mertebe fark gösterebilir. Geçerli olan formül şudur:
turn cost = (uncached input x base input price)
+ (cache writes x 1.25 x base input price)
+ (cache reads x 0.10 x base input price)
+ (output incl. thinking x output price)
session cost = sum over all turnsClaude Opus 4.8 üzerinde uygulanmış örnek: Temmuz 2026 itibarıyla giriş token başına 1 milyon token için $5 ve çıkış için $25 maliyetle. 80.000 token birikmiş bağlam içeren orta seviye bir oturum dönüşü: 75.000 token cache'den okundu, 3.000 token yeni yazıldı, 2.000 token cache'lenmemiş yeni giriş, 1.500 token ise düşünme süreci dahil çıkış token'ıdır.
- Cache okuma: 75.000 × $0.50/M = $0.0375
- Cache yazma: 3.000 × $6.25/M = $0.019
- Cache'lenmemiş giriş: 2.000 × $5/M = $0.010
- Çıkış: 1.500 × $25/M = $0.0375
Dönüş başına yaklaşık $0.10; buna benzer elli dönüş yaklaşık $5 tutar. Şimdi aynı dönüşün cache süresi dolduktan sonraki hali: 80.000 token'ın tamamı $6.25/M maliyetle yeniden yazıldığında, çıkış öncesi maliyet $0.50 olur; bu, aynı iş için sıcak dönüşün yaklaşık beş katıdır. Bu fark, caching mekanizmasının tek bir sayıdaki özetidir.
Tahmin yerine kalibrasyon için: Anthropic tarafından yayınlanan veriler, Temmuz 2026 itibarıyla kurumsal Claude Code dağıtımları için aktif gün başına geliştirici başına ortalama $13 — ayda $150–250 — olarak belirtilmiştir; kullanıcıların %90'ı günlük $30 sınırının altında kalmaktadır. Maliyetiniz; model seçimi, oturum düzeni ve kod tabanı boyutuna bağlıdır; bu nedenle aşağıdaki parametreler önemlidir.
Kullanım miktarını görüntüleme
Claude Code içerisinde komut /usage'dir (/cost hala çalışmaktadır; bu bir takma addır). Üst kısımdaki Session bloğu, token istatistiklerini ve mevcut oturum için yerel olarak hesaplanmış maliyet tahminini gösterir; abonelik planlarında aynı ekran, plan limit çubuklarını ve son kullanımların yetenekler, alt ajanlar, eklentiler ve bireysel MCP sunucuları bazındaki dökümünü gösterir. API hesaplarında kesin faturalandırma için Claude Console üzerindeki kullanım sayfası esas kaynaktır; CLI verisi bir tahmindir. /context komutu, bağlam penceresini neyin doldurduğuna dair renkli bir ızgara çizer — sistem istemi, araçlar, MCP tanımları, dosyalar, geçmiş — ve şişmiş bir CLAUDE.md veya çok fazla veri gönderen bir MCP sunucusu tespit etmek için en hızlı yöntemdir; öğe bazlı tam dökümü genişletmek için all bayrağı kullanılır.
API üzerinden her yanıt, tam olarak ne olduğunu belirtir:
response = client.messages.create(model="claude-sonnet-5", max_tokens=2048,
messages=messages)
u = response.usage
total_prompt = u.input_tokens + u.cache_creation_input_tokens + u.cache_read_input_tokens
print(f"uncached={u.input_tokens} written={u.cache_creation_input_tokens} "
f"read={u.cache_read_input_tokens} output={u.output_tokens}")input_tokens değerinin yalnızca önbelleğe alınmamış kalan miktar olduğunu unutmayın; gerçek istem boyutu üç giriş alanının toplamıdır. input_tokens: 4000 gösteren ve bir saat boyunca çalışan bir ajan ucuz değildir; diğer 200,000 token önbellekten sağlanmıştır. Göndermeden önce tahmin yürütmek için token sayma uç noktasını kullanın; bu uç noktanın çağrılması ücretsizdir, kendi hız limitine sahiptir ve belirttiğiniz modelin tokenizer'ı ile sayım yapar (sonucu yakın bir tahmin olarak kabul edin; faturalandırma gerçek isteği yansıtır):
count = client.messages.count_tokens(model="claude-sonnet-5",
messages=[{"role": "user", "content": big_file}])
print(count.input_tokens)Yukarıdaki nedenden dolayı asla tiktoken yapmayın.
Abonelik planları ve kullandıkça öde yöntemi
Bu kılavuzdaki işleyiş her yerde aynıdır; yalnızca ödeme yöntemi farklılık gösterir. API anahtarı kullanıldığında, Anthropic her token için yayınlanan oranlar üzerinden kullandıkça öde yöntemiyle faturalandırma yapar; yukarıdaki tüm rakamlar gerçek maliyetlerdir. Claude aboneliğinde (Pro, Max, Team, Enterprise), Claude Code kullanımı plan dahilindeki kota üzerinden ilerler: Temmuz 2026 itibarıyla bu, modeller ve claude.ai sohbet ile paylaşılan, beş saatlik hareketli bir oturum penceresi ile haftalık bir penceredir; /usage dolar tutarı fatura değil, bilgilendirme amaçlıdır. Bir pencere dolduğunda, sıfırlanma süresiyle birlikte "You've hit your session limit" veya "You've hit your weekly limit" uyarısı alınır; /model ile model değiştirmek erişimi geri getirmez çünkü pencereler modeller arasında ortaktır. Planlar, limit aşımında kullanım satın almak için /usage-credits ile yönetilen kullanım kredilerini isteğe bağlı olarak etkinleştirebilir. Plan kotalarını kasıtlı olarak belirtmiyorum: bunlar bu konudaki en değişken rakamlardır; bunun yerine claude.com/pricing adresini ve kendi /usage çubuklarınızı kontrol edin. Token mekanikleri aboneliklerde de geçerlidir; verimsiz bir oturum, pencerenizi tıpkı dolar harcar gibi tüketir. Abonelik tarafı için kullanımınıza en uygun Claude planı hangisidir bölümüne bakın.
Etkili olan yöntemler
- Agent'ın okuduğu kapsamı belirleyin. "
auth.pyiçindeki doğrulama hatasını düzelt" komutu tek bir dosyayı okur; "bu kod tabanını iyileştir" komutu ise kırk dosyayı okur.CLAUDE.mdiçeriğini yalın tutun; her oturuma yüklendiği için sadece temel bilgileri dahil edin ve iş akışına özel talimatları yalnızca ihtiyaç duyulduğunda yüklenen yeteneklere (skills) taşıyın. - Net ve kompakt olun. İlgisiz görevler arasında
/clearkullanın; güncelliğini yitirmiş bağlam her mesajda tekrar gönderilir ve tekrar ücretlendirilir. Uzun bir görev içerisinde/compact Focus on the failing tests and the diffgeçmişi özetleyerek maliyet artışını engeller. - Doğru modeli seçin. Temmuz 2026 itibarıyla başlangıç fiyatlandırmasıyla milyon token başına 2$/10$ olan Sonnet çoğu kodlama işini halleder (Opus 5$/25$ iken), log ayıklama gibi mekanik alt görevler için 1$/5$ fiyatındaki Haiku doğru araçtır.
/modeloturum ortasında geçiş yapabilir. - Ayrıntılı çıktıyı önceden filtreleyin. Bir test çıktısını Claude görmeden önce sadece hatalara indirgeyen bir grep kancası (hook), 20.000 tokenlık araç sonucunu 300 tokena düşürür; bu işlem her yeni gönderimde tekrarlanır.
- Etkileşimli olmayan işleri toplu (batch) yapın. Kendi API boru hatlarınız için —sınıflandırma, toplu inceleme, gece işleri— Batches API, asenkron teslimat karşılığında aynı modelleri %50 indirimle çalıştırır.
- Önbellek süresine dikkat edin. Kesintisiz aralıklarla çalışın. Bir VPS üzerinde tmux içindeki Claude Code oturumu boşta dururken hiçbir maliyet oluşturmaz; tokenlar yalnızca bir tur çalıştığında harcanır; ancak boşta kalma süresi sıcak önbelleğin (warm cache) kaybedilmesine neden olur ve bir sonraki tur yeniden yazma maliyetiyle karşılaşır.
FAQ
Claude Code'daki bir kodlama oturumu kaç token kullanır?
Sabit bir sayı yoktur. Dosyalar ve geçmiş biriktikçe, orta seviye bir oturum turu genellikle on binlerce prompt token içerir. Aktif bir oturum ise milyonlarca tokena ulaşır; bunların çoğu, temel oranın onda biri maliyetle cache üzerinden sağlanır. Kalibrasyon için, Anthropic'in Temmuz 2026 itibarıyla yayınladığı kurumsal veriler, aktif gün başına geliştirici başına ortalama 13$ civarındadır ve kullanıcıların %90'ı 30$'ın altındadır. Kendi oturumunuzda /usage komutunu çalıştırın; beş dakikalık izleme süresi, yayınlanmış tüm ortalamalardan daha kesin sonuç verecektir.
Düşünme tokenları (thinking tokens) görünmese bile maliyet yaratır mı?
Evet. Düşünme tokenları, çıktı tokenı (output token) olarak faturalandırılır ve yüksek orandan hesaplanır. Bu tokenlar max_tokens limitinden düşer. Mevcut modeller, arayüz akıl yürütme özetini görüntülemasa bile bu tokenları faturalandırır. Eğer bir yanıt, görünür cevap bitmeden stop_reason: "max_tokens" ile kesilirse, muhtemelen düşünme işlemi bütçeyi tüketmiştir. Claude Code'da, derin akıl yürütme gerektirmeyen görevler için /effort ile çaba seviyesini (effort level) düşürebilirsiniz.
Claude Code oturumu uzadıkça mesaj başına maliyet neden artar?
Çünkü API durumsuzdır (stateless): her tur, tüm konuşmayı —okunan her dosya, araç sonucu ve önceki yazışmalar— faturalandırılan girdi olarak tekrar gönderir. Bu nedenle 50. tur, 1'den 49'a kadar olan tüm turları beraberinde taşır. Prompt caching, tekrarlanan prefix'i temel girdi fiyatının yaklaşık onda biri oranında sunar; ancak prefix büyümeye devam eder. Cache TTL süresi aşıldığında, bir sonraki tur tam fiyat üzerinden yeniden yazılır. /compact geçmişi küçültür; /clear geçmişi sıfırlar.
Claude token kullanımımı ve maliyetimi nasıl kontrol ederim?
Claude Code'da /usage komutu oturum token istatistiklerini, yerel maliyet tahminini ve abonelik planı limitlerini gösterir (/cost bir takma addır); /context ise pencereyi neyin doldurduğunu gösterir. Kesin API faturalandırması için Claude Console üzerindeki usage sayfasını kullanın. Kendi kodunuzda response.usage değerini okuyun; input_tokens, cache_creation_input_tokens ve cache_read_input_tokens değerlerinin toplamı gerçek prompt boyutunu verir. Tahminleme yapmak için count_tokens endpoint'ini kullanın, tiktoken kullanmayın.