Cost Guide
What models to use, what operations cost, and what to expect per month.
Running an AI assistant has real costs. This guide covers what to expect and how to keep them reasonable.
Model Tiers
Anthropic offers three model tiers relevant to this stack:
| Model | Best for | Relative cost |
|---|---|---|
| Claude Haiku 4.5 | High-volume, simple tasks: public chat, Discord, quick queries | Low |
| Claude Sonnet 4.6 | Balanced capability: email triage, content writing, outreach | Medium |
| Claude Opus 4.6 | Complex reasoning: planning sessions, architecture decisions, multi-step work | High |
The rule of thumb: use the cheapest model that can reliably do the job. Public-facing chat should always be Haiku. Your direct work sessions can be Opus if you need it.
Per-Agent Model Assignment
main (your direct sessions) → Opus 4.6
public-chat (site widget) → Haiku 4.5
discord → Haiku 4.5
content-writer → Sonnet 4.6
gmail-assistant → Sonnet 4.6
outreach-agent → Sonnet 4.6
What Costs Tokens
Every agent session consumes input tokens (everything in context) and output tokens (everything the agent writes). Long sessions, large SOUL.md files, and tool results that return a lot of text all add to input token cost.
High-cost operations:
- Long planning sessions with large context
- Web search results (can be verbose)
- Email inbox reads with many messages
- Agentic loops with many tool calls
Low-cost operations:
- Publishing a log entry (short session, defined workflow)
- Simple CRM lookups
- Answering a public chat question
Infrastructure Costs
| Component | Provider | Approx monthly cost |
|---|---|---|
| 4GB / 2 vCPU droplet | DigitalOcean | ~$24/mo |
| Domain | Cloudflare (registrar) | ~$10/yr |
| Twilio phone number | Twilio | ~$1.15/mo + per-message fees |
| Brave Search API | Brave | Free tier: 2,000 queries/mo |
| Google Workspace | If you already have it, no extra cost for API |
Per-Agent API Keys
The cleanest way to track cost by function is to create a separate Anthropic API key per agent. This lets you see in the Anthropic console exactly how much each agent is spending — and kill a specific agent's access without affecting the others.
Creating API Keys
- Go to console.anthropic.com
- Navigate to Settings → API Keys
- Click Create Key
- Name it clearly — use a consistent convention like
coral-main,coral-public-chat, etc. - Copy the key immediately — it's only shown once. Store it somewhere safe before closing the dialog.
- Repeat for each agent
Recommended keys to create:
| Key name | Used by |
|---|---|
coral-main |
main agent (your direct sessions) |
coral-public-chat |
public-chat (site widget) |
coral-discord |
discord |
coral-content |
content-writer |
coral-gmail |
gmail-assistant |
coral-outreach |
outreach-agent |
Adding Keys to OpenClaw
Once you have the keys, add them to each agent's config in openclaw.json:
{
"id": "public-chat",
"model": {
"primary": "anthropic/claude-haiku-4-5",
"providers": {
"anthropic": { "apiKey": "sk-ant-..." }
}
}
}
Restart OpenClaw after updating the config:
systemctl restart openclaw
If you're not ready to set up per-agent keys yet, a single shared key in the top-level providers config works fine to start.
Keeping Costs Predictable
- Keep SOUL.md files concise — they're loaded into every session as input tokens
- Rate-limit outbound actions (email, SMS) before going live — a runaway loop is expensive
- Use per-agent keys from the start — much easier to debug cost spikes when you can see them by agent
- Review the Anthropic console weekly for the first month