Limites du palier gratuit OpenRouter et comment corriger les erreurs 429
Updated 2026-07-15
Les variantes de modèles gratuites d'OpenRouter sont plafonnées à environ 20 requêtes par minute, plus 50 requêtes par jour si votre compte a acheté moins de $10 de crédits cumulés à vie, ou 1 000 par jour une fois ce seuil dépassé. Une erreur 429 signifie que vous avez atteint l'un de ces plafonds ou que le pool gratuit partagé est saturé à ce moment-là.
Réponse rapide : les limites exactes du palier gratuit
OpenRouter plafonne l'usage gratuit sur deux axes : un plafond par minute et un budget quotidien de requêtes. Le plafond par minute pour les variantes de modèles gratuites (IDs de modèles se terminant par :free) est de 20 requêtes par minute. Le budget quotidien dépend du fait que votre compte a déjà acheté au moins $10 de crédits : en dessous de ce seuil cumulé à vie, vous avez 50 requêtes de modèles gratuits par jour, à ce seuil ou au-dessus, vous en avez 1 000 par jour. Ce sont les chiffres qu'OpenRouter documente début 2026. Ils ont déjà changé par le passé (le plafond quotidien était plus élevé auparavant), donc traitez le tableau comme la base actuelle plutôt que comme une garantie permanente, et vérifiez avec votre propre clé grâce à la méthode de la section suivante. Une réponse 429 signifie que vous avez dépassé l'un de ces plafonds, ou que le fournisseur en amont servant ce modèle gratuit a manqué de capacité même si votre quota personnel était correct. Le reste de ce guide couvre comment distinguer les deux et que faire dans chaque cas.
| Limite | Valeur | S'applique quand |
|---|---|---|
| Requêtes par minute | 20 rpm | Toutes les variantes de modèles :free, par compte |
| Requêtes par jour | 50 | Moins de $10 de crédits achetés à vie |
| Requêtes par jour | 1 000 | $10 ou plus de crédits achetés à vie |
| Modèles payants | Limites séparées, bien plus élevées | Tout modèle non gratuit, facturé au token |
Comment fonctionne vraiment le palier gratuit
Les modèles gratuits sur OpenRouter sont des entrées de catalogue séparées avec un suffixe :free. Ils sont servis par des fournisseurs qui donnent ou subventionnent de la capacité, ce qui explique pourquoi leur disponibilité varie bien plus que les variantes payantes des mêmes poids. Trois détails piègent souvent les gens. D'abord, le plafond quotidien s'applique à l'ensemble du compte : 50 requêtes réparties sur n'importe quel mélange de modèles gratuits, pas 50 par modèle. Ensuite, le seuil de $10 compte les achats de crédits cumulés à vie, pas le solde actuel. Acheter $10 une fois vous maintient dans la tranche des 1 000 requêtes par jour même après les avoir dépensés. Enfin, les limites sont appliquées par compte, donc créer des clés API supplémentaires sous le même compte n'ajoute rien. Vous pouvez vérifier exactement où en est votre clé. La réponse inclut is_free_tier, votre usage jusqu'ici, et l'objet de limite de débit actuellement appliqué à votre clé :
curl https://openrouter.ai/api/v1/auth/key \
-H "Authorization: Bearer $OPENROUTER_API_KEY"
# Champs de réponse à lire :
# "is_free_tier": true -> sous le seuil de $10 cumulés à vie
# "usage": 1.42 -> crédits consommés
# "rate_limit": {...} -> la limite par intervalle sur cette cléPourquoi les erreurs 429 explosent aux heures de pointe
Vos plafonds personnels ne sont que la moitié de l'histoire. La capacité gratuite est un pool partagé, et OpenRouter ne peut router une requête gratuite que vers un fournisseur ayant de la capacité subventionnée disponible à ce moment-là. Quand un modèle gratuit populaire sature, vous obtenez des erreurs 429 ou des erreurs en amont même si vous n'avez fait qu'une poignée de requêtes ce jour-là. Les retours de la communauté décrivent systématiquement les soirées aux fuseaux horaires américains et les week-ends comme les pires créneaux, avec la même requête qui réussit instantanément aux heures creuses. Ce sont des observations approximatives, pas des chiffres publiés, mais elles reviennent assez souvent pour qu'on planifie en conséquence. Les interfaces de chat amplifient le problème. Les interfaces de style SillyTavern et JanitorAI envoient une nouvelle requête de complétion à chaque swipe, régénération, et tour de chat de groupe, et certaines configurations de proxy relancent automatiquement les échecs. Un utilisateur qui a l'impression d'avoir envoyé 15 messages a pu générer 40 à 50 requêtes, soit tout le budget quotidien d'un compte sous le seuil de $10. Les nouvelles tentatives automatiques agressives aggravent aussi la congestion aux heures de pointe pour tout le monde, ce qui explique pourquoi un backoff discipliné compte. Le diagnostic pratique : si les 429 s'arrêtent quand vous attendez la réinitialisation quotidienne, vous avez atteint votre quota. S'ils vont et viennent dans la même heure alors que votre nombre de requêtes est faible, vous observez de la congestion du pool.
Corrections, par ordre d'effort
Si vous gardez le trafic sur le palier gratuit, le client minimal viable gère l'erreur 429 explicitement plutôt que d'échouer ou de relancer aveuglément :
- Lisez d'abord le corps de l'erreur. Les 429 d'OpenRouter distinguent votre limite par minute, votre quota quotidien épuisé, et la congestion en amont. Corrigez celui que vous avez vraiment atteint.
- Respectez Retry-After et reculez de façon exponentielle avec du jitter. Marteler l'endpoint vous maintient rate-limité plus longtemps et aggrave la congestion.
- Franchissez une fois le seuil de $10 de crédits cumulés à vie. Ça relève le plafond quotidien de 50 à 1 000 requêtes et c'est la correction la plus efficace pour les erreurs 429 de quota quotidien.
- Déplacez le trafic qui compte vers une variante payante du même modèle. Les modèles de classe DeepSeek coûtent bien moins d'un dollar par million de tokens, donc une soirée intensive de chat coûte généralement des centimes.
- Réduisez le volume de requêtes côté client : désactivez la régénération automatique, évitez les swipes inutiles, et réduisez le contexte pour que chaque nouvelle tentative soit moins coûteuse quand elle arrive.
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")Alternatives quand 50 requêtes par jour ne suffisent pas
Si votre usage dépasse constamment le budget gratuit, il existe quatre voies réalistes. La bonne dépend de si votre goulot d'étranglement est le quota quotidien, la congestion aux heures de pointe, ou les deux. À noter que les options payantes diffèrent surtout par leurs frais généraux, pas par la forme des requêtes : toutes parlent le même format de complétion de chat compatible OpenAI, donc changer est un changement de base URL et de clé plutôt qu'une réécriture.
| Option | Modèle de coût | Comportement des limites de débit | Compromis |
|---|---|---|---|
| Variantes :free d'OpenRouter | $0 | 20 rpm ; 50 ou 1 000 requêtes/jour | Pool partagé, congestion aux heures de pointe |
| Modèles payants OpenRouter | Au token, crédits à l'avance | Bien plus élevé, évolue avec le compte | Frais de plateforme sur les achats de crédits |
| API directes des fournisseurs | Au token, au tarif officiel | Paliers spécifiques au fournisseur | Clé et facturation séparées par fournisseur |
| Passerelles directes à l'usage | Au token, sans abonnement | Capacité payante, pas de contention du pool gratuit | Vous payez dès la première requête |
| Poids ouverts auto-hébergés | Matériel et électricité | Limité seulement par votre GPU | Effort de configuration, plafond de taille de modèle |
Faire tourner une interface de chat sur une passerelle directe
Une passerelle directe garde la forme de requête compatible OpenAI mais supprime la file d'attente du pool gratuit, car chaque requête est de la capacité payante. APIsRouter en est un exemple : paiement à l'usage sans abonnement, et un paiement sans inscription sur /topup où vous payez d'abord et la clé API arrive par e-mail. Les modèles internationaux tournent à 20% en dessous du tarif officiel, les modèles chinois sont en dessous de leurs tarifs officiels, et une première recharge double votre solde de départ. La configuration côté interface reflète ce que vous faites déjà avec OpenRouter. Dans SillyTavern, collez la base URL se terminant par /v1 (https://api.apisrouter.com/v1) et la liste de modèles se remplit automatiquement depuis /v1/models avec votre clé. La configuration proxy de JanitorAI a besoin de l'endpoint complet à la place : https://api.apisrouter.com/v1/chat/completions, plus le nom du modèle et la clé API. Pour le trafic de chat de personnages et de roleplay, la famille DeepSeek V4 est la favorite de la communauté côté rapport qualité-prix, avec MiMo, GLM-5, et Kimi K2.6 comme autres choix de valeur. Claude Sonnet 4.6 écrit la prose la plus forte pour l'écriture créative tout public sous la politique de contenu d'Anthropic.
| Modèle | ID du modèle | Entrée / sortie par 1M tokens |
|---|---|---|
| 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"}]
}'Questions fréquentes
OpenRouter est-il gratuit ?
En partie. OpenRouter liste des variantes gratuites de certains modèles (IDs se terminant par :free) qui ne coûtent rien mais sont plafonnées à environ 20 requêtes par minute et 50 ou 1 000 requêtes par jour, selon que vous ayez déjà acheté $10 de crédits. Toutes les autres entrées de modèles sont payantes au token.
Pourquoi est-ce que je reçois sans arrêt des erreurs 429 sur OpenRouter ?
Une erreur 429 signifie que vous avez dépassé la limite par minute, épuisé votre budget quotidien de requêtes gratuites, ou que la capacité amont partagée pour ce modèle gratuit est saturée. Le corps de l'erreur indique laquelle. Les 429 de quota persistent jusqu'à la réinitialisation quotidienne ; les 429 de congestion se dissipent généralement aux heures creuses.
Comment augmenter ma limite de débit sur OpenRouter ?
Achetez $10 de crédits une fois. Ce seuil cumulé à vie relève le plafond quotidien des modèles gratuits de 50 à 1 000 requêtes. Au-delà, les options sont de déplacer le trafic vers des variantes de modèles payantes, d'espacer les requêtes avec du backoff, ou de router le surplus via un autre fournisseur ou une autre passerelle.
Les modèles gratuits OpenRouter ont-ils une limite quotidienne ?
Oui. Le budget quotidien est partagé entre tous les modèles gratuits de votre compte : 50 requêtes par jour en dessous de $10 de crédits achetés à vie, 1 000 par jour à ce seuil ou au-dessus. C'est appliqué au niveau du compte, donc des clés API supplémentaires sur le même compte n'ajoutent pas de quota.
Le palier gratuit suffit-il pour JanitorAI ou SillyTavern ?
Pour des tests légers, oui. En pratique, chaque swipe, régénération, et tour de groupe est une requête séparée, donc une session active peut brûler 50 requêtes rapidement, et la congestion aux heures de pointe ajoute des échecs par-dessus. Les utilisateurs intensifs passent typiquement à des modèles payants bon marché. Quoi que vous utilisiez, respectez les CGU de la plateforme d'interface, y compris ses exigences d'âge, et la politique de contenu du fournisseur du modèle.