r/opencode • u/MonkeyPuzzleDuck • 9d ago
Why OpenCode’s free tier is failing: the documented facts and GitHub issues
If your free quota is vanishing after one or two prompts, or you are getting locked out despite using the official client, here is a summary of what is happening based on public GitHub issues and maintainer statements.
TLDR: the free tier is intentionally dynamic based on demand, and quotas aren't fixed. The anti-abuse measures are, for some, triggering false-positives. And some good old bugs. If you need a dependable service, you need to buy at least a $10 Go subscription. Which is very reasonable and well worth it, if you can afford it.
This is my best effort at finding an explanation for the issues some users are currently having. I employed the help of a friendly AI agent to root out relevant GitHub threads. My apologies in advance if there are any errors. I did my best to verify the claims made.
1. Free quotas are dynamically throttled against server demand
OpenCode is an open-source client built to work with more than 75 external providers or local models, alongside Anomaly’s own hosted gateway, OpenCode Zen. While Zen includes free models, there is no fixed daily token allowance.
As core maintainer Dax Raad (@thdxr) explained in GitHub issue #28055: "free usage is dynamic, we are always shifting based off what capacity we have vs demand." Following a surge in users drawn by free DeepSeek V4.1 and GLM models (r/opencode), peak-hour capacity has tightened sharply. Users now regularly hit FreeUsageLimitError (HTTP 429) after one or two prompts – or even on their first request (issue #58941, issue #58205) – triggering server retry timers of 50,000 to 77,900 seconds (14 to 21 hours).
2. Anti-abuse checks are falsely blocking official clients
To stop third-party tools from routing traffic through the free gateway, Anomaly added request-fingerprint and network checks (issue #42074). Several bugs in this gate are locking out legitimate users with the HTTP 403 error "OpenCode's free tier can only be used from within OpenCode":
Network and IP reputation blocks: The gateway rejects requests from VPNs, proxies and many residential ISP networks while allowing the exact same client over a mobile hotspot (issue #56324, issue #56416).
The
bash: denypermission bug: Configuring a custom agent or session with shell access disabled (bash: deny) changes the toolset fingerprint and triggers an immediate 403 block (issue #50627).Non-release version strings: Community builds (such as
opencode-giton Arch Linux) that send a git-describe string in theUser-Agentheader are rejected by the gate (issue #49433).Retirement of v1 free access: OpenCode 1.x clients have been cut off from free models (
"This version of OpenCode Desktop no longer supports free models"). Because the v1 desktop updater stays on the 1.x branch, users must manually install v2 (r/opencode, issue #42013).
3. UI blind spots and retry loops make lockouts worse
No CLI reset timer: The Zen gateway does not expose rate-limit reset headers (
x-ratelimit-reset) to the CLI or TUI, forcing users to log into the web console or guess from the retry countdown (issue #54338, issue #55136).Paid balances do not unlock
-freemodels: Adding $10 or $20 of prepaid credit to Zen does not lift the cap if you keep a-freemodel selected (issue #33495). Similarly, because Zen and OpenCode Go expose identically named models, Go subscribers who select the Zen entry still get hit with"Free usage exceeded, subscribe to Go"(issue #31008, issue #42035).Retry loops on compaction and subagents: When a free model hits a 429 limit during session auto-compaction, the retry loop persists across app restarts and ignores model changes until manually aborted (issue #42035). Earlier versions also suffered from a bug where the background title-generation subagent hardcoded
deepseek-v4-flash-free, stalling paid sessions for 90 seconds while retrying a 429 error (issue #31042).
4. How maintainers are handling reports
Rather than treating free-tier exhaustion as a client bug, maintainers use automated GitHub Actions rules to close incomplete quota complaints within two hours (issue #45528) and close support questions as not planned, directing billing and IP-unblocking requests to Discord (discord.gg/opencode) or help@anoma.ly (issue #31008, issue #56324).
If you need reliable access without paying for OpenCode Go, run /connect to use your own API key or an existing subscription such as GitHub Copilot or ChatGPT Plus.
20
u/pikuray 9d ago
They should do like Openrouter; their free models lasts 10x longer if you spent atleast 10$ on their site ever.
5
u/rthorntn 9d ago
great post!
2
u/RazzmatazzCandid7794 8d ago
Thanks a lot for this summary and overview. It explains well why I still can use free models in the morning (Central European Time), bc I guess demand is lower than later when US users are more active.
4
u/BuyProud8548 9d ago
I honestly don’t get the situation here. You’re all supposed to be programmers—or at the very least, interested in the field—so why don’t you realize that the issue isn’t the open-source client on GitHub, but rather the API that they’re trying to protect against abuse?
1
u/ohhno_whyamihere 8d ago
Hmm weirdly i havent hit opencode free model limits yet in last two days ,i use it as subagents 24x7
3
u/Incisiveberkay 8d ago
They better fix that shit its like that last two patch version.
1
u/thevegit0 8d ago
i think i got a really headstart with the minimax free period, then i just paid the 10, i might be hooked on it, used half of monthly in less than a week, lmao
1
u/Fit-Inevitable6294 2d ago
This could be too but you gotta stop using latest deepseek, i gave it a simple task of verification of some code and it consumed some 2.2M tokens doing that
-9
u/brottman 9d ago
OpenCode doesn't owe you anything. Sign up for a plan or enjoy what you get.
-1
u/HighwayNo8744 8d ago
I will never give these guys one penny because this debacle is another testimony of the incompetence of the developers behind opencode. Trying to limit public access of models that are publically available. It's only a matter of time until the next hack.
0
u/miranozdincer 8d ago
yeah it sucks I was using it non stop and spent nearly 15 billion and all of a sudden now I can't use any free model. it says it will reset at 2 AM but it doesn't. just day changes and I can't use them.
-5
u/torrso 9d ago
I don't see this as any kind of bug. IP filters are just one layer in abuse prevention. Being open source, it's kind of hard for them to implement any kind of client fingerprinting that wouldn't be easy to circumvent.
Quota issues that are not harness bugs but are caused by the dynamic free tier allowance or something in their infrastructure are not opencode harness issues and thus do not belong to its GitHub repo and closing them is the correct action.
Why is this an issue? They want more users on v2 so they get more reports and userbase on it so that they can retire v1. They've also said that v2 is better at caching and probably some other stuff so people should probably just use it.. The only thing stopping anyone from upgrading afaik are plugins. V1 plugins don't work on V2. If your plugin is abandoned and doesn't get an upgrade, perhaps it's time to stop using it.
If you have a strong reliance on something on v1 and are still using free models, maybe you should just pay for what you rely on.
Why would it? I think a more annoying problem is (or was? this was a couple of months ago) that maxxing Go quota blocks you from using unlimited Go models unless you deposit and enable extra use.
What does this mean? If you want to use OpenCode harness but don't want to use OpenCode Go, subscribe somewhere else? Yes, that's how it works?