CostMonStart free

Amazon Bedrock cost monitoring

See which model is driving your Bedrock bill

CostMon joins AWS Cost Explorer's Bedrock spend with CloudWatch's per-model token metrics. A model swap that changes your per-token rate shows up in days. So does a Provisioned Throughput commitment burning budget with no traffic. Neither stays buried in next month's Cost Explorer export.

AWS Cost Explorer + CloudWatch token usage, live today

Cost Explorer groups Bedrock spend by USAGE_TYPE, which doesn't cleanly separate per-model, per-token attribution. It can't tell you that last week's spend jump was a switch from Claude Haiku to Claude Opus rather than a traffic increase. Provisioned Throughput compounds the problem. It bills hourly for committed capacity whether or not it handles any traffic. Cost Explorer alone won't show you the utilization gap. By the time a model swap or an idle commitment reconciles onto the AWS invoice, the spend is already sunk.

Cost anatomy

What actually drives your Bedrock bill

Per-model input/output token rates
Bedrock prices input and output tokens separately, per model, and the gap between them is large. Claude 3.5 Sonnet runs roughly 5x more per output token than per input token (as of 2026-07-29; check current rates at aws.amazon.com/bedrock/pricing). A workload shifting toward longer generations costs more per call at flat volume.
Swapping models silently changes the rate
Moving a workload from a smaller model to a larger, higher-quality one changes the per-token rate non-linearly. The same call volume can cost several times more overnight with no configuration change to catch.
Provisioned Throughput bills hourly, regardless of use
A Provisioned Throughput commitment bills by the hour for the committed capacity whether or not it's handling traffic. An over-provisioned or forgotten commitment burns budget with zero corresponding usage.
Batch inference discount
Bedrock's batch inference mode is priced at a discount versus on-demand for the same model, for workloads that don't need a real-time response.
Cost Explorer alone can't show you this
AWS Cost Explorer groups Bedrock spend by USAGE_TYPE, which doesn't cleanly separate per-model, per-token attribution on its own. That view has to be joined against CloudWatch's per-model token metrics to see which model is driving the bill.

Alerts

How CostMon warns you about Bedrock spend

CostMon's default rule watches every service on your account from the day you connect it. An alert always shows up in your CostMon feed. Add an email, Slack, or webhook channel to send it somewhere else too.

Anomaly rulesource = bedrock, service = anthropic.claude-3-5-sonnet, metric = spend

A workload swapped onto a bigger model, changing the per-token rate overnight with no config change to flag it.

Anomaly rulesource = bedrock, service = anthropic.claude-3-5-sonnet, metric = requests

Invocation count climbing from an agent retry loop calling the same model over and over.

Budgetsource = bedrock

A monthly budget on total Bedrock spend catches a Provisioned Throughput commitment running with little traffic behind it.

Sample alert, illustrative

From
alerts@costmon.com
Subject
CostMon alert: Anomaly: bedrock / anthropic.claude-3-5-sonnet spend spike
Anomaly: bedrock / anthropic.claude-3-5-sonnet spend spike

bedrock / anthropic.claude-3-5-sonnet was $370.00 on 2026-06-30 — 85% above its 14-day average of $200.00.

Severity: warning
Occurred on: 2026-06-30

To find what to cut, the recommendations list flags idle spend and commitment gaps to review.

Why CostMon

Built for Bedrock spend, from day one

Cost by model, instead of by USAGE_TYPE

CostMon parses Bedrock's Cost Explorer usage types back into model IDs. It merges them with CloudWatch's per-model token metrics. You see cost by model instead of one opaque Bedrock line.

Catch a model swap before the bill does

A workload moved to a bigger or pricier model shows up as a step-change in that model's daily line the day it ships. It does not hide for weeks inside a monthly Bedrock total.

Joins Bedrock spend to Anthropic and OpenAI

Bedrock is often a second route to the Claude models you also buy from Anthropic direct. CostMon shows both routes next to each other, so you can compare what one model costs on each.

Read-only, Cost Explorer and CloudWatch-scoped credentials

CostMon connects with AWS credentials scoped to ce:GetCostAndUsage and CloudWatch's ListMetrics and GetMetricData only. It's read-only and never touches your Bedrock models, prompts, or infrastructure.

  • Per-modelinput and output tokens priced separately, and separately by model
  • HourlyProvisioned Throughput commitments bill regardless of utilization
  • Cost Explorer + CloudWatchAWS spend joined to per-model tokens, daily

Getting started

From API key to first alert, for Bedrock

  1. 01

    Connect a read-only AWS role

    Grant CostMon a role scoped to Cost Explorer and CloudWatch read access only, the same read-only pattern as the AWS connector. CostMon never touches your Bedrock models or infrastructure.

  2. 02

    CostMon joins cost and token usage

    CostMon parses Cost Explorer's Bedrock usage-type spend back into model IDs. It merges that spend with CloudWatch's per-model input and output token counts for the same day. Cost and usage line up per model.

  3. 03

    See the model shift, then get the alert

    Open a daily view of Bedrock spend by model ID. A workload moved onto a pricier model steps that model's line up, which trips a rule.

FAQ

Common questions about the Bedrock connector

How does CostMon connect to Amazon Bedrock?

Through the same read-only AWS role as the AWS Cost Explorer connector, scoped to ce:GetCostAndUsage plus CloudWatch's ListMetrics and GetMetricData. CostMon never requests access to your Bedrock models, prompts, or completions.

How does CostMon break Bedrock spend down by model?

Bedrock usage types from Cost Explorer are parsed back into model IDs. They are merged with CloudWatch's per-model InputTokenCount and OutputTokenCount metrics. Cost and token usage line up per model, per day.

What if CloudWatch token metrics aren't available for a model?

Bedrock spend still syncs from Cost Explorer either way. Token-level detail is best-effort enrichment, so a gap in CloudWatch metrics means less granularity. The cost row still lands.

Does CostMon track Provisioned Throughput separately from on-demand usage?

Provisioned Throughput commitments bill hourly regardless of traffic and show up as cost with little or no corresponding token usage. That's the pattern that flags an idle or over-provisioned commitment.

What does the Bedrock connector cost?

A flat monthly rate per plan. CostMon never takes a percentage of your Bedrock spend or the savings it helps you find. Free includes 2 connectors; Professional and Enterprise include unlimited connectors.

Connectors

Cloud, AI, and SaaS: all in one place

AWS, GCP, and Azure for cloud. Anthropic, OpenAI, Amazon Bedrock, Vertex AI / Gemini, and Helicone for AI and LLM spend. Snowflake and Databricks for the data cloud. Datadog, GitHub, and Vercel for the rest of the stack. Add CSV import for any tool without a native connector. That's 14 connectors, all normalized into the same unified view.

Connect it. Get the first alert.

Connect a provider and CostMon builds a daily baseline for it. From there, a spike reaches your team as an alert.

Esc