The June 15 Claude billing change: Agent SDK credits, model retirement, and the checklist I run before anything breaks
Two Anthropic changes land on the same day: programmatic Claude usage moves to a separate monthly credit pool, and claude-opus-4-20250514 plus claude-sonnet-4-20250514 stop answering on the API. Interactive Claude Code is fine. Cron jobs and CI agents are not. Here is how I audit auth paths, claim credits, and grep for retiring model IDs before the first failed run.
In this post (12 sections)
Introduction
June 15, 2026 is a plumbing day for anyone running Claude outside a chat window. Anthropic splits programmatic usage off subscription limits and retires two API model IDs on the same calendar date. If you only use Claude interactively in the terminal or on claude.ai, you can stop reading after the next paragraph. If you run cron jobs, GitHub Actions, Agent SDK services, or third-party tools that authenticate through your Claude seat, this post is the checklist I run before anything breaks at 2 a.m.
I treat June 15 like any other production cutover I run on an engagement: inventory what changed, grep for what breaks, migrate in order. Billing split first, retiring model IDs second, API keys for anything that runs unattended. If you live on the Claude API stack, this is the week to document which repos authenticate as a human seat versus a machine key.
What changed on June 15 (release overview)
Two unrelated changes share a date, which is why teams miss one of them. First, programmatic Claude usage moves to a separate Agent SDK credit pool billed at API list rates. Second, claude-opus-4-20250514 and claude-sonnet-4-20250514 stop responding on the API. Interactive surfaces are untouched. The Claude Help Center guidance on Agent SDK billing is the primary source for the billing split.
- Agent SDK, claude -p, Claude Code GitHub Actions, and ACP-authenticated third-party apps leave the subscription usage pool.
- Eligible plans receive a monthly Agent SDK credit (sized to plan tier) with no rollover; you claim it in account settings.
- Direct Platform API key workloads continue on pay-as-you-go billing, unchanged.
- claude-opus-4-20250514 and claude-sonnet-4-20250514 retire; API requests to those IDs fail with no silent fallback.
- Recommended replacements: claude-opus-4-8 and claude-sonnet-4-6 respectively.
What stayed the same (and what did not)
Anthropic drew a line between interactive use and programmatic use. The Claude Help Center guidance on Agent SDK billing is explicit: starting June 15, the Claude Agent SDK, claude -p, Claude Code GitHub Actions, and third-party apps authenticating through the Agent Client Protocol no longer draw from the same usage pool as your subscription chat and interactive Claude Code sessions.
The credit is sized to your plan tier, does not roll over, and bills at standard API list prices once allocated. You claim it in account settings if eligible. That is a different economic shape from the old world where a nightly claude -p job quietly rode the same Max subscription as your afternoon coding session.
Agent SDK credit sizing (published plan tiers)
Anthropic's own admin guidance frames the credit as sized for individual experimentation. Shared production automation should use Claude Platform with an API key for predictable pay-as-you-go billing. That matches how I already split human seats from machine workloads on enterprise engagements.
How June 15 billing differs from before
The model retirement that fails hard, not soft
Separately, and easy to miss because it shares the date, Anthropic's model deprecations page retires claude-opus-4-20250514 and claude-sonnet-4-20250514 on June 15. API calls to those IDs fail. There is no silent fallback to a newer model in a config you forgot to update.
- Replace claude-opus-4-20250514 with claude-opus-4-8 (recommended successor).
- Replace claude-sonnet-4-20250514 with claude-sonnet-4-6.
- Re-run eval suites after swapping IDs. Token economics and tool-call reliability shift even when list pricing looks similar.
- Watch the next scheduled retirement: claude-opus-4-1-20250805 is already on the deprecation path for August 5, 2026.
If you standardized on Sonnet 4 or Opus 4 in spring 2026 and have not deployed since, your agent configs, GitHub Actions env vars, and eval harnesses are the first place to grep. I treat model ID strings like dependency pins: they drift until something breaks loudly. If you were also piloting Claude Fable 5 for agent builders, pin fallbacks in the same pass. Frontier IDs and retiring GA IDs fail the same way: hard, at 2 a.m.
Why the split matters for agent economics
The old setup accidentally subsidized automation. A subscription-priced claude -p loop in cron or a GitHub Action that fan-outs tool calls looked cheap because it shared a human's interactive pool. That masked the true cost per completed task, which is the number I actually optimize for in routing work.
Anthropic is nudging production automation toward metered API billing with attributable spend. That aligns with how I already advise enterprise teams: interactive seats for humans, API keys for machines, separate budgets, separate dashboards. The June 15 credit is a cushion for individual experimentation, not a production subsidy. If your agent runs every night, it belongs on a Platform API key with cost alerts, not on borrowed subscription headroom.
The routing discipline that pairs with this is in Gemini 3.5 Flash vs Sonnet 4.6 as a routing layer: send each sub-task to the cheapest model that can actually finish it, and measure cost per completed task, not cost per token. The one-glance tier map lives in stop paying frontier prices for classification.
What breaks when you ignore June 15
Most failures are operational, not model-quality regressions. I see the same four patterns on every billing cutover.
How to upgrade step by step
- 01Inventory every non-interactive Claude entry pointGitHub Actions, cron wrappers, Agent SDK services, internal bots, third-party tools using ACP. For each, record whether it authenticates via subscription OAuth or a Platform API key.
- 02Claim Agent SDK credit where eligibleIf the workload must stay on subscription auth for now, claim the monthly credit in account settings before the first headless run after June 15. Set usage-credit overflow policy explicitly (hard stop vs allow overage billing).
- 03Move production automation to API keysPoint CI and scheduled jobs at ANTHROPIC_API_KEY (or your secret manager equivalent). Isolate spend per environment. This is the same pattern I use when separating dev experimentation from prod agent loops in the agent observability stack we ship to every client and on enterprise AI automation engagements where nightly jobs must not borrow a developer seat.
- 04Grep for retiring model IDsSearch repos, Helm values, Terraform, and GitHub org secrets for claude-opus-4-20250514 and claude-sonnet-4-20250514. Swap to claude-opus-4-8 and claude-sonnet-4-6, then re-run evals built from real failures (stop testing on the happy path).
- 05Add a cost guardrail before the loop, not after the billMax steps, token budgets, and success checks belong in orchestration code. A headless agent without a step budget is how a credit pool dies on day nine of the month.
Example: point GitHub Actions at an API key
The cleanest production fix is to stop having automation borrow a human subscription. In GitHub Actions, set ANTHROPIC_API_KEY from your org secrets and remove subscription OAuth from the workflow. claude -p and the Agent SDK authenticate against the Platform account, so the June 15 credit pool never enters the picture for that job.
# .github/workflows/agent-review.yml (pattern)
env:
ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
CLAUDE_MODEL: claude-sonnet-4-6 # not claude-sonnet-4-20250514
steps:
- name: Run headless review
run: claude -p "Review the diff for security issues. Exit 1 if critical."
Pair the key with a model ID grep across the repo. I run ripgrep for claude-opus-4-20250514 and claude-sonnet-4-20250514 in workflow files, Terraform, Helm values, and .env.example before merge. Model swaps without eval reruns are how tool-call reliability silently shifts.
Should you claim the credit or move to API keys first?
Claim the credit if you are an individual experimenting with claude -p or the Agent SDK on a personal Pro or Max seat and you understand the monthly cap. Move to an API key if the workload is shared, scheduled, or production-facing. The credit is a transition cushion, not a substitute for attributable machine billing.
A reasonable middle path for small teams: claim the credit for local experimentation this month, migrate CI to API keys in the same sprint, and document which repos use which auth path in the README so the next hire does not copy the wrong pattern.
Common mistakes I see this week
- Assuming interactive Claude Code limits cover GitHub Actions because both say "Claude Code" in the product name.
- Discovering the model retirement from a 404-style API error in production instead of a pre-deploy grep.
- Leaving usage-credit overflow enabled without a spend alert, then getting surprised by list-rate overage.
- Upgrading the model ID without re-running tool-call evals. Stronger models change which tools get picked and how many steps a loop takes.
- Ignoring the operating-model gap: billing changed, but nobody owns the agent that now bills differently (agentic transformation is an operating model problem).
- Turning on headless Auto-review or SDK agents without reading governing agent autonomy after June 2026. Billing and guardrails changed in the same week.
What comes after June 15 on the deprecation calendar
June 15 is not the last model retirement this summer. claude-opus-4-1-20250805 was deprecated on June 5 and retires August 5, 2026. If you are grep-cleaning today, fix the June 15 IDs and schedule the August pin in the same pass. Deprecation hygiene is cheaper when you treat model strings like semver pins in package.json.
Conclusion
June 15 is a plumbing day, not a capability day. Nothing about interactive Claude Code got worse for a developer at a keyboard. Everything about unattended agents got more honest about cost and more strict about model IDs. That is good governance dressed as billing policy. Run the checklist once, document which auth path each automation uses, and you will not learn about the change from a failed pipeline at 2 a.m.
Sources: Anthropic Agent SDK billing guidance at https://support.claude.com/en/articles/15036540-use-the-claude-agent-sdk-with-your-claude-plan; model deprecations at https://docs.anthropic.com/en/docs/about-claude/model-deprecations; API release notes at https://docs.anthropic.com/en/release-notes/api.
Agentic AI patterns, delivered Thursdays
What I am shipping, watching, and pruning out of client stacks each week. One email. No fluff.