Convertir Rate Limit API: RPM, RPS y RPD
Convertí RPM, RPS y RPD al instante. Calculá rate limits de APIs como MercadoPago, OpenAI o Google Maps y evitá errores 429.
Ver cálculo paso a paso
Calculadora específica para Argentina. Las leyes, escalas y valores son los vigentes en Argentina (ARCA, BCRA, ANSES).
La herramienta convierte entre las tres unidades estándar de rate limiting: RPS (Requests Per Second), RPM (Requests Per Minute) y RPD (Requests Per Day). La fórmula base es simple: RPS = RPM ÷ 60 = RPD ÷ 86 400. Pero tener el número exacto importa: si configurás NGINX con 8 r/s cuando tu plan permite 8,33 r/s, estás dejando el 4% de tu cuota sin usar y posiblemente generando rechazos innecesarios en picos de tráfico.
En Argentina, esto tiene relevancia práctica concreta: la API de MercadoPago tiene límites diferenciados entre ambiente productivo y sandbox, y superarlos genera bloqueos temporales que pueden afectar transacciones reales. Las APIs del BCRA (tipos de cambio) y de AFIP/ARCA (validación de CUIT, facturación electrónica) también tienen restricciones de tasa que muchos desarrolladores descubren recién cuando la app explota en producción.
Esta calculadora te da los tres valores simultáneamente: ingresás cualquier unidad y obtenés las otras dos al instante, sin registro, sin conversiones manuales. Útil para diseñar sistemas de retry, dimensionar workers paralelos, comparar planes antes de contratar, y documentar límites en tu README o runbook de incidentes.
Cuándo usar esta calculadora
- Integrás la API de facturación electrónica de ARCA (ex-AFIP) que permite 60 RPM en el servicio wsfe: convertís a 1 RPS y sabés que con un solo worker sincrónico en producción no vas a tener problemas, pero dos workers concurrentes ya rozan el límite.
- MercadoPago en producción permite 600 RPM para el endpoint de pagos; en sandbox son 60 RPM. Antes del go-live de tu e-commerce convertís ambos a RPS (10 RPS vs 1 RPS) para ajustar los tests de carga sin que te bloqueen la cuenta.
- Configurás NGINX para un backend propio que debe aceptar exactamente 1 200 RPM: la calculadora te da 20 RPS, y usás
rate=20r/sconburst=40para absorber picos de 2 segundos sin devolver 503. - El tier gratuito de OpenAI GPT-4o tiene 3 RPM y 200 RPD. Convertís el RPD a RPS (200 ÷ 86 400 = 0,0023 RPS) y entendés que la restricción real no es por velocidad sino por volumen diario: 200 requests en 24 horas, sin importar cuán lento los mandes.
- La API autenticada de GitHub devuelve 5 000 RPH para scraping de repositorios. Dividís por 3 600 y obtenés 1,39 RPS; con eso dimensionás que podés correr 1 worker con un sleep de 720 ms entre requests sin acercarte al límite.
- Diseñás un sistema de monitoreo que consulta la API pública del BCRA (cotizaciones) cada N segundos desde 50 instancias distribuidas. Con el límite documentado de la API calculás cuántas instancias podés correr en paralelo antes de necesitar un proxy centralizador.
- Comparás tres planes de un proveedor de SMS en Argentina: Plan A ofrece 100 RPM, Plan B 500 RPM, Plan C 30 RPS. Convertís todo a RPM (Plan C = 1 800 RPM) y elegís Plan C para una campaña de 800 mensajes en el menor tiempo posible.
- Implementás backoff exponencial en tu cliente de API: sabés que el límite es 10 RPS (600 RPM), el burst tolerado es 30 requests, y calculás que con 3 reintentos (esperas de 1 s, 2 s y 4 s) el tiempo máximo de recuperación es 7 segundos, mucho menos que el minuto que tarda en resetearse la ventana fija.
Conversión exacta entre RPS, RPM, RPH y RPD
Equivalencias para los valores de rate limit más frecuentes.
| RPM | RPS | RPH | RPD |
|---|---|---|---|
| 1 | 0,02 | 60 | 1.440 |
| 10 | 0,17 | 600 | 14.400 |
| 60 | 1 | 3.600 | 86.400 |
| 100 | 1,67 | 6.000 | 144.000 |
| 500 | 8,33 | 30.000 | 720.000 |
| 1.000 | 16,67 | 60.000 | 1.440.000 |
| 3.000 | 50 | 180.000 | 4.320.000 |
RPS = RPM ÷ 60. RPH = RPM × 60. RPD = RPM × 1.440. Cuidado: GitHub publica el límite en RPH (por hora), no RPM — dividir por 3.600 para pasar a RPS.
Cómo funciona
Cómo se calcula
Las conversiones entre unidades de rate limit son divisiones y multiplicaciones exactas basadas en los segundos de cada período:
# Conversiones exactas
RPS = valor_RPM / 60
RPS = valor_RPD / 86400
RPM = valor_RPS * 60
RPM = valor_RPD / 1440
RPD = valor_RPS * 86400
RPD = valor_RPM * 1440
# Ejemplo: 60 RPM
RPS = 60 / 60 = 1.0000 RPS
RPD = 60 * 1440 = 86 400 RPD
# Ejemplo: 500 RPS
RPM = 500 * 60 = 30 000 RPM
RPD = 500 * 86400 = 43 200 000 RPD> Nota de precisión: RPD = RPM × 1 440 (minutos/día = 24 × 60). RPD = RPS × 86 400 (segundos/día = 24 × 3 600).
---
Tabla de referencia
Valores típicos de rate limits de APIs populares en 2025:
| API / Servicio | Plan | Límite publicado | En RPS | En RPD |
|---|---|---|---|---|
| OpenAI GPT-4o (free) | Free tier | 3 RPM | 0.05 RPS | 4 320 RPD |
| OpenAI GPT-4o (Tier 1) | Pago básico | 500 RPM | 8.33 RPS | 720 000 RPD |
| OpenAI GPT-3.5 (Tier 1) | Pago básico | 3 500 RPM | 58.33 RPS | 5 040 000 RPD |
| Google Maps Platform | Pay-as-you-go | 3 000 RPM | 50 RPS | 4 320 000 RPD |
| MercadoPago API (sandbox) | Sandbox | 60 RPM | 1 RPS | 86 400 RPD |
| MercadoPago API (prod.) | Producción | 600 RPM | 10 RPS | 864 000 RPD |
| Twitter/X API v2 (free) | Free | 1 500 RPM (app) | 25 RPS | 2 160 000 RPD |
| Stripe API | Live mode | 100 RPS | 100 RPS | 8 640 000 RPD |
| GitHub REST API | Authenticated | 5 000 RPH | 1.39 RPS | 120 000 RPD |
NGINX limit_req típico | Config propia | 10 RPS (r/s) | 10 RPS | 864 000 RPD |
> RPH = Requests Per Hour (÷ 3 600 para convertir a RPS).
---
Casos típicos
Caso 1 — Chatbot con GPT-4o en plan gratuito
Un estudiante quiere un bot de Telegram usando GPT-4o free tier (3 RPM).
RPS = 3 / 60 = 0.05 RPSEsto significa que solo puede hacer 1 consulta cada 20 segundos. Si el bot recibe 5 mensajes simultáneos, 4 quedarán en cola o recibirán error 429. La solución es implementar un queue con delay mínimo de 20 s entre llamadas, o upgradearse al Tier 1 (500 RPM = 8,33 RPS).
Caso 2 — E-commerce con MercadoPago
Un e-commerce recibe 800 órdenes/hora en Black Friday. El endpoint de payments tiene límite de 600 RPM en producción.
RPS_disponible = 600 / 60 = 10 RPS
Demanda_pico = 800 / 3600 = 0.22 RPS
Margen = 10 / 0.22 = 45x ✓ sobra margenIncluso en el pico más exigente, el límite no se alcanza. Sin embargo, si un worker mal configurado hace polling cada 100 ms (10 RPS solo), consume toda la cuota.
Caso 3 — Configurar NGINX como API Gateway
Necesitás limitar un microservicio interno a 1 200 RPM:
RPS = 1200 / 60 = 20 RPS
# nginx.conf
limit_req_zone $binary_remote_addr zone=api:10m rate=20r/s;
limit_req zone=api burst=40 nodelay;El parámetro burst=40 permite absorber picos de hasta el doble del rate durante 2 segundos sin devolver 503.
---
Errores comunes
1. Confundir RPM de API con RPM de motor: El contexto importa. En tecnología, RPM siempre es Requests Per Minute, no revoluciones. Si copiás un valor de documentación de hardware, verificá las unidades.
2. Ignorar el límite por token/usuario vs. límite global: Muchas APIs (OpenAI, GitHub) tienen rate limits por API key Y por IP. Escalar horizontalmente con múltiples workers bajo la misma key NO multiplica el límite.
3. No contemplar retries en el cálculo: Si tu sistema hace retry automático ante error 429 con 3 intentos, el consumo real de RPS puede triplicarse en escenarios de saturación, generando un loop de saturación.
4. Asumir que el límite es parejo en el tiempo: Algunos proveedores usan ventanas deslizantes (sliding window) y otros usan ventanas fijas (fixed window). En ventana fija, podés gastar 60 RPM en los primeros 5 segundos y quedar bloqueado los 55 restantes.
5. Olvidar convertir RPH a RPS/RPM: La API de GitHub usa Requests Per Hour (5 000 RPH). Dividir por 60 da RPM (83,3), no RPS. El error de conversión puede hacer que configures un cliente 60 veces más restrictivo de lo necesario.
6. No sumar los endpoints: Si tu app llama a /users y a /orders de la misma API, ambos endpoints comparten la cuota global. No importa que cada endpoint parezca "lento"; la suma de todos los calls cuenta contra el mismo límite.
---
Ejemplo de cálculo
Preguntas frecuentes
¿Qué es exactamente un rate limit en una API y por qué existe?
¿Cómo se calcula la conversión entre RPS, RPM y RPD?
¿Qué significa el error HTTP 429 y cuál es la forma correcta de manejarlo en código?
¿Qué diferencia hay entre ventana fija y ventana deslizante en rate limiting?
limit_req.¿Cómo configuro rate limiting en NGINX sabiendo el RPM que me permite la API externa?
limit_req_zone $binary_remote_addr zone=miapi:10m rate=8r/s;. Desde NGINX 1.17+ podés usar directamente rate=500r/m para mayor precisión. En el location block agregás limit_req zone=miapi burst=20 nodelay;. El parámetro burst define cuántos requests adicionales se encolan sin error: con burst=20 y 8 r/s, podés recibir hasta 28 requests en el primer segundo sin devolver 503. Sin nodelay, los requests del burst se espacian al ritmo del rate; con nodelay se procesan inmediatamente pero se consumen del bucket. Para un backend propio que consume una API externa, es mejor configurar el rate un 10% por debajo del límite real para absorber latencias de red.¿Cuáles son los rate limits reales de las principales APIs usadas en Argentina?
¿Qué es el concepto de 'burst' en rate limiting y cómo lo calculo para mi caso?
burst de la directiva limit_req.¿Cómo manejar rate limits cuando varios microservicios comparten la misma API key?
¿Cómo convierto RPH (Requests Per Hour) que usan algunas APIs como GitHub?
¿Qué diferencia hay entre rate limit y throttling, y por qué importa en la práctica?
¿Cómo diseño un sistema de retry robusto usando la información del rate limit?
¿Los rate limits aplican por IP, por API key o por cuenta? ¿Cómo saber cuál es tu caso?
X-RateLimit-Scope: user o similar, el scope está documentado. Si no, probás desde dos IPs distintas con la misma key: si ambas tienen el mismo contador, es por key; si tienen contadores independientes, es por IP. Esta distinción es crítica para decidir si necesitás rotar keys o usar múltiples cuentas para escalar.Fuentes y referencias
Metodología y confianza
Calculadora de tecnología revisada por el equipo editorial de Hacé Cuentas, contrastada con NGINX Documentation – limit_req_zone (nginx.org), según nuestra política editorial y metodología.
Última revisión: 22 de junio de 2026. Los parámetros se verifican periódicamente con las fuentes citadas.
Los cálculos corren 100% en tu navegador. No guardamos ni transmitimos tus datos.
Resultados orientativos. Para decisiones críticas, consultá con un profesional.
Rodríguez, M. (2026). Convertir Rate Limit API: RPM, RPS y RPD. Hacé Cuentas. https://hacecuentas.com/calculadora-rate-limit-api-rpm-rps
Contenido bajo licencia CC-BY 4.0 — reutilizable citando la fuente con enlace a Hacé Cuentas.