How to Cut OpenClaw Agent Costs by 80% with Model Switching

A Reddit user spent two weeks manually logging every OpenClaw agent interaction to figure out where their money was going. The results are a clear blueprint for optimizing spend on AI agents.
The Breakdown
Over 14 days on a Telegram + Discord agent, token usage broke down as follows:
- Heartbeats (30-min polls) — 38% of usage. Running on Opus at ~$6.75/M tokens. Complete waste for a status ping.
- File reads and summaries — 29% of usage. Also on Opus. Flash handles these identically.
- Actual conversations — 22% of usage. Here model quality matters.
- Complex tasks — 11% of usage. Where Opus genuinely outperforms Flash.
In total, 67% of spend went to tasks where DeepSeek V4 Flash ($0.14/M) would deliver identical quality to Opus ($6.75/M effective after tokenizer).
The Fix: Default to Flash, Escalate Only When Needed
Set your primary model to deepseek/deepseek-v4-flash in openclaw.json:
"agents": {
"defaults": {
"model": {
"primary": "deepseek/deepseek-v4-flash"
}
}
}Then use /model anthropic/claude-opus-4-7 mid-session when you hit something truly hard. The switch is instant — no restart, same session. Type /model deepseek/deepseek-v4-flash when you're done to drop back to cheap.
Results
Costs dropped from ~$170/month to ~$35/month. The quality difference on heartbeats, file reads, and simple questions was literally zero.
The user notes that BetterClaw's free tier (with BYOK) now shows per-task API spend, which would have caught the heartbeat waste immediately. But the core move — switching primary to Flash and /model-ing up to Opus only when needed — is the real takeaway.
📖 Read the full source: r/openclaw
👀 See Also

Good AI-Assisted Development Happens at the Systems Level, Not the Task Level
A Reddit user explains how shifting from fixing AI agent output to designing constraints—like a linter rule that forces UI navigation—prevents entire classes of bugs permanently.
5 Claude Code Terminal Commands You Might Be Missing
A senior dev shares five hidden Claude Code commands for the terminal: custom statusline, shell commands, file mentions, multi-repo context, and side conversations.

Agent-Ready Codebases: Negative Rules, Precise Names, Directory READMEs
A developer shares how CLAUDE.md rules, negative instructions, and precise naming cut token waste and prevented Claude Code from bloating classes like UserManager.

Claude User Shares 'Don't Manage My Feelings' Prompt for Direct Technical Feedback
A Claude user recommends setting a specific prompt in user preferences to reduce validation preamble and get more direct technical feedback. The prompt tells Claude to skip diplomatic phrasing and provide straightforward criticism on technical and creative work.