anomalyco / anomalyco/opencode
Go plan: $60/month quota exhausted in 6 days while the client recorded only $14.80 of usage — cache-read billing is invisible, undocumented, and the local cost meter is misleading users
@fwang is already working on this.
Since Aug 12, 2026.
- Dominant language
- TypeScript
- Stars
- 209k
- Forks
- 27.5k
- PR merge metrics
- PR metrics pending
Description
Description
I am a paying Go plan subscriber ($10/mo). Within 6 days of my billing cycle (Aug 6 - Aug 12, 2026), both the dashboard and the opencode UI show my monthly quota ($60) as essentially exhausted - yet the usage recorded locally by the opencode client itself totals only $14.80. That is a 4x discrepancy between what the product tells me I am consuming and what is actually metered against my quota. I find this deeply misleading.
Reproduction steps
- Subscribe to the Go plan.
- Use opencode-go models (deepseek-v4-flash, kimi-k3) for 6 days - 1,791 assistant messages, 5.94M input / 778K output / 371M cache-read tokens (all recorded in the local opencode SQLite database).
- Compare the locally recorded cost with the Go quota dashboard percentages.
Expected behavior
The local cost field should match what is metered against the Go quota, or the metered figure should be transparent (per-request billing breakdown, published cache-read pricing).
Actual behavior
- Local recorded cost: $14.80; dashboard: monthly quota essentially exhausted.
- deepseek-v4-flash alone accumulated 359M cache-read tokens, recorded locally at $0.00.
- No warning before exhaustion; no per-request breakdown available to reconcile the 4x difference.
Impact
I paid for a month of usage and received 6 days of paid models; the remaining ~24 days of my paid cycle are unusable unless I fall back to free models.
Additional context
Local data from the opencode SQLite database (every assistant message this cycle):
| Model | Msgs | Input | Output | Cache read | Locally recorded cost |
|---|---|---|---|---|---|
| opencode-go/kimi-k3 | 238 | 1.87M | 121K | 12.6M | $13.24 |
| opencode-go/deepseek-v4-flash | 1550 | 4.04M | 656K | 359M | $1.52 |
| opencode-go/grok-4.5 / glm-5.2 | 3 | 25K | 351 | 16K | $0.05 |
| Total | 1791 | 5.94M | 778K | 371M | $14.80 |
If cache reads are metered anywhere near full input price, true consumption lands around $40-$70 - consistent with an exhausted $60 cap. The official Go docs state only the three rolling windows ($12/5h, $30/week, $60/month) and say nothing about cache token pricing.
Related reports with the same symptom (visible usage far below exhausted quota):
- #38255 - ~$34 visible usage, monthly quota 100% blocked
- #41206 - ~$11 visible usage, weekly quota 100%
- #41391 - maintainer-opened question about Go quota accounting model
I paid for $60 of usage across a month. I got 6 days, with a meter that claimed I had spent a quarter of my quota while draining it entirely. Whether this is an accounting bug or intentional opacity, it needs an answer - I expect a written explanation, a per-request audit of my account, and compensation for the unusable remainder of my billing cycle.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.