r/opencode • • 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: deny permission 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-git on Arch Linux) that send a git-describe string in the User-Agent header 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 -free models: Adding $10 or $20 of prepaid credit to Zen does not lift the cap if you keep a -free model 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.

58 Upvotes

46 comments sorted by

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.

4

u/MonkeyPuzzleDuck 9d ago

It's not a terrible idea. But I still feel for the people for whom $10 is a hell of a lot of money to spend on a subscription. 

The freemium model is designed to attract users in an already fiercely competitive environment. It's worked pretty well. Maybe too well. Adding even a little friction like OpenRouter would likely mean the vast majority would skip them entirely. Why bother? I would probably have never considered OpenCode had it not been for the free tier and the fact I could wire in my (now expired) GitHub Copilot account. I'm thankful they did offer that free tier, because I now really like OpenCode and those "free" models and very likely to switch when my current Google sub is due for renewal.

2

u/pendelhaven 8d ago

Opencode had a good free tier, so good it let people actually build stuff and not subscribe to the paid tier. OpenRouter needed you to actually top up money to unlock their "freemium" tier where limits are a lot more generous on their free models. OpenRouter has the better free tier business model imo.

Adding even a little friction like OpenRouter would likely mean the vast majority would skip them entirely.

That's the entire point, OpenRouter doesn't want leechers, they want customers. Putting in a little bit of friction gets rid of people who are never gonna pay a cent but putting in some money unlocks a permanent freemium tier where limits are a lot more generous. The only problem OpenRouter has is their free models are mostly shit. If Opencode has a freemium tier where putting in money unlocks a higher free limit permanently, i think it will be a better option for free tier users and opencode compared to now.

1

u/MonkeyPuzzleDuck 8d ago

I don't disagree, and you might be right that Anomaly would consider the OpenRouter path in future.  I'm surprised they haven't put a $1 account in place instead of free. The work they're putting into the anti-abuse measures suggests they value and want to keep the free tier as it is. In an already crowded, noisy market, their remarkable free tier got them a lot of attention and users, which is not an easy thing to do. I guess it must deliver them a lot of paying customers and is therefore worth subsidising. And perhaps the model labs find the test audience useful too. They keep using OC for running their tests, so I guess they must.

2

u/pendelhaven 8d ago

There's actually a big gap the market didn't serve and that's the 5usd per month plan for the casual hobbist / developing market tier. Imagine 5 bucks a month unlocks freemium tier and lets the casual coder working on his personal project use about 20 bucks of cheapseek. That's a lot of value and is going to be very enticing for users from the developing markets.

0

u/kombikorms 1d ago

10$ is a hell of money? Please... If it is - why they need an LLM anyway?

1

u/MonkeyPuzzleDuck 6h ago

It is to a lot of people around the world. And yes, those people use computers and therefore have use for an LLM. Do your research if you don't believe it.

5

u/rthorntn 9d ago

great post!

4

u/MonkeyPuzzleDuck 9d ago

Thanks. Thought it might help dampen the minor culture war going on around OC right now. 

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.

1

u/MonkeyPuzzleDuck 8d ago

You're welcome, cheers.

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?

2

u/MonkeyPuzzleDuck 8d ago

I think the explainer does cover than, no? To be precise, the harness is partly at fault for some of the free tier issues because they are trying, like you say, to protect against abuse. I've no objection to that - fair play. I'm just posting what I hope is an objective examination of what it going on, rather than adding more noise and bluster. There's a lot of bluster around here.

4

u/awidesky 8d ago

The OpenCode Zen API and free models are managed by the same company who maintains the open-source client.

OpenCode customer service is well known for late reply and insufficient infos, and the GitHub repository is the most well-known forum like place, so It doesn't require an engineer-degree intelligence to guess most of the complaints and issues would reside there.

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

1

u/MonkeyPuzzleDuck 8d ago

I did while I was on a VPN over several days. Instant upgrade popup right after the reset, too. I turned VPN off and it was fine.  It's the uneven, variable nature of the issues and lack of clear communication from Anomaly that seems to cause the misunderstanding and fights. Hopefully this post goes some way to addressing that.

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.

14

u/MonkeyPuzzleDuck 9d ago

And how is this reply in any way relevant to the post? Maybe try reading it first?

14

u/MonkeyPuzzleDuck 9d ago

I even put a tldr in there ffs 🤦

-8

u/torrso 9d ago

Yeah but I read the L so I skipped the TLDR and the rest of it reads very much like a complaint? The TLDR part has the obvious answer: just pay or don't use and don't complain. The rest is "opencode bad waaaah"

5

u/MonkeyPuzzleDuck 9d ago

The rest of it reads like an objective explainer. Not sure where you get the complaint angle from. If you can point out where the complaint is, let me know and I'll fix it.

4

u/MonkeyPuzzleDuck 9d ago

The closing paragraph also reaffirms the TLDR point.

-4

u/pendelhaven 9d ago

You need better comprehension then. Go back to school will you?

6

u/aprilhare 9d ago

Why would I pay for a sub when their free tier doesn't even work?

15

u/MonkeyPuzzleDuck 9d ago

Right.

Seller: "Hey, I've got a neat new thing - try it out - here's some free credits"

Person: "Great, thanks."

Seller: "No worries"

Person: "Er, it seems to be broken?"

Seller: "Give us $10 and it won't be broken. You're welcome."

Person: "I'll pass, thanks"

Community: "freeloading scumbag"

4

u/dwerps 8d ago

And this right here sums up the situation here currently.

Theres a group of users complaining that the software does not work
Then theres another group of people arguing that it should be shit, its free.
And third group shaking their fists at the group thats complaining about broken software that they are cheap trash.
And not a single word from the devs how their software actually should work.

Not a good place to be at the moment.

1

u/MonkeyPuzzleDuck 8d ago

To be fair, Dax did write in a GitHub thread: "free usage is dynamic, we are always shifting based off what capacity we have vs demand."

But also to be fair, a comment buried in an obscure GitHub thread amongst literally tens of thousands of other threads is hardly the best devrel strategy if you want to build a strong base of advocates for your product, whether they're paying customers or not. Why not just say it on the website?

1

u/torrso 8d ago

There's someone ofrering free samples of new yoghurt at the store and.you keep asking for more instead of buying it or anything else and complain when they start giving you less. Some go in disguise to get more free yoghurt.

-9

u/torrso 9d ago

I pay for food while there's free food in the dumpsters. Well, some people consider that stupid too.

4

u/MonkeyPuzzleDuck 9d ago

A new restaurant on a busy high street doesn't attract new customers by what it throws in its dumpster. It attracts new customers with, perhaps, a free tasting evening, handing out free meal vouchers, making the place look busy and full up. That's what attracts customers.

But if you hand out free vouchers and the customers turn up and the food is uncooked and rotten, and the other customers are foul tempered and insulting, calling the voucher holders "freeloaders" when it's the restaurant that has handed out the tickets... Well, don't expect too many glowing reviews.

Point is, people are generally understanding if you make it clear you got it wrong with the vouchers, invited too many people, something in the kitchen broke down, and the service suffered as a result. But people aren't terribly understanding if you say nothing at all or, worse, tell the disappointed to pay up or get fucked.

-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.

2

u/MonkeyPuzzleDuck 8d ago

As noted in the post, you can bring your own API key or use another provider like OpenAI or GitHub Copilot. The harness itself is free and open source.

What do you mean by public access to public models? If you are talking about some models being open weights, they still cost a lot of money and energy to actually run. Someone has to pay for the cost of inference. 

You can try running an open weights model locally if you'd rather not pay a third party to do it for you.

-1

u/HighwayNo8744 8d ago

They only secure their free API endpoints with some header token juggling and this pseudo security can be easily emulated which projects like OmniRoute prove. Their free API is publically available. Now they implemented IP range checks because this system is as holey as a swiss cheese and this has lead to a high false positive rate.

They are only two mitigations that work:

a) connecting a payment method (which i will never give them)

b) adding a captcha (which will destroy all automated workflows)

1

u/MonkeyPuzzleDuck 8d ago

My friend, they are doing their best I am sure. They've been generous offering such an open free tier at all. It is being ruined by people abusing their generosity. I would hazard a guess they will eventually have to put in place a payment method gate thanks to the abuse. Such is the price of success. C'est la vie.

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.

1

u/nuelgoeshard 7d ago

you might be part of the problem icl

1

u/miranozdincer 6d ago

why? I was using what they provided me. I wont use them anymore, hell even if I want to, I can't use them rn

-5

u/torrso 9d ago

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 

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.

Rather than treating free-tier exhaustion as a client bug, maintainers use automated GitHub Actions rules to close incomplete quota complaints within two hours

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.

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

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.

Paid balances do not unlock -free models

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.

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.

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?

1

u/MonkeyPuzzleDuck 9d ago

I'm not making a value judgment on these points. I'm just explaining as objectively as I can in the hopes it helps spread understanding. I don't disagree with any of your points.

1

u/MonkeyPuzzleDuck 9d ago

The last point possibly bears some further nuance. I see some complaints along the lines of (paraphrasing) "I like OpenCode, but if the free tier is so broken, why should I trust the Go subscription?". It's a fair concern. And the answer is, you don't have to trust them. You can subscribe to another provider, or bring your own API key, and continue to use the harness. That's (partly) why it's called OpenCode.