You connected Claude Code to AWS Bedrock, refactored a service, generated tests, and shipped it all before lunch. Incredible productivity. Then the billing console loaded: $47 for the day. You expected maybe $10. The tokens add up faster than you think — especially output tokens, and Claude Code generates a lot of those.
Bedrock’s on-demand pricing is transparent but easy to underestimate. Here’s what it actually costs, how to set budget guardrails, and how to get alerted before a heavy session turns into a heavy bill.
What Claude Code on Bedrock Actually Costs
AWS Bedrock charges per token with no platform fee, no per-request charge, and no minimum commitment. You pay only for what you use. Prices match Anthropic’s published API pricing — AWS doesn’t add a markup. The same rates apply across US East (N. Virginia) and Europe (Frankfurt) for models available in both regions.
Current on-demand pricing for the latest Claude models (per 1 million tokens, source: Amazon Bedrock Pricing):
| Model | Input / 1M tokens | Output / 1M tokens |
|---|---|---|
| Claude Haiku 4.5 | $1.00 | $5.00 |
| Claude Sonnet 4.6 | $3.00 | $15.00 |
| Claude Opus 4.6 | $5.00 | $25.00 |
Watch out for legacy models. Older Opus versions (4.0, 4.1) cost $15/$75 per 1M tokens — 3x more than current Opus 4.6. If your Bedrock configuration still points to a legacy model ID, you may be paying significantly more than necessary.
The critical detail: output tokens cost 3–5x more than input tokens. Claude Code sessions are output-heavy — generating code, writing tests, producing explanations. A session that reads 50K tokens of context but generates 20K tokens of code costs more for the output than the input.
Batch pricing (50% off) and prompt caching exist but don’t apply to interactive Claude Code use. For coding sessions, on-demand is the pricing that matters.
There is no session limit on Bedrock. Unlike subscription-based plans, you’re not capped at a certain number of messages or minutes. You pay per token, indefinitely. That’s the upside and the risk.
Typical Monthly Costs
Actual costs depend on session length, context window size, and how much code Claude generates. These estimates assume Claude Sonnet 4.6 unless noted:
| Use case | Model | Estimated monthly cost |
|---|---|---|
| Quick tasks / code review | Haiku 4.5 | ~$5–30 |
| Light coding, 1–2 hours/day | Sonnet 4.6 | ~$30–100 |
| Active development, 4–6 hours/day | Sonnet 4.6 | ~$150–400 |
| Heavy sessions, large codebases | Opus 4.6 | ~$300–1,000+ |
For most developers using Sonnet for day-to-day coding, expect $100–300/month. Opus sessions with large context windows can push significantly higher. The variance is real — a session that feeds an entire codebase into context costs meaningfully more than targeted, scoped prompts.
A Note on Credentials and Security
Before configuring anything Bedrock-related: never expose your AWS credentials. Don’t hardcode access keys in your Claude Code configuration or commit them to version control. Don’t create long-lived IAM users for this.
Use temporary, scoped credentials only — IAM roles with AWS SSO / Identity Center, or short-lived session tokens via aws sts assume-role. Apply least-privilege policies: the role that Claude Code uses to call Bedrock should have bedrock:InvokeModel permission and nothing else. No S3 access, no EC2, no IAM management.
This matters more than you think. A leaked long-lived key with broad Bedrock permissions could generate thousands of dollars in charges before anyone notices — especially with Opus-tier pricing. Treat AI API credentials with the same care you’d give a production database password.
Budgets and Anomaly Detection: Possible, but Limited
You can set up AWS Budgets to monitor your Bedrock spend with threshold alerts, and enable Cost Anomaly Detection to catch unexpected spikes. Both are free to configure (first 2 budgets per account are free, anomaly detection is completely free).
But there’s a critical limitation. AWS Budgets is not real-time. According to AWS documentation, billing data refreshes up to 3 times per day, with updates typically 8–12 hours behind actual usage. There can be a delay of up to 24 hours between incurring a charge and receiving the alert.
That means a heavy afternoon of coding with Opus could blow past your budget before AWS even registers the spend. And the alert emails from budgets@costalerts.amazonaws.com? They regularly land in spam.
The combination of 8–12 hour billing delay plus email delivery lag plus you’re focused on code, not your inbox creates a real blind spot. For a $200/month Bedrock budget, a single day of unchecked Opus usage could consume half of it before any notification reaches you.
CostPulse: Push Alerts for Your Bedrock Spend
CostPulse takes the budget and anomaly signals that AWS generates and delivers them as native iOS push notifications — not email, not a dashboard you have to remember to check.
- Budget thresholds on your lock screen — get pushed when you hit 50%, 80%, 100% of your Bedrock budget
- Anomaly detection — ML-powered spike detection catches unusual Bedrock spend before it compounds
- Cost Explorer in your pocket — daily spend breakdown by service, 12 months of history
- Home screen widgets — budget gauge and progress bar on your Lock Screen, visible at a glance
- Under 2 minutes to set up — one CloudFormation stack, no AWS credentials shared, least-privilege IAM roles only
The free plan covers one AWS account with full cost visibility. CostPulse Plus ($4.99/month) adds up to 3 accounts, budget push alerts, anomaly detection, and widgets.
Start Monitoring Before the Next Session
Claude Code on Bedrock is one of the most productive developer tools available — but unmonitored token usage adds up. Configure AWS Budgets and Anomaly Detection for baseline coverage, then add push-based monitoring so you’re never surprised.
Download CostPulse and get push-based Bedrock cost alerts in under two minutes — free plan included, no credit card required.