Blog

Codex "You've hit your usage limit": What It Means and How to Keep Coding

Short answer

Codex shows You've hit your usage limit when the ChatGPT plan you signed in with has used up the Codex allowance for the current period. On Plus the allowance is counted per five-hour window, and weekly limits can apply on top. The message tells you when you can try again.

You have four ways to keep going:

  • Wait until the time in the message.
  • Buy credits. OpenAI lets Plus and Pro users who hit the limit buy credits and continue without upgrading.
  • Sign in with an API key. Usage is then billed at standard API rates instead of drawing on your plan.
  • Point Codex at a pay-per-use gateway such as TeamoRouter. You change one provider block in ~/.codex/config.toml.

If /status or the usage dashboard says you still have allowance left and Codex blocks you anyway, you're not alone. That case is covered below.

What the message looks like

The full text, from openai/codex#38354:

text
You've hit your usage limit. Upgrade your plan or add credits to continue, or try again at 20 Aug 2026, 16:29.

The date and time at the end are when your allowance resets. The reports in the issues below come from both the Codex CLI and the desktop app.

How Codex usage limits work

OpenAI explains the limits on its Codex pricing page:

  • Five-hour windows, plus weekly limits. Plus and Standard Business allowances are counted per five-hour period, and weekly limits may also apply. Pro plans currently have no five-hour limit.
  • Allowances are estimates, not fixed message counts. For Plus, OpenAI's estimates for local messages per five hours include 15–160 for GPT-6.1 Sol, 5–45 for GPT-6 Astra and 350–3,000 for GPT-6 Luna. How much a message uses depends on the model, the context size, reasoning, tool calls and caching.
  • Local and cloud usage share one allowance. Cloud tasks can use more of it than local messages.
  • Speed and images use it faster. Fast mode counts 2.5× against included usage. Image generation uses the allowance about 3–5× faster than a similar turn without images.
  • Work in progress can finish. If you hit the limit during an active turn, Codex lets that turn continue, subject to fair use limits.

So a few long sessions on a large repository, with many MCP servers and a big AGENTS.md, can use up a five-hour window much sooner than the estimates suggest.

When /status says you have usage left

Two open GitHub issues describe Codex blocking requests while the usage display says otherwise:

  • #36344: the usage dashboard and /status both showed 43% of the weekly limit remaining, but every new turn was rejected until a date six days later.
  • #38354: a Plus account showed 100% of the weekly limit remaining and 0 credits, and still got the usage-limit message. Another commenter, after letting Plus lapse and renewing it, saw 59% remaining and was blocked anyway. Signing out and back in didn't clear it for them.

If this is your situation:

  1. Run /status in the CLI and compare it with the usage dashboard.
  2. Sign out and sign in again (codex logout, then codex login). A commenter on #38354 mentions a related report where this worked, but it didn't help the people in #38354.
  3. If you're still blocked, report it to OpenAI with your thread or feedback ID, as people in both issues did. Only OpenAI can correct an account's usage state.
  4. To keep working in the meantime, sign in with an API key or use a pay-per-use provider (options 4 and 5 below). Neither depends on your plan's allowance.

Ways to keep coding

1. Wait for the reset

The time at the end of the message is when you can continue. Check /status or the usage dashboard to see the current numbers.

2. Buy credits (Plus and Pro)

OpenAI says Plus and Pro users who reach their limit can buy additional credits and keep working without upgrading. Business, Edu and Enterprise plans with flexible pricing can buy workspace credits. Credits are charged per token at the rates on the pricing page, and Fast mode uses 2× credits.

3. Make your allowance last longer

OpenAI's own suggestions on the pricing page:

  • Keep prompts precise and drop context the task doesn't need.
  • Attach only the relevant files.
  • Keep AGENTS.md small; in a large project, nest smaller files in subdirectories.
  • Disable MCP servers you aren't using, since each one adds context to every message.
  • Use a smaller model when it can do the job.

4. Sign in with an API key

Any plan can run extra local chats with an API key, billed at standard API rates through your OpenAI Platform account (Codex authentication docs):

bash
printenv OPENAI_API_KEY | codex login --with-api-key

OpenAI notes that API key sign-in supports local Codex workflows, while some features that rely on ChatGPT workspace access or cloud services are limited or unavailable. It also needs an OpenAI Platform account with credits. If adding a card there fails, see OpenAI API "Your card has been declined". If the credits run out, the API returns credit_balance_exhausted.

5. Use a pay-per-use provider

Codex can send requests to an OpenAI-compatible provider that you define in ~/.codex/config.toml. TeamoRouter is one: you pay for the tokens you use from a prepaid balance instead of drawing on a plan allowance, so there's no reset time to wait for.

Set up Codex with TeamoRouter

TeamoRouter is an API gateway with one key for GPT, Claude, Gemini and DeepSeek. Codex uses its OpenAI Responses endpoint.

  1. Create an API key in the TeamoRouter console. It starts with sk-teamo-.
  2. Top up from $5. The top-up dialog takes cards. You can also click Pay with crypto and pay with USDT, USDC or ETH from Binance, OKX or any exchange app — the checkout shows which networks your amount supports (BEP20 works from $5). You don't need a wallet extension, and the invoice stays valid for 60 minutes. Step by step: Pay with USDT.
  3. Add the provider to ~/.codex/config.toml:
toml
model_provider = "teamorouter"
model = "gpt-6-sol"
model_reasoning_effort = "high"

[model_providers.teamorouter]
name = "TeamoRouter"
base_url = "https://api.teamorouter.com/v1"
env_key = "OPENAI_API_KEY"
wire_api = "responses"
  1. Set the key (macOS with zsh; use ~/.bashrc on Linux):
bash
echo 'export OPENAI_API_KEY="your TeamoRouter API key"' >> ~/.zshrc
source ~/.zshrc
codex

The Windows commands are in Install and connect Codex. GET /v1/models lists the model IDs you can put in model.

To go back to your ChatGPT plan when it resets, remove the model_provider = "teamorouter" line. Codex then uses its built-in OpenAI provider and your ChatGPT sign-in again.

Fast mode on TeamoRouter is billed at 2× the list price. The same key works for Claude Code; see Install and connect Claude Code.

FAQ

How long do I have to wait? Until the time at the end of the message. Plus allowances are counted per five-hour window, and weekly limits may also apply, so the wait can be longer than five hours.

Does upgrading to Pro remove the limit? Pro plans currently have no five-hour limit, according to OpenAI's pricing page. Usage limits still apply, so check the plan details before upgrading.

Will my Codex setup work with a custom provider? For local work, yes. Only the provider block and the key change; your projects, AGENTS.md files and MCP servers stay as they are. For features that depend on your ChatGPT workspace or OpenAI's cloud, keep using your ChatGPT sign-in.

Do I need an OpenAI account to use Codex through TeamoRouter? No. Codex reads the TeamoRouter key from OPENAI_API_KEY and sends requests to TeamoRouter.

Next steps

Ready to connect?Log in · top up · create an API key — three steps to start.