One of the main reasons enterprises choose Amazon Bedrock is that Claude usage lands on the AWS invoice they already pay. That part works as advertised. What surprises finance teams is how the charges get there, which pricing models coexist on the same bill, and how much tagging discipline is needed before "who spent this?" has an answer.
The Marketplace subscription behind the charge
Anthropic models on Bedrock are third-party models, and AWS bills them through an AWS Marketplace subscription. Access to Bedrock foundation models is enabled by default given the right Marketplace permissions, and the first invocation of a third-party model automatically initiates that Marketplace subscription (setup can take up to 15 minutes). The IAM actions involved — aws-marketplace:Subscribe, aws-marketplace:Unsubscribe, aws-marketplace:ViewSubscriptions — are only needed the first time a model is enabled in an account. First use also implies agreement to the third-party EULA.
For billing governance this has a sharp edge: denying aws-marketplace:Subscribe alone does not stop the first invocation, because Bedrock auto-initiates the subscription. If you want to prevent an account from generating Claude charges, deny bedrock:InvokeModel at the IAM or SCP level.
Three pricing models on one bill
| Charge type | How it bills |
|---|---|
| On-Demand | Per input and output token consumed |
| Batch inference | 50% lower than on-demand pricing for S3-based async jobs |
| Provisioned Throughput | Fixed hourly cost per Model Unit; no-commitment, 1-month, or 6-month terms (longer = lower hourly rate) |
Two modifiers change the per-token rate. Regional endpoints carry a 10% pricing premium over global endpoints for Claude Sonnet 4.5 and later models — the price of pinning data residency. Conversely, AWS states that global cross-region inference offers roughly 10% cost savings versus geographic or standard pricing, with the price based on the region from which you call the inference profile. List prices match Anthropic's first-party rates (AWS's pricing page currently shows the Claude Sonnet 5 promotional pricing of $2/$10 per million input/output tokens through August 31, 2026); committed-use discounts are negotiated with AWS, not Anthropic.
Finding it in Cost Explorer
In AWS cost tooling you can slice charges by service, by linked account, and by usage-type dimensions that distinguish model, region, and token direction. The exact usage-type strings vary by model and region, so rather than hard-coding them, open Cost Explorer, filter to the Bedrock service, and group by usage type to see the dimensions your own workload actually generates — then build reports and budgets on what you see. AWS's official pricing and billing documentation is the authority for how these dimensions are named in your account. This site's companion articles walk the console flow in more detail: Cost Explorer for Bedrock and reading Bedrock billing line items.
One structural caveat: Bedrock has two inference endpoints — the legacy bedrock-runtime surface and the newer bedrock-mantle surface used by "Claude in Amazon Bedrock." They are tracked separately for quotas, and model invocation logging currently captures only bedrock-runtime calls. If you reconcile invoices against your own token logs, make sure your logging strategy covers whichever surface your applications actually call.
The tag strategy that makes attribution work
On-demand token charges are account-level by default: without extra structure, all Claude spend in an account is one undifferentiated pool. The reliable levers, roughly in order of effort:
Account separation first. If teams or environments already live in separate AWS accounts, attribution is automatic — each account's Bedrock spend is its own line. This is the strongest boundary and needs no tagging at all.
Cost allocation tags second. Where workloads share an account, tag the resources that can carry tags and activate those tags for cost allocation. Bedrock cost allocation tags and application inference profiles — which give each application its own taggable, invokable resource — are the standard pattern for splitting shared-account Bedrock spend by team or product.
Token logs third. For per-request granularity (per feature, per customer), model invocation logging records include modelId, the caller's identity ARN, input.inputTokenCount, output.outputTokenCount, and optional caller-supplied requestMetadata. Multiply logged tokens by list prices and you have an attribution dataset finer than anything the invoice shows — see building a chargeback model.
Where to go next
Pair this with reconciling cloud invoices against token logs, or compare billing surfaces in billing mechanics on Claude Platform on AWS. The platform overview covers the rest of the Bedrock picture.