Skip to content

console: free usage limit never resets across days and quota is undocumented #60297

Closed as duplicate

Description

@Superchristel

Summary

Free models via the Console/Zen gateway return AI.Error.QuotaExceeded: Free usage limit reached and never recover, even across multiple days. The limit itself (size, window, reset rule) is not documented anywhere, and the client exposes no counter or reset time.

Environment

  • opencode version: 2.2.1
  • OS: Darwin 23.6.0 (macOS, arm64, Apple M1)
  • Terminal: $TERM=xterm-256color, $TERM_PROGRAM unset, $COLORTERM unset
  • Shell: /bin/zsh
  • Install/channel: release (opencode --version reports 2.2.1, bundled binary)
  • Active plugins: none (~/.config/opencode/opencode.json has no plugins key)

Reproduction

  1. Connect the OpenCode provider and select a free model (opencode/deepseek-v4.1-flash-free).
  2. Use it with an agent that performs several tool calls per turn (file reads, greps, builds).
  3. Keep working until the gateway refuses a request.
  4. Retry later the same day, and again on the following days, including with a fresh session and a different free model.

Expected Behavior

  • The free quota is documented: requests/tokens per window, and when it resets.
  • The quota resets as documented, or the error states the reset time.
  • If the quota is exhausted account-wide, the error explains the scope and the remaining wait.

Actual Behavior

Every free-model request after exhaustion fails with:

AI.Error.QuotaExceeded: Free usage limit reached. Free models work in OpenCode
(https://opencode.ai); subscribe to OpenCode Go to keep going: https://opencode.ai/go

Observed in this log since 2026-10-22: 43 occurrences across 7 sessions, still failing on 2026-10-29 — including sessions that were created fresh on a later day. No reset was observed within the log window. There is no user-visible counter, no usage page entry that matches, and no reset timestamp in the error.

Volume note: 28 of the 43 failures are in a single long-running session, which is consistent with per-request accounting, since each agent step (tool call, tool result, follow-up) is a separate request. So the quota drains much faster than a chat user would expect from the word "messages".

Additional Context

Excerpt (paths and session IDs are not sensitive; no credentials included):

timestamp=2026-10-27T20:24:45.299Z level=ERROR run=6f67222d message="Failed to drain Session"
  cause="AI.Error: Free usage limit reached. ..." role=server sessionID=ses_e9d7...3sk
  [cause]: AI.Error.QuotaExceeded: Free usage limit reached. ...

Supporting observations:

  • V2 docs (/v2/docs/console/models, /v2/docs/models) describe free models only as "free for a limited time", require them to be used from OpenCode, and mention OPENCODE_DISABLE_FREE_MODELS=1. There is no quota size or reset policy.
  • The V1 Zen docs URL now serves the same Console page, so the old documented request windows are gone as a reference too.
  • Phrasing differs by surface: the UI says "you've used today's free messages" (implies a daily reset), while the log/error says "Free usage limit reached" with no reset information. The UI wording and the observed behavior contradict each other.
  • Workarounds tried: new session, restarting the client, switching to another free model — none help. The block appears to be account-wide.
  • Related reports describing the same symptom (limit outlives the day, undocumented reset): [URGENT] Zen paid balance still hits FreeUsageLimitError / daily free usage limit. #33318, [BUG] Zen balance does not remove free usage cap; paid users still hit 200-request/free usage limit #33495.

Activity

  1. opencodejr commented on Oct 29, 2026

    @opencodejr

    Thanks for the detailed report, @Superchristel, and sorry about the trouble. Being blocked for a week with no reset time shown is frustrating.

    I think this is a duplicate of #59387, the main thread for free-tier problems. The free usage limit and its reset are set by the hosted OpenCode Console (Zen) service, not by the app, so maintainers are collecting these reports there. Since you're already on the latest v2 (2.2.1), please add your details to #59387: the dates, the models you tried and the log excerpt.

    Possible duplicates and closely related issues, ordered by likelihood:

    The bot will close this issue as a duplicate in 1 day unless you reply explaining how your problem is different.

  2. dalesca commented on Oct 30, 2026

    @dalesca

    I'm experiencing an issue with the free message quota.

    OpenCode reports that I have exhausted my daily free messages, but the usage dashboard appears to show zero (or no meaningful usage), and I am unable to send any requests.

    Versions affected:

    OpenCode Desktop: 2.2.2
    OpenCode CLI: 2.2.0

    Error message (Desktop):

    Plain Text
    You've used today's free messages.
    They reset at 30 Oct 2026, 21:35.

    Error message (CLI):

    Plain Text
    You've used today's free messages.
    They reset at 12:35 AM, 10/31/2026.

    Additional observations:

    The reset time shown by Desktop and CLI is inconsistent.
    The issue persists across both Desktop and CLI.
    I appear to have valid stored credentials.
    Switching integrations does not resolve the issue.
    The account appears blocked even though usage does not seem to reflect exhausted quota.

    Authentication status:

    Plain Text
    $ opencode auth list

    OpenCode Go OpenCode Go stored
    OpenCode Console OpenCode Console stored
    OpenRouter API key stored

    Steps to reproduce:

    Open OpenCode Desktop 2.2.2 or CLI 2.2.0.
    Attempt to send a message using the free tier.
    Receive: "You've used today's free messages."
    Wait until the displayed reset time.
    Issue remains and no messages can be sent.

    Expected behavior:

    Free messages should become available after the reset time.
    Usage counters should accurately reflect consumption.
    Desktop and CLI should report the same reset time.

    Actual behavior:

    Account remains blocked.
    "You've used today's free messages" is shown even when usage appears to be zero.
    Different reset times are displayed between Desktop and CLI.

    Environment:

    Windows + WSL
    OpenCode CLI 2.2.0
    OpenCode Desktop 2.2.2

    Thank you for looking into this issue.

  3. Mirk97 commented on Oct 30, 2026

    @Mirk97

    Hello,

    I'm experiencing exactly the same issue with OpenCode Desktop.

    Environment:

    • OpenCode Desktop: 2.2.3
    • OS: Windows
    • Provider: OpenCode Console
    • Plan: Free
    • Model: DeepSeek V4.1 Flash Free

    Problem:
    I can no longer use any free model. After approximately 2-3 prompts, I receive:

    "You've used today's free messages. They reset at..."

    The issue affects every free model, not just DeepSeek. Creating a new session or switching models does not help.

    I have been using OpenCode for approximately three months without encountering this issue. It started recently, whereas previously I could use the free models without reaching this limit so quickly.

    Could you please clarify whether this is an intentional change to the free-tier limits or a quota/account-related bug?

    Thank you.

  4. opencodejr commented on Oct 30, 2026

    @opencodejr

    Hi @Superchristel, I'm closing this as a duplicate of #59387, the main thread for free-tier problems. We waited a day in case this turned out to be a different problem, and nothing came up that sets it apart.

    You're already on the latest v2 (2.2.1), so please comment on #59387 with your details: the dates, the free models you tried and the AI.Error.QuotaExceeded log excerpt. Keep account information out of it. The free usage limit and its reset are handled by the hosted Console (Zen) service, so that thread is where maintainers with account access are looking.

    The other parts of your report are tracked separately:

    Thanks for the thorough write-up.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions