YouTube API Quota Exceeded: Causes and Fixes
Why YouTube Data API requests fail with quotaExceeded, what the daily 10,000-unit quota actually costs per call, how to check and raise it, and how to avoid hitting it - including using a transcript API that doesn't consume your quota.
00:09:00 · SEP 13, 2026
Hızlı yanıt
quotaExceeded görüyorsunuz çünkü Google Cloud projeniz, gece yarısı Pasifik saatinde sıfırlanan YouTube Data API v3 için tam 10.000 birimlik günlük tahsisini kullandı. En hızlı çözümler: doğrudan bir ID araması işe yaradığında search.list (100 birim) kullanmayı bırakın, yeniden almak yerine sonuçları önbelleğe alın veya kendi YouTube kotanız üzerinden hiç çalışmayan bir transkript API'sine geçin.Bu neden oluyor
Her Google Cloud projesi, gece yarısı Pasifik saatinde sıfırlanan varsayılan bir YouTube Data API v3 kotasına günde 10.000 birim alır - devretme yoktur ve erken bir sıfırlamayı tetiklemenin bir yolu yoktur. Kota, API anahtarı başına değil, proje başına takip edilir, bu yüzden aynı projeden ikinci bir anahtar üretmek size ikinci bir havuz vermez.
Her API çağrısı isteklere değil birimlere mal olur - ve maliyetler dengesizdir. İşte geliştiricilerin gerçekten kullandığı uç noktalar genelindeki tam tablo:
| Çağrı | Kota maliyeti |
|---|---|
search.list | 100 birim |
videos.list | 1 birim |
channels.list | 1 birim |
playlistItems.list | 1 birim |
commentThreads.list | sayfa başına 1 birim |
captions.list | 50 birim |
captions.download | 200 birim, OAuth gerektirir (API anahtarı kimlik doğrulaması değil) |
Arama başına 100 birimle, bir proje tek bir altyazı indirilmeden önce, sadece 100 arama çağrısından sonra tüm günlük kotasını tüketebilir. Küçük projelerin sınıra takılmasının en yaygın yolu tam olarak budur: 10.000 istek yapmadılar, birkaç yüz pahalı çağrı yaptılar. Buna karşılık, videos.list, channels.list ve playlistItems.list her biri 1 birimle ucuzdur - zaten bir video, kanal veya çalma listesi ID'si biliyorsanız, bu çağrılar günlük bütçeyi zar zor eritir.
Mevcut kota kullanımınızı nasıl kontrol edersiniz
- API anahtarınıza bağlı proje için Google Cloud Console'u açın.
- APIs & Services → YouTube Data API v3 → Quotas & System Limits'e gidin.
- Bu, gerçek zamanlı değil kısa bir gecikmeyle güncellenen, Queries per day ve dakika başına sınırlara karşı mevcut kullanımınızı gösterir.
10.000 istek yapmadan önce zaten tavana yakınsanız, bu görünüm bunun yukarıdaki pahalı çağrı sorunu olduğunu, bir hata olmadığını doğrulamanızın yoludur.
quotaExceeded ve rateLimitExceeded karşılaştırması
İkisi de 403 döndürür ve günlük konuşmada ikisi de "kota hataları" olarak bir araya toplanır, ancak farklı düzeltmeleri olan farklı sorunlardır:
- quotaExceeded (neden:
dailyLimitExceeded) - projeniz tam günlük birim tahsisini kullandı. Gece yarısı Pasifik sıfırlamasını beklemek, çağrı başına maliyeti azaltmak veya onaylı bir kota artışı almak dışında hiçbir şey bunu düzeltmez. - rateLimitExceeded - günlük toplamınızdan bağımsız olarak, kısa bir pencerede çok hızlı istek gönderiyorsunuz. Bu bir bütçe sorunu değil, bir hız ayarı sorunudur - bunu geri çekilme ile doğru şekilde nasıl ele alacağınız için hız sınırı rehberimize bakın.
Bunu düzeltmenin beş yolu
- Agresif bir şekilde önbelleğe alın. Kota, kullanıcıya yönelik istek başına değil, API çağrısı başına ücretlendirilir - aynı videonun altyazılarını tekrar tekrar yeniden alıyorsanız, dakikadan dakikaya değişmeyen veriler için API'yi tekrar çağırmak yerine sonucu (basit bir bellek içi TTL önbelleği bile) önbelleğe alın.
- Doğrudan bir ID araması işe yaradığında
search.list'ten kaçının. Zaten bir video, kanal veya çalma listesi ID'niz varsa, karşılık gelen.listçağrısı bir aramadan 100 kat daha ucuzdur. - ID aramalarını toplu yapın.
videos.list, tek bir ID ile aynı 1 birimlik maliyet karşılığında çağrı başına 50'ye kadar virgülle ayrılmış ID kabul eder - 50 videoyu toplu yerine tek tek almak, hiçbir sebep olmadan 50 kat daha pahalıdır. - Bir kota artışı isteyin, gerçek üretim kullanımınız buna gerekçe olduğunda, Cloud Console'un kota sayfasından bağlantı verilen YouTube API Services Denetimi ve Kota Uzatma formu üzerinden. Anında onay değil, manuel bir inceleme bekleyin.
- Kendi YouTube kotanız üzerinden çalışmayan bir transkript API'si kullanın. GetYouTubeTranscript'in API'si,
captions.download'u sizin anahtarınızla proxy'lemek yerine transkriptleri kendi altyapısına karşı alır, bu yüzden yönetilecek 10.000 birimlik bir günlük tavan yoktur - yalnızca planın kendi istek hızı sınırı vardır.
Örnek: YouTube'un kotasına dokunmadan bir transkript alma
cURL:
curl "https://getyoutubetranscript.com/api/v1/transcript?v=dQw4w9WgXcQ" \
-H "Authorization: Bearer sk_live_..."Node.js:
const res = await fetch(
"https://getyoutubetranscript.com/api/v1/transcript?v=dQw4w9WgXcQ",
{ headers: { Authorization: `Bearer ${process.env.GETYOUTUBETRANSCRIPT_API_KEY}` } }
);
const { data } = await res.json();
console.log(data.transcript);Python:
import os, requests
res = requests.get(
"https://getyoutubetranscript.com/api/v1/transcript",
params={"v": "dQw4w9WgXcQ"},
headers={"Authorization": f"Bearer {os.environ['GETYOUTUBETRANSCRIPT_API_KEY']}"},
)
print(res.json()["data"]["transcript"])Bu, Google Cloud projenizin YouTube Data API kotasına karşı birim değil, GetYouTubeTranscript planınıza karşı 1 kredi harcar. Panelden kart gerekmeden 100 ücretsiz kredi alın veya tam API dokümanlarına bakın.
Geçici çözümler hakkında bir not
YouTube API kotası SSS
"The request cannot be completed because you have exceeded your quota" ne anlama gelir?
Google Cloud projenizin geçerli gün için tahsis edilen YouTube Data API v3 kota birimlerini tükettiği anlamına gelir. Google kotayı gece yarısı Pasifik saatinde sıfırlar ve varsayılan ücretsiz tahsis, proje başına (API anahtarı başına değil) takip edilen günde 10.000 birimdir.
Bir transkript almak gerçekte ne kadar kota tüketir?
YouTube Data API'sinin kendisinin doğrudan bir "transkript al" uç noktası yok - captions.list çağrısı, yalnızca mevcut altyazı parçalarını listelemek için 50 birime mal olur ve captions.download, (yalnızca bir API anahtarı değil) OAuth gerektirir ve 200 birime mal olur. Genellikle önce videoları bulmak için kullanılan bir search.list çağrısı tek başına 100 birime mal olur - bu yüzden birkaç arama artı altyazı araması, 10.000 birimlik bir günlük bütçeyi hızla tüketebilir.
quotaExceeded ile rateLimitExceeded arasındaki fark nedir?
quotaExceeded (hata gövdesinde dailyLimitExceeded nedeni olarak görünür), tam günlük birim tahsisinizi kullandığınız ve gece yarısı Pasifik sıfırlamasını beklemeniz gerektiği anlamına gelir. rateLimitExceeded, günlük toplamınızdan bağımsız olarak kısa bir pencerede çok hızlı istek gönderdiğiniz anlamına gelir - ayrıntılı fark için hız sınırı rehberimize bakın.
Daha fazla kota almak için birden çok API anahtarı kullanabilir miyim?
Hayır - kota, API anahtarı başına değil, Google Cloud projesi başına takip edilir. Aynı projeden üretilen birden çok anahtar, aynı 10.000 birimlik günlük havuzdan çeker. Kotayı çoğaltmak için ayrı projeler oluşturmak teknik olarak mümkündür ancak kota sınırlarını atlatmayı yasaklayan YouTube API Hizmet Şartlarını ihlal etme riski taşır.
Google'dan sadece bir kota artışı isteyebilir miyim?
Evet, Cloud Console'un kota sayfasından bağlantı verilen YouTube API Services Denetimi ve Kota Uzatma formu üzerinden, ancak onay garanti veya anında değildir - gerçek kullanım ayrıntılarıyla üretim kullanımını gerekçelendirmeyi gerektirir ve Google istekleri manuel olarak inceler. Daha fazla kota için sadece ödeme yapabileceğiniz kendi kendine hizmet bir yol yoktur.
Ücretsiz 10.000 birimlik kotanın bir maliyeti var mı?
Hayır - bu, YouTube Data API v3'ü etkinleştiren her Google Cloud projesine verilen varsayılan ücretsiz tahsistir. Kullanmak için bağlı bir faturalama hesabına ihtiyacınız yok, ancak Google bir artış isterken faturalamayı etkinleştirmenizi isteyebilir.
GetYouTubeTranscript'in API'si kendi YouTube API kotamı kullanıyor mu?
Hayır. YouTube'un Data API'sini sizin anahtarınızla proxy'lemiyor - transkript çıkarma kendi altyapımıza karşı çalışır, bu yüzden sizin tarafınızda yönetilecek bir captions.list/download kotası yoktur. Yalnızca kendi yayınlanmış hız sınırlarımızla (ücretsizde dakikada 60 istek, yıllık planda dakikada 300 isteğe kadar) sınırlısınız.
İlgili
- YouTube Transcript API Rate Limit: What It Is and How to Handle 429s
- YouTube Transcript MCP Server: Setup Guide for Claude and Other AI Tools
- YouTube Transcripts in n8n: HTTP Request Workflow Guide
- GetYouTubeTranscript ve TranscriptAPI karşılaştırması
- GetYouTubeTranscript ve youtubetotranscript.com karşılaştırması
- GetYouTubeTranscript ve youtube-transcript.io karşılaştırması