glossary

Límites de tasa de la API de Reddit: 100 consultas por minuto, promediadas en diez

Taras Shynkarenko
Taras Shynkarenko
•Updated: •9 lectura mínima
Límites de tasa de la API de Reddit: 100 consultas por minuto, promediadas en diezLímites de tasa de la API de Reddit: 100 consultas por minuto, promediadas en diez

TL;DR

9 lectura mínima

La Data API de Reddit permite 100 consultas por minuto por client id de OAuth, promediadas sobre una ventana móvil de diez minutos, lo que da 1.000 consultas por ventana y 6.000 por hora. Cada respuesta lleva X-Ratelimit-Used, X-Ratelimit-Remaining y X-Ratelimit-Reset, así que puedes leer el presupuesto restante antes de gastarlo. Si superas el límite, Reddit responde 429; el uso comercial exige un contrato aparte por pocas consultas que envíes.

¿Qué es el límite de tasa de la API de Reddit?

La Data API de Reddit aplica límites de tasa de la API de Reddit de 100 consultas por minuto por client id de OAuth, promediadas sobre una ventana móvil de diez minutos, según la Reddit Data API Wiki. El promedio es lo que da forma a tu diseño: Reddit mide la media a lo largo de diez minutos en lugar de cada minuto por separado, así que tu presupuesto real es de 1.000 consultas por ventana y 6.000 por hora, y puedes pasar de 100 en un minuto suelto mientras la media de la ventana se sostenga. Dimensiona tu bucle de sondeo contra la ventana, no contra el titular de 100 por minuto.

LímiteValorDónde lo indica Reddit
Consultas autenticadas100 consultas por minuto (QPM) por client id de OAuthReddit Data API Wiki
Ventana de promediadoActualmente 10 minutos, para permitir ráfagasReddit Data API Wiki
Presupuesto efectivo por ventana1.000 consultas por cada 10 minutos móvilesDerivado de las dos filas anteriores
Tráfico sin autenticarBloqueado por completo; el límite de tasa por defecto no se aplicaReddit Data API Wiki
Mensajes de chat2.000 al día por destinatario, 3.000 al día en totalReddit Data API Wiki
Salas de chat, cuentas de botHasta 300 entradas al díaReddit Data API Wiki
Cifra publicada antigua60 solicitudes por minuto para clientes OAuth2wiki reddit-archive en GitHub

Última verificación: 8 de septiembre de 2026

¿Qué cifra está vigente, 60 o 100?

La cifra vigente es 100 QPM, y el 60 sale de documentación que el propio Reddit marca como heredada. La wiki archivada de la API en GitHub de Reddit sigue diciendo "Clients connecting via OAuth2 may make up to 60 requests per minute" (los clientes que se conectan mediante OAuth2 pueden hacer hasta 60 solicitudes por minuto) y no lleva sello de versión, por eso reaparece una y otra vez en respuestas de Stack Overflow. La Data API Wiki alojada en el soporte, que abre con el aviso de Reddit de que la documentación heredada de la API "may be out of date" (puede estar desactualizada), es la página que indica 100 QPM y la media de diez minutos. Construye contra 100 QPM y fecha como anterior a 2023 cualquier fuente que cite 60.

Las reglas de acceso se movieron en el mismo periodo. Los Data API Terms de Reddit llevan fecha de entrada en vigor el 19 de junio de 2023 y última revisión el 20 de julio de 2026, así que todo lo anterior a mediados de 2023 describe otro producto. Lee cuánto cuesta el acceso a la Data API cuando termina la elegibilidad gratuita junto con estos límites.

¿Cómo se leen las cabeceras de respuesta X-Ratelimit?

Reddit informa de tu presupuesto restante en cada respuesta de la Data API mediante tres cabeceras. La Data API Wiki las define exactamente así.

CabeceraQué dice Reddit que informa
X-Ratelimit-UsedApproximate number of requests used in this period (número aproximado de solicitudes usadas en este periodo)
X-Ratelimit-RemainingApproximate number of requests left to use (número aproximado de solicitudes que quedan por usar)
X-Ratelimit-ResetApproximate number of seconds to end of period (número aproximado de segundos hasta el fin del periodo)

Dos detalles muerden. Reddit llama aproximados a los tres valores, así que un cliente que gasta hasta X-Ratelimit-Remaining: 0 acumula errores en vez de detenerse limpiamente. HTTP/2 además pasa los nombres de cabecera a minúsculas en el cable, así que tu cliente ve x-ratelimit-remaining mientras la documentación escribe mayúsculas iniciales; compara sin distinguir mayúsculas. Registra las tres y lanza una alerta cuando el recuento restante baje de un suelo que tú elijas. PRAW respeta estas cabeceras automáticamente y espacia sus solicitudes en consecuencia.

¿Qué pasa cuando Reddit devuelve 429?

Reddit responde HTTP 429 Too Many Requests en cuanto superas la media de la ventana, y la respuesta puede llevar una cabecera retry-after que indica la espera. La implementación de referencia es prawcore, la capa HTTP bajo PRAW: su sessions.py mapea too_many_requests a una excepción TooManyRequests que lee retry-after de la respuesta. Ojo: 429 no aparece en el conjunto RETRY_STATUSES de prawcore, que contiene 500, 502, 503, 504, 408, 520 y 522, así que PRAW lanza el error en 429 en lugar de reintentar en silencio.

Copia esa decisión. Un error de servidor merece un reintento porque la solicitud era válida, pero un 429 Too Many Requests significa que tu planificador está mal, y enterrarlo en un bucle de reintentos oculta el fallo mientras quema cuota. Saca el 429 a la luz y corrige la planificación.

Cables de red en un rack de servidores, que representan el presupuesto de consultas al que debe ajustarse un sistema de monitorización.

¿Cuántas keywords puede sondear un client id de OAuth por hora?

Divide el presupuesto horario entre lo que cuesta cada keyword y un monitor limitado a subreddits acaba en la veintena o la cuarentena. La aritmética cabe en una línea:

Queries per hour = keywords x subreddits x (60 / poll interval in minutes) x pages per poll

Sigue una keyword en 12 subreddits, sondea cada 5 minutos y trae una página por sondeo:

1 x 12 x (60 / 5) x 1 = 144 queries per hour per keyword

Tu techo es 100 QPM x 60 minutos = 6.000 consultas por hora, así que 6.000 / 144 = 41,6, es decir 41 keywords sin ningún margen. Trae dos páginas por sondeo y el coste se duplica a 288 por keyword y hora, lo que te deja en 20 keywords. Reserva un 20 por ciento para refrescos de token y reintentos y el techo de una página pasa a 4.800 / 144 = 33 keywords.

Las ráfagas están limitadas aparte. Cada diez minutos móviles admiten 1.000 consultas, así que un backfill que dispara 900 solicitudes en el primer minuto deja 100 para los nueve siguientes. Ejecuta la monitorización continua y los backfills con client ids de OAuth separados. Este cálculo decide si construyes sobre la API en crudo, y es el mismo que hay detrás de RedReplier frente a operar la API de Reddit por tu cuenta.

RedReplier
RedReplier

Comenzar

Reddit, X, Bluesky y HN

Alertas de intención en tiempo real

Respuestas IA ilimitadas

Ordenado por intención de compra

Un cronómetro junto a un teclado, que evoca los intervalos de espera cronometrados de un calendario de reintentos con backoff.

Techo de keywords por client id de OAuth
Una página por sondeo41 keywords
Dos páginas por sondeo20 keywords
Una página, 20 % de margen reservado33 keywords
Tres formas de gastar el mismo presupuesto de 6.000 consultas por hora, siguiendo una keyword en 12 subreddits cada 5 minutos.

¿Cómo es el backoff exponencial contra una media de diez minutos?

Backoff aquí significa doblar la espera tras cada fallo y añadir jitter aleatorio para que una flota de workers no reintente al unísono. Un calendario que encaja en la ventana de diez minutos: esperar 1, 2, 4, 8 y 16 segundos a lo largo de cinco intentos, sumar hasta 1 segundo de jitter a cada uno, topar cualquier espera en 60 segundos y abandonar la solicitud tras el quinto. Cuando Reddit envía retry-after, usa ese valor en lugar del que calculaste.

La estrategia del propio prawcore es más pequeña a propósito: FiniteRetryStrategy fija DEFAULT_RETRIES = 2 y duerme 2 * random() segundos antes del primer reintento y 2 + 2 * random() antes del último. Copia el jitter y el corte duro, porque los reintentos sin límite contra una ventana promediada ahondan el agujero: cada reintento cuenta en la misma media de diez minutos que produjo el 429. Si tu sistema necesita backoff exponencial para no salirse del presupuesto, el defecto está en la planificación, y elegir entre sondeo y webhooks es la conversación más útil.

¿Qué separa el nivel gratuito de la Data API de la licencia comercial?

La línea divisoria es qué haces con los datos, no cuántas consultas envías. El artículo del centro de ayuda de Reddit sobre acceder a los datos de Reddit define los fines comerciales como "any use of our services by a business or on behalf of a business or as part of a monetized product or service" (cualquier uso de nuestros servicios por parte de una empresa o en su nombre o como parte de un producto o servicio monetizado), y cita entre los ejemplos los servicios por suscripción, las apps de pago y el acceso a datos con tarifa. La sección 3.1 de los Data API Terms lo pone en lenguaje contractual: los fines comerciales, el uso por encima de los límites de tasa o cualquier cosa no permitida expresamente "will need to enter into a separate agreement with Reddit." (requerirán suscribir un acuerdo aparte con Reddit).

Así que un producto monetizado que envía 10 consultas por minuto necesita contrato aunque nunca se acerque al techo. El trabajo académico pasa ya en exclusiva por el programa Reddit for Researchers, y la Responsible Builder Policy de Reddit establece que investigar sobre datos recogidos fuera de él infringe la política, con una aplicación que llega a tokens revocados y cuentas suspendidas. Decide de qué lado de la línea estás antes de escribir el cliente.

Todas las cifras anteriores se aplican porque el client id de OAuth es tuyo. RedReplier vigila Reddit junto a X, Bluesky, Facebook y Hacker News en un solo sitio, así que la cobertura pasa a ser un ajuste del plan en vez de un cálculo de consultas por hora. También expone una API y un servidor MCP que funciona con Claude Code, Cursor y cualquier cliente MCP estándar.

Preguntas frecuentes

¿El límite de 100 QPM se aplica por usuario o por aplicación?

Por client id de OAuth, según la Data API Wiki de Reddit. Cada usuario que tu aplicación autentica bebe del mismo pool de 100 QPM ligado a ese client id, así que una herramienta multiinquilino no gana margen sumando usuarios. Registrar client ids separados para aplicaciones realmente separadas es la vía admitida para repartir presupuestos.

¿Qué pasa con las solicitudes que se saltan OAuth por completo?

Reddit las bloquea. La Data API Wiki indica que el tráfico que no usa OAuth ni credenciales de acceso será bloqueado y que el límite de tasa por defecto no se aplica, y su sección Rules añade que Reddit puede "freely throttle or block unidentified Data API users." (limitar o bloquear libremente a los usuarios no identificados de la Data API). No existe ninguna asignación sin autenticar con la que planificar.

¿Las cabeceras X-Ratelimit muestran el minuto o la ventana de diez minutos?

Informan del periodo actual, que es la ventana de promediado de diez minutos. X-Ratelimit-Reset descuenta los segundos hasta el fin de ese periodo, así que un valor cercano a 600 significa que la ventana acaba de abrirse y uno cercano a 0 que tu asignación está a punto de renovarse. Reddit califica los tres de aproximados, así que deja margen en vez de gastar hasta cero.

¿Reddit envía siempre una cabecera Retry-After en un 429?

No. La excepción TooManyRequests de prawcore lee la cabecera con response.headers.get("retry-after") y solo imprime una instrucción de espera cuando está presente, así que tu código tiene que manejar su ausencia. Usa retry-after cuando llegue y recurre a tu propio calendario de backoff cuando no.

¿Hace falta una cadena User-Agent?

Sí, y el formato está prescrito. La Data API Wiki de Reddit exige <platform>:<app ID>:<version string> (by /u/<reddit username>) y advierte de que los valores por defecto como "Python/urllib" o "Java" están "drastically limited." (drásticamente limitados). También avisa: "NEVER lie about your User-Agent." (NUNCA mientas sobre tu User-Agent).

¿Puedo subir el límite sin un contrato comercial?

Los bots de moderación tienen una vía documentada: la Data API Wiki de Reddit invita a los operadores de mod bots que necesitan superar los límites a escribir a través de su formulario de contacto. El centro de ayuda de Reddit añade que a determinados desarrolladores que necesiten un acceso más amplio se les pueden cobrar tarifas por levantar los límites por defecto. Para cualquier cosa monetizada, la ruta es el acuerdo aparte de la sección 3.1 de los Data API Terms.

¿El límite de 100 QPM también cubre los mensajes de chat de Reddit?

El chat funciona bajo sus propios topes, separados del límite de 100 QPM para consultas: 2.000 mensajes por día por destinatario y 3.000 por día en total, según la Data API Wiki. Las cuentas bot pueden sumar hasta 300 ingresos a salas de chat por día. Ninguno de estos valores consume la misma ventana móvil de diez minutos que tus consultas normales.

¿Cómo trata Reddit el 429 de forma distinta a un error de servidor?

El conjunto RETRY_STATUSES de prawcore incluye 500, 502, 503, 504, 408, 520 y 522, los códigos donde la solicitud era válida y el servidor falló, así que PRAW los reintenta automáticamente. El 429 queda fuera de ese conjunto a propósito. Prawcore lanza en su lugar una excepción TooManyRequests, porque un error de límite de tasa significa que tu calendario está mal, no el servidor.

¿Qué pasa con la investigación académica que se salta el programa Reddit for Researchers?

La Responsible Builder Policy de Reddit trata como infracción los datos recogidos fuera del programa Reddit for Researchers. La aplicación de esta política llega hasta tokens revocados y cuentas suspendidas. Se espera que los proyectos académicos pasen por el programa en lugar de extraer datos con un client id de OAuth genérico.

RedReplier
RedReplier

Comenzar

Reddit, X, Bluesky y HN

Alertas de intención en tiempo real

Respuestas IA ilimitadas

Ordenado por intención de compra

¿Por qué un backfill necesita un client id de OAuth distinto al del monitoreo constante?

Cada ventana móvil de diez minutos contiene 1.000 consultas en total, y un backfill que dispara 900 solicitudes en el primer minuto deja solo 100 para los nueve restantes. Si ese backfill corre con el mismo client id que tu monitoreo constante, el monitoreo se queda sin cupo el resto de la ventana. Client ids separados le dan a cada tarea su propio presupuesto de 1.000 consultas.

Vernos más en Google

Un clic marca RedReplier como fuente preferida y nuestros artículos aparecen más arriba en tus Noticias destacadas, el modo IA y los resúmenes con IA.

Antes de irte...

RedReplier

RedReplier

Detecta a cada comprador que busca lo que vendes

RedReplier vigila Reddit, X, Bluesky y Hacker News en tiempo real, clasifica cada hilo por intención de compra y redacta tu respuesta, para que llegues primero.

Reddit, X, Bluesky y HN

Alertas de intención en tiempo real

Respuestas IA ilimitadas

Ordenado por intención de compra

Artículos relacionados