Limity darmowego planu OpenRouter i jak naprawić błędy 429
Updated 2026-07-15
Darmowe warianty modeli OpenRouter są ograniczone do około 20 żądań na minutę, plus 50 żądań dziennie, jeśli Twoje konto kupiło łącznie mniej niż $10 w kredytach, albo 1000 dziennie po przekroczeniu tego progu. 429 oznacza, że trafiłeś na jeden z tych limitów albo że w danym momencie wspólna darmowa pula jest nasycona.
Szybka odpowiedź: dokładne limity darmowego planu
OpenRouter ogranicza darmowe użycie na dwóch osiach: sufit na minutę i dzienny budżet żądań. Limit na minutę dla darmowych wariantów modeli (ID modeli kończące się na :free) to 20 żądań na minutę. Dzienny budżet zależy od tego, czy Twoje konto kiedykolwiek kupiło co najmniej $10 w kredytach: poniżej tego progu łącznego dostajesz 50 żądań do darmowych modeli dziennie, na progu albo powyżej dostajesz 1000 dziennie. To liczby, które OpenRouter dokumentuje na początek 2026. Zmieniały się wcześniej (dzienny limit bywał wyższy), więc traktuj tabelę jako obecny punkt odniesienia, a nie stałą gwarancję, i zweryfikuj to na własnym kluczu, korzystając ze sprawdzenia w następnej sekcji. Odpowiedź 429 oznacza, że przekroczyłeś jeden z tych limitów, albo że dostawca obsługujący ten darmowy model wyczerpał pojemność, mimo że Twój osobisty limit był w porządku. Reszta tego przewodnika omawia, jak rozpoznać, na który trafiłeś, i co z tym zrobić.
| Limit | Wartość | Kiedy obowiązuje |
|---|---|---|
| Żądania na minutę | 20 rpm | Wszystkie warianty modeli :free, per konto |
| Żądania na dzień | 50 | Mniej niż $10 łącznych zakupów kredytów |
| Żądania na dzień | 1,000 | $10 lub więcej łącznych zakupów kredytów |
| Modele płatne | Osobne, znacznie wyższe limity | Każdy model niedarmowy, rozliczany per token |
Jak faktycznie działa darmowy plan
Darmowe modele na OpenRouter to osobne wpisy katalogowe z sufiksem :free. Są serwowane przez dostawców, którzy przekazują albo dotują pojemność, dlatego ich dostępność waha się dużo bardziej niż płatnych wariantów tych samych wag. Trzy szczegóły potykają ludzi. Po pierwsze, dzienny limit obowiązuje na całe konto: 50 żądań rozłożonych na dowolną mieszankę darmowych modeli, a nie 50 na model. Po drugie, próg $10 liczy łączne zakupy kredytów, a nie bieżące saldo. Jednorazowy zakup za $10 utrzymuje Cię w przedziale 1000 żądań dziennie nawet po ich wydaniu. Po trzecie, limity są egzekwowane per konto, więc tworzenie dodatkowych kluczy API na tym samym koncie nic nie dodaje. Możesz dokładnie sprawdzić, gdzie stoi Twój klucz. Odpowiedź zawiera is_free_tier, dotychczasowe użycie oraz obiekt rate_limit aktualnie zastosowany do Twojego klucza:
curl https://openrouter.ai/api/v1/auth/key \
-H "Authorization: Bearer $OPENROUTER_API_KEY"
# Pola odpowiedzi warte przeczytania:
# "is_free_tier": true -> poniżej łącznego progu $10
# "usage": 1.42 -> zużyte kredyty
# "rate_limit": {...} -> limit na interwał dla tego kluczaDlaczego 429 rośnie w godzinach szczytu
Twoje osobiste limity to tylko połowa historii. Darmowa pojemność to wspólna pula, a OpenRouter może skierować darmowe żądanie tylko do dostawcy z wolną dotowaną pojemnością w danym momencie. Gdy popularny darmowy model się nasyca, dostajesz 429 albo błędy od dostawcy, nawet jeśli tego dnia wysłałeś zaledwie garstkę żądań. Zgłoszenia społeczności konsekwentnie opisują wieczory w amerykańskich strefach czasowych i weekendy jako najgorsze okna, przy czym to samo żądanie od razu się udaje poza szczytem. To przybliżone obserwacje, a nie opublikowane liczby, ale powtarzają się na tyle często, żeby na nich planować. Interfejsy czatowe wzmacniają problem. Interfejsy w stylu SillyTavern i JanitorAI wysyłają nowe żądanie completion przy każdym swipe, regeneracji i turze czatu grupowego, a niektóre konfiguracje proxy automatycznie ponawiają nieudane próby. Użytkownik, któremu wydaje się, że wysłał 15 wiadomości, mógł wygenerować od 40 do 50 żądań, czyli cały dzienny budżet konta poniżej progu $10. Agresywne automatyczne ponawianie pogłębia też przeciążenie w szczycie dla wszystkich, dlatego zdyscyplinowany backoff ma znaczenie. Praktyczna diagnoza: jeśli 429 znika, kiedy czekasz do dziennego resetu, trafiłeś na swój limit. Jeśli pojawia się i znika w ciągu tej samej godziny przy niskiej liczbie żądań, widzisz przeciążenie puli.
Naprawy, w kolejności wysiłku
Jeśli utrzymujesz ruch na darmowym planie, minimalnie zdolny klient obsługuje 429 wprost, zamiast zawodzić albo ślepo ponawiać:
- Najpierw przeczytaj treść błędu. 429 z OpenRouter rozróżnia między Twoim limitem na minutę, wyczerpanym dziennym limitem a przeciążeniem u dostawcy. Napraw ten, na który faktycznie trafiłeś.
- Szanuj Retry-After i wycofuj się wykładniczo z jitterem. Młócenie endpointu utrzymuje Cię dłużej w limicie i pogarsza przeciążenie.
- Przekrocz raz próg $10 łącznych kredytów. Podnosi to dzienny limit z 50 do 1000 żądań i jest pojedynczą naprawą o największej dźwigni dla 429 z powodu dziennego limitu.
- Przenieś ruch, na którym Ci zależy, na płatny wariant tego samego modelu. Modele klasy DeepSeek kosztują znacznie poniżej dolara za milion tokenów, więc intensywny wieczór czatu zwykle kosztuje centy.
- Ogranicz liczbę żądań po stronie klienta: wyłącz automatyczną regenerację, unikaj zbędnych swipeów i przytnij kontekst, żeby każde ponowienie było tańsze, gdy już nastąpi.
import random
import time
import requests
def chat(payload: dict, key: str, retries: int = 5) -> dict:
for attempt in range(retries):
r = requests.post(
"https://openrouter.ai/api/v1/chat/completions",
headers={"Authorization": f"Bearer {key}"},
json=payload,
timeout=120,
)
if r.status_code != 429:
r.raise_for_status()
return r.json()
wait = float(r.headers.get("Retry-After", 2 ** attempt + random.random()))
time.sleep(wait)
raise RuntimeError("Still rate limited after all retries")Alternatywy, gdy 50 żądań dziennie to za mało
Jeśli Twój wzorzec użycia konsekwentnie przekracza darmowy budżet, są cztery realistyczne ścieżki. Właściwa zależy od tego, czy Twoim wąskim gardłem jest dzienny limit, przeciążenie w godzinach szczytu, czy jedno i drugie. Warto zauważyć, że płatne opcje różnią się głównie narzutem, a nie kształtem żądania: wszystkie mówią tym samym formatem chat completions kompatybilnym z OpenAI, więc przełączenie to zmiana base URL i klucza, a nie przepisanie kodu.
| Opcja | Model kosztów | Zachowanie limitu zapytań | Kompromis |
|---|---|---|---|
| Warianty OpenRouter :free | $0 | 20 rpm; 50 albo 1000 żądań/dzień | Wspólna pula, przeciążenie w szczycie |
| Płatne modele OpenRouter | Per token, kredyty z góry | Znacznie wyższe, skaluje się z kontem | Opłata platformy przy zakupie kredytów |
| Bezpośrednie API dostawców | Per token po oficjalnej cenie | Plany zależne od dostawcy | Osobny klucz i rozliczenia dla każdego dostawcy |
| Bezpośrednie gatewaye z płatnością za użycie | Per token, bez subskrypcji | Płatna pojemność, brak rywalizacji o darmową pulę | Płacisz od pierwszego żądania |
| Samodzielnie hostowane open weights | Sprzęt i prąd | Ograniczone wyłącznie przez Twoje GPU | Wysiłek konfiguracyjny, sufit rozmiaru modelu |
Uruchamianie frontendu czatu na bezpośrednim gatewayu
Bezpośredni gateway zachowuje kształt żądania kompatybilny z OpenAI, ale usuwa kolejkę darmowej puli, bo każde żądanie to płatna pojemność. APIsRouter to jeden z przykładów: płatność za użycie bez subskrypcji i checkout bez rejestracji na /topup, gdzie najpierw płacisz, a klucz API przychodzi e-mailem. Modele globalne kosztują 20% mniej niż oficjalny cennik, modele chińskie są poniżej swoich oficjalnych stawek, a pierwsze doładowanie podwaja saldo początkowe. Konfiguracja frontendu odzwierciedla to, co już robisz z OpenRouter. W SillyTavern wklej base URL kończący się na /v1 (https://api.apisrouter.com/v1), a lista modeli automatycznie uzupełni się z /v1/models przy użyciu Twojego klucza. Konfiguracja proxy JanitorAI wymaga zamiast tego pełnego endpointu: https://api.apisrouter.com/v1/chat/completions, plus nazwy modelu i klucza API. Dla ruchu czatu postaci i roleplay rodzina DeepSeek V4 jest ulubieńcem społeczności pod względem opłacalności, a MiMo, GLM-5 i Kimi K2.6 to kolejne opcje cenowe. Claude Sonnet 4.6 pisze najmocniejszą prozę do twórczego pisania bez treści dla dorosłych, zgodnie z polityką treści Anthropic.
| Model | ID modelu | Wejście / wyjście za 1M tokenów |
|---|---|---|
| DeepSeek V4 Flash | deepseek-v4-flash | $0.126 / $0.252 |
| DeepSeek V4 Pro | deepseek-v4-pro | $0.3915 / $0.783 |
| GLM-5 | glm-5 | $0.514 / $2.314 |
| Gemini 3.5 Flash | gemini-3.5-flash | $1.20 / $7.20 |
| Claude Sonnet 4.6 | claude-sonnet-4-6 | $2.40 / $12.00 |
curl https://api.apisrouter.com/v1/chat/completions \
-H "Authorization: Bearer sk-..." \
-H "Content-Type: application/json" \
-d '{
"model": "deepseek-v4-flash",
"messages": [{"role": "user", "content": "Hello"}]
}'Częste pytania
Czy OpenRouter jest darmowy?
Częściowo. OpenRouter listuje darmowe warianty niektórych modeli (ID kończące się na :free), które nic nie kosztują, ale są ograniczone do około 20 żądań na minutę i 50 albo 1000 żądań dziennie, zależnie od tego, czy kiedykolwiek kupiłeś $10 w kredytach. Wszystkie pozostałe wpisy modeli są płatne per token.
Dlaczego wciąż dostaję błędy 429 na OpenRouter?
429 oznacza, że przekroczyłeś limit na minutę, wyczerpałeś dzienny budżet darmowych żądań, albo że wspólna pojemność u dostawcy dla tego darmowego modelu jest nasycona. Treść błędu mówi, który przypadek zaszedł. 429 z powodu limitu utrzymuje się do dziennego resetu; 429 z powodu przeciążenia zwykle znika poza szczytem.
Jak zwiększyć swój limit zapytań na OpenRouter?
Kup raz $10 w kredytach. Ten łączny próg podnosi dzienny limit darmowych modeli z 50 do 1000 żądań. Poza tym opcje to przeniesienie ruchu na płatne warianty modeli, rozłożenie żądań z backoffem albo kierowanie nadmiaru przez innego dostawcę albo gateway.
Czy darmowe modele OpenRouter mają dzienny limit?
Tak. Dzienny budżet jest wspólny dla wszystkich darmowych modeli na Twoim koncie: 50 żądań dziennie poniżej $10 łącznych zakupów kredytów, 1000 dziennie na progu albo powyżej. Jest egzekwowany na poziomie konta, więc dodatkowe klucze API na tym samym koncie nie dodają limitu.
Czy darmowy plan wystarcza do JanitorAI albo SillyTavern?
Do lekkich testów tak. W praktyce każdy swipe, regeneracja i tura grupowa to osobne żądanie, więc aktywna sesja może szybko spalić 50 żądań, a przeciążenie w szczycie dokłada do tego kolejne błędy. Intensywni użytkownicy zwykle przechodzą na tanie płatne modele. Niezależnie od tego, czego używasz, przestrzegaj regulaminu platformy frontendowej, w tym wymagań wiekowych, oraz polityki treści dostawcy modelu.