How to read an Amazon Bedrock usage type
Every line of a Bedrock bill has a usage type: the source Region's billing code, the model, what is metered, and - when it is not the default - the service tier and the routing. The same model has one usage type per token type, tier and routing, each with its own price.
| Usage type | Reads as |
|---|---|
USE1-Claude4.6Sonnet-input-tokens | us-east-1, Claude Sonnet 4.6, input tokens, Standard tier, the model ID or a Geo profile |
USE1-Claude4.6Sonnet-cache-read-input-token-count | Tokens read from the prompt cache - cheaper than input |
USE1-Claude4.6Sonnet-output-tokens-cross-region-global | Output tokens through a Global cross-Region inference profile |
USE1-Nova2.0Lite-input-tokens-flex | Nova 2 Lite on the Flex tier; -priority and -batch work the same way |
USE1-openai.gpt-oss-120b-mantle-input-tokens-standard | The bedrock-mantle endpoint (OpenAI-compatible APIs), Standard tier |
USE1-NovaPro-ProvisionedThroughput-1month-ModelUnits | Provisioned Throughput model units with a 1-month commitment |
USE1-MP:USE1_InputTokenCount-Units | Input tokens of a model sold through AWS Marketplace - which model is in the service name, such as Claude Haiku 4.5 (Amazon Bedrock Edition), not in the usage type |
Amazon's models and most other providers' - Llama, Mistral, DeepSeek, Qwen, gpt-oss and more - are billed under the Amazon Bedrock service. Some third-party models, such as Anthropic's Claude, Cohere, Stability AI and TwelveLabs, are sold through AWS Marketplace: each is a service of its own in Cost Explorer, under the AWS Marketplace billing entity. The Region code is the source Region - the one you called - which a cross-Region request is priced by, wherever it was processed.
Why the Bedrock bill does not add up
- Cache tokens. Input, output, cache read and cache write tokens are four prices. Summing input and output misses the cache - AWS names this the most common gap.
- Services outside "Amazon Bedrock". A Cost Explorer filter on Service = Amazon Bedrock leaves out every "(Amazon Bedrock Edition)" service. Filter on the billing entity, or add those services.
- Grouping by usage type. The Marketplace models share their usage types, so grouped by usage type alone Cost Explorer adds them together. Group by Service first.
- Routing and tiers. In-Region or Geo, Global, Standard, Flex, Priority and batch are each priced apart. Global is priced about 10% below Geo (AWS's figure for Claude Sonnet 4.5); Priority costs 75% more than Standard and Flex 50% less.
- Capacity by the hour. Provisioned Throughput and the Reserved tier are billed per hour for their term, whether requests use them or not.
- Tags from activation on. Cost allocation tags are not retroactive, and it can take up to 24 hours for a tag key to appear and 24 more to activate.
- No per-request lines. CUR adds Bedrock costs up per usage type and hour or day. For the cost of one request or prompt, use model invocation logs and join them to CUR by model and usage type.
- New models and anomaly alerts. Cost Anomaly Detection watches third-party Bedrock models too, but needs 10 days of a service's history - a model you just started using is not covered yet.
Split Bedrock costs by application, team or user
| Method | Splits by | Works with |
|---|---|---|
| Application inference profile | Application or workload - its tags, one profile per model | InvokeModel and Converse on bedrock-runtime |
| Project | Application or workload - its tags, any model | Responses and Chat Completions on bedrock-mantle |
| IAM principal | The calling user or role, and its principal or session tags | Both endpoints; needs a CUR 2.0 export with IAM principal data |
An application inference profile is tied to one model, so every new model version needs a new profile. AWS recommends projects on bedrock-mantle, and IAM principal attribution for per-user costs - with a shared gateway role, through session tags. The three can be combined. A policy that allows the profile must also allow the model in every Region the profile routes to; an AccessDenied names the resource that is missing.
Frequently asked questions
Is my bill sent anywhere?
No. What you paste is read in your browser: nothing is uploaded, processed on a server or stored. The page only counts that the decoder was used, with which kind of export and which first check, never the bill.
Why does Claude not show up under Amazon Bedrock?
Anthropic's models on Bedrock are sold through AWS Marketplace. Cost Explorer lists each as its own service, such as Claude Sonnet 4.6 (Amazon Bedrock Edition), under the AWS Marketplace billing entity.
What is USE1-MP:USE1_InputTokenCount-Units?
Input tokens in us-east-1 of a model sold through AWS Marketplace. The usage type is the same for every such model; the service it is billed under tells which one.
Can I see what one request cost?
Not in Cost Explorer or CUR - they add costs up per usage type and hour or day. Model invocation logs carry each request's token counts; multiply them by the unit prices of the matching usage types.
Why do cache writes cost more than input?
Writing a prefix to the prompt cache is billed above the input price and reading it well below. The cache pays off when the prefix is read more often than written - the decoder compares both from CUR rows with usage amounts.
References
Understanding your Amazon Bedrock Cost and Usage Report data
Application inference profiles
IAM principal attribution
Projects
Create an application inference profile
Detecting unusual spend with AWS Cost Anomaly Detection
Amazon Bedrock pricing