The best model for OpenClaw: what we run, and the default trap
Every default path lands on the flagship at $5/M input: fine on a subscription, expensive per token. The input-dominated economics of agents, with current prices.
If a ChatGPT or Claude subscription is paying, keep the default flagship: the flat rate absorbs it. If you pay per token, pick a current-generation efficient model deliberately (as of early August 2026 that’s openai/gpt-5.6-luna territory), because every one of OpenClaw’s default paths quietly lands you on the most expensive tier, and agent workloads punish that harder than chat ever did. And watch the cache as closely as the price: on the same pod, a model billed without its prompt cache cost about ten times more per short message than one billed with it, at similar list prices.
Agent bills are input bills
The economics of running an agent are not the economics of chatting with one. OpenClaw’s own docs describe how context works: the system prompt is rebuilt and sent every run (rules, tool schemas, skills, workspace files), plus the conversation so far, plus every tool result. Output is a few sentences; input is everything. Measured, the spend curve tracks input and cached input almost entirely, so the number that decides your bill is the input price per million tokens, and the cached-input price right behind it.
The default trap (we paid for this lesson)
Every setup path OpenClaw offers defaults to flagship-class models. A ChatGPT/Codex sign-in selects openai/gpt-5.6-sol. A plain OpenAI API key sets openai/gpt-5.6, which resolves to Sol. And OpenRouter onboarding defaults to openrouter/auto, a meta-router that picks from dozens of models and bills you at whatever it picked. In July we watched one of our own pods burn through $10 of credit in about seven days of light use: auto-routing had settled on Sol, at $5 per million input tokens, for messages that a model a fiftieth of the price could have handled. If you pay per token, the first configuration change worth making is a concrete model choice:
openclaw models set openai/gpt-5.6-luna # or your pick
# or in ~/.openclaw/openclaw.json:
# { agents: { defaults: { model: { primary: "openai/gpt-5.6-luna" } } } }What the tiers cost right now
OpenRouter’s listed prices as of early August 2026, per million tokens (input / output / cached input):
- GPT-5.6 Sol (flagship): $5 / $30 / $0.50
- GPT-5.6 Luna (efficient tier): $0.10 / $0.60 / $0.01 (the listing currently carries a 50%-off flag, so treat the exact figure as promotional)
- GPT-5-mini (last generation): $0.25 / $2 / $0.025
- Claude Sonnet 5 (Anthropic mid-tier): $2 / $10 / $0.20
Notice the odd one out: the current-generation efficient model is cheaper than the previous generation’s small model, and roughly fifty times cheaper than the flagship on the input side, the side agents actually consume.
The cache decides more than the list price
Most of an agent’s input is the same from one turn to the next: the system prompt, the tool schemas, the workspace files, the conversation so far. On one of our pods in September 2026, a 2.x install with its default tools, that repeated part came to about 28,000 tokens a turn, and prompt caching is what makes it affordable: a short message on the efficient tier cost about a tenth of a cent once the context was cached. We then switched the same conversation to Gemini 3.5 Flash Lite through OpenRouter, a model in the same price band whose listing carries a cached-input price, and each short message cost a cent or more, about ten times as much, because on that route the cache never applied and the whole context was billed at full price every turn. A listing tells you the ceiling and the floor, not which one you are paying. After a few short messages, the per-request cost in your provider’s activity log is the fact: if it is not falling once the context repeats, the cache is not applying, and the cheap-looking model is the expensive one.
The same arithmetic runs while you are away. OpenClaw 2’s heartbeat wakes the agent every thirty minutes by default, whether or not anyone has messaged it, as a full turn on the default model over the same context. On our pod that was about 48 turns and five cents a day on the efficient tier with the cache, roughly $1.50 of a month’s usage before the owner says a word, and a default whose cache does not apply would pay the same multiple on every one of those wakes.
Why the cheapest model is the wrong goal
There is a floor, and OpenClaw’s security docs are the ones who set it: smaller and cheaper models are more susceptible to tool misuse and instruction hijacking under adversarial prompts, and the official recommendation is to use a latest-generation, best-tier model for any bot that can run tools or touch files. Our own operational version of the same lesson: last-generation small models fumble multi-step setup work that current-generation efficient models handle fine. That’s why the practical sweet spot for a per-token agent is the newest efficient tier, not the oldest cheap one, and why we default our own managed OpenClaw pods to exactly that, with the flagship a config line away when a task deserves it. OpenClaw also supports a fallbacks list per agent, so you can pin the efficient model as primary and let the harness fail over rather than silently upgrade.
The subscription exception
All of this math inverts if your ChatGPT subscription powers the agent: flat-rate plans absorb the flagship’s token prices, which is exactly why subscription sign-in defaults to Sol and, on a paid plan, should stay there. One caution from running these daily: model access follows the plan tier, so if the subscription lapses, Sol keeps being selected but stops being served, and the agent goes silent with per-request errors until you switch models or renew. The per-token discipline above is for API-key and OpenRouter setups, the ones where every million tokens has a price tag.