Error Code: 429 Rate Limit Differs from Documentation

1. I am a free user, and when using the API, I encountered a 429 error. It seems that the TPM limit displayed is 100,000, but if it’s based on TPM, it should recover after one minute. However, the error message indicates that recovery will take 15 hours. Additionally, I am using GPT-4-turbo (gpt-4o-mini), and the official documentation states that the free user limits should be: 60,000 TPM, 3 RPM, and 200 RPD, which is inconsistent with the error message.

2. What are the exact standards for rate limits? If I need to pay to move to the next tier, will the limits align with what is stated in the documentation for GPT-4-turbo (500 RPM; 10,000 TPM; 200,000 RPD)?

3. The documentation states that the usage limit for free users is $100 / month. What does this mean? Does the $100 overlap with the “free” designation?

Here is my error message:
Error code: 429 - {‘error’: {‘message’: ‘Rate limit reached for gpt-4o-mini in organization org-8WoyKWWQFAa6INT0EeiJFBtr on tokens per min (TPM): Limit 100000, Used 99918, Requested 2094. Please try again in 14h29m11.04s. Visit https://platform.openai.com/account/rate-limits to learn more. You can increase your rate limit by adding a payment method to your account at https://platform.openai.com/account/billing.’, ‘type’: ‘tokens’, ‘param’: None, ‘code’: ‘rate_limit_exceeded’}}
Here is my code:
response = client.chat.completions.create(
model=“gpt-4o-mini”,
messages=[{“role”: “system”, “content”: system_prompt},
{“role”: “user”, “content”: description}],
)

thanks

There’s no more getting free trial credits, unless you kind of know an insider, I guess. The user interface in the platform site still has this from back when new accounts got $5 upon sign-up.

So “free user” doesn’t make any sense. You have to prepay to use the OpenAI API. The error you should get with no credits in your account is "429 - … check your plan and billing details.

Different tiers have different maximum monthly spends. This reduces OpenAI risk of fraud. Being based on a month is also from originally (and for anyone that would still have monthly post-paid billing. (almost nobody except perhaps enterprises with credit lines).

The error is indeed very bizarre. I suspect it is counter-factual, because no accounts should operate that way after they are funded.

You can think of rate limits as a pond you can pull water (requests) out of at a pretty rapid initial rate. Once the pond is empty, no more API. It refills constantly at the rate limit. That’s sort of what the algorithm does.

The API request headers returned have rate limit statistics. How much you have left after the most recent request. There’s another header returned for “reset” even different - it shows how long it would take for the API to act (refill) like you had made no requests at all.

So I would make requests that you meter yourself per minute lower than the stated limit. Doing that, you should rarely get an error.

TL;DR: pay first for services