I switched because AI got too expensive. OpenCode Go made it make sense.

Like a lot of developers, I watched my AI subscriptions drift upward while the value stayed flat. OpenCode Go flipped the model: $10/month, thirteen open coding models, generous quota windows. But it does not tell you which model fits which task. That is what ZenPick is for.

01

Origin story

02

What ZenPick does

Three things, on one page. A sortable table of every Go model with live benchmark scores. A quota calculator that turns a token estimate into a number-of-requests per window. A detail drawer that names the closed-source model each Go model replaces, and why.

Everything runs on a stale-while-revalidate cache, so the page is fast on revisit and never asks the upstream APIs for the same data twice within six hours.

fig.02 — system schematic data flow
input
modelgrep.com API
benchmarks · pricing · speed
llm-stats.com API
rankings · scores · pricing
OpenCode Go
models · endpoints
engine
FETCH
HTTP · auth
CACHE
6h TTL · SWR
INFER
tag · score · rank
output
Model Table
sortable · filterable
Quota Calculator
token → request
Model Drawer
detail · copy · compare
scale 324 models upstream
latency cache hit < 50ms
refresh 6h · stale-while-revalidate
03

The numbers

10 /mo
subscription

First month $5.

13 +
models tracked

Across 6 providers.

6 h
cache TTL

Stale-while-revalidate.

324
upstream models

Cross-referenced via modelgrep + LLM Stats.

04

Methodology

Every model gets a 0–100 fit score for five scenarios — Brainstorming, Coding, Competitive, Agentic, and Budget. Scores are normalized across the current model population, so the ordering is always meaningful and always non-empty. The table sorts by the active scenario; if no scenario is active, it sorts by raw coding benchmark.

Tags, migration hints, and thermal burn rates are inferred. Nothing on the page is hand-curated. If the upstream data changes, the page changes.

05

Data & attribution

Benchmark scores, pricing, and speed data are aggregated by modelgrep.com (OpenRouter pricing + Artificial Analysis benchmarks) and llm-stats.com (benchmark scores, rankings, and pricing), and used with attribution. The model list, endpoint types, and quota windows come from the OpenCode Go documentation .

Everything ZenPick computes on top — scenario fit scores, burn rate tiers, migration hints — is derived from those sources, in the schematic above. The data and the attribution are kept close on purpose.

data_sources.json 3 sources · required attribution
ProviderLicenseUse in ZenPick
modelgrep.com
attribution required
Free public API (no key required)Benchmark scores, OpenRouter pricing, speed/latency, model metadata
llm-stats.com
attribution required
Per LLM Stats API termsBenchmark scores, rankings, pricing, model metadata
opencode.ai/docs/go Per OpenCode Go docsModel list, endpoint types, quota windows
06

Thermal key

Every model in ZenPick is tagged with one of three thermal burn rates. It is a single classification — derived from blended price per million tokens — that tells you how fast the model will consume your $12/5h window.

slow
< $1.50
Workhorse models. Use these for volume.
moderate
$1.50 – $6.00
Balanced daily drivers.
fast
> $6.00
Premium models for focused sessions.
Source function: burnRateFromPrice() in src/lib/burn.ts

Ready to compare?

Find the model that matches your task and keep your OpenCode Go quota from disappearing too fast.

Open comparison