A prototype that calls a foundation model a few hundred times costs pocket change. A product with real users, long prompts, retrieval, and safety filters is a different story. That is the moment teams open the bill and ask why AWS Bedrock cost is so hard to predict.
The short answer is that Bedrock does not have one price. It has many. Each model has its own token rates, each Region can change them, and each feature around the model, such as Knowledge Bases or Guardrails, bills on its own meter.
This guide walks through those meters in plain language, using the numbers AWS publishes. You will learn:
- How Amazon Bedrock pricing works, from tokens to service tiers
- What batch inference, prompt caching, and Provisioned Throughput change
- What extra features cost, with AWS’s own worked examples
- How to estimate your monthly bill step by step
- How to track spend by app and cut it without hurting quality
Model prices, Regions, and tiers change often. AWS updated its pricing page just days before this guide was written, so confirm current rates for your model and Region before you budget.

What Is AWS Bedrock Cost?
AWS Bedrock cost is the total you pay to run foundation models on Amazon Bedrock. It includes token-based model inference, optional extras such as Knowledge Bases, Guardrails, and model customization, and supporting AWS charges like storage, logging, and data transfer. Your bill depends on the model, usage volume, and pricing mode.
AWS describes the basics on its Amazon Bedrock pricing page: pricing depends on the modality, the provider, and the model. Text models usually charge per million tokens. Image and video models charge per image or per second. Some features charge per request, per page, or per gigabyte.
Tokens: The Basic Unit
A token is a small chunk of text, roughly a word fragment. Every request has two kinds of tokens, and they are priced separately:
- Input tokens are what you send: instructions, the user’s question, conversation history, and any retrieved documents.
- Output tokens are what the model writes back, including any reasoning text for models that produce it.
Output tokens usually cost more than input tokens. You can see it in AWS’s own table for Mistral Large 3 in US East: $0.50 per million input tokens and $1.50 per million output tokens. That is why long answers and long conversations move the bill so much.
Model and Region Change the Rate
The same job can cost very different amounts on different models. In AWS’s US East table, Ministral 8B 3.0 is $0.15 per million tokens in and out, while Mistral Large 3 is $0.50 in and $1.50 out. Capability differs too, so price is only one input to the choice.
Region matters as well. AWS lists DeepSeek v3.2 at $0.62 input and $1.85 output per million tokens in US East, and $0.74 and $2.22 in several other Regions. Always read the row for the Region you will actually use.
Bedrock Pricing Modes at a Glance
Bedrock offers several ways to pay for the same model. AWS’s pricing page lists Standard, Flex, Priority, and Reserved service tiers, plus batch inference and Provisioned Throughput.
| Mode | How it is billed | What AWS says | Best for |
| Standard on-demand | Per token, no commitment | The default pay-as-you-go option | Variable or early workloads |
| Priority tier | Per token, at a premium | 75% premium to Standard, with up to 25% better output speed on supported models | Latency sensitive apps |
| Flex tier | Per token, at a discount | 50% discount to Standard on listed models | Work that tolerates slower responses |
| Batch inference | Per token, in bulk jobs | 50% lower than on-demand for select models | Large, non-urgent jobs |
| Reserved tier | Committed capacity | Listed on AWS’s pricing page for some models | Predictable, high volume traffic |
| Provisioned Throughput | Hourly per model unit | Terms of no commitment, one month, or six months | Dedicated capacity and custom models |
AWS explains the tiers on its service tiers page. Which tiers exist depends on the model, so check the table for yours.
Cross-Region Inference Profiles
Cross-Region inference lets Bedrock route requests across Regions for capacity. Price can depend on the profile you choose. For the models where AWS’s table lists both a global and a US profile, such as Kimi and GLM, the US profile is priced about 10% higher than the global one. If your data residency rules allow it, compare both.
Prompt Caching
Many apps send the same long prefix again and again, such as a system prompt or a reference document. Bedrock prompt caching lets you reuse it. AWS says cached tokens can be discounted by up to 90%, with up to 85% lower latency, for supported models.
According to AWS’s prompt caching guide, the first request writes to the cache, and that write can cost 25% more than standard input. Later reads cost 90% less than standard input, and a one hour cache write costs twice the standard rate. Rates are model specific and change, so confirm them on the pricing page.
Provisioned Throughput
Provisioned Throughput reserves capacity by the hour in units called model units. It is billed whether or not you use it. AWS gives this example: two model units of Amazon Titan Text Express on a one month commitment cost 2 × $18.40 × 24 hours × 31 days, or $27,379.20 for the month. For some providers, such as Anthropic, AWS says to contact your account team for Provisioned Throughput pricing.
That is a lot to pay for capacity you might not fill, so treat it as a tool for steady, high volume traffic or custom models, and test the break-even first.
Features That Bill Separately
Bedrock’s extra features have their own meters. These are the rates AWS lists on its pricing page.
| Feature | How it bills | AWS listed rate |
| Managed Knowledge Bases | Index storage and retrieval calls | $5.00 per GB of raw data per month, and $1.00 per 1,000 standard retrieval calls |
| Guardrails content filters | Per text unit of up to 1,000 characters | $0.15 per 1,000 text units |
| Guardrails sensitive information filters | Per text unit | $0.10 per 1,000 text units |
| Intelligent Prompt Routing | Per request | $1 per 1,000 requests |
| Simple prompt optimization | Per token | $0.03 per 1,000 tokens |
| Human model evaluation | Per completed task | $0.21 per task |
| Data Automation | Per page, image, or minute | $0.010 per page for standard document output |
| Custom model storage | Per month per custom model | $1.95 |
Each filter in Guardrails is optional, and you are charged only for the ones you turn on. Word filters and regular expression sensitive information filters are free.
Costs Outside the Bedrock Line
Some costs show up on other parts of your AWS bill:
- Vector stores. Self-managed Knowledge Bases use a database you pay for separately, such as Amazon OpenSearch Serverless, which has a minimum compute capacity even when idle.
- Logging. Turning on full model invocation logging sends prompts and responses to CloudWatch Logs or S3, and those services charge for ingestion and storage.
- Data transfer. Moving data between Regions or out to the internet carries normal AWS transfer charges.
- Application glue. Lambda functions, API gateways, queues, and databases around your model all cost money too.
How to Estimate Your AWS Bedrock Cost Step by Step
A good estimate takes about an hour and a spreadsheet. Follow these steps, and keep the assumptions visible so you can update them as real usage arrives.
- Describe the workload. Write down requests per day, average input tokens, average output tokens, and how much of each prompt is repeated.
- Pick two or three candidate models. Include a small, cheap model and a larger one, so you can compare.
- Get the rates for your Region. Use the per million token prices on AWS’s pricing page for the Region and tier you will use.
- Calculate cost per request. Multiply input tokens by the input rate and output tokens by the output rate.
- Multiply by volume. Scale to a month, and add a range for low, expected, and high usage.
- Add the features. Include retrieval, guardrails, routing, and logging if you use them.
- Add a buffer. Real traffic, retries, and longer prompts usually push costs above the first estimate.
You can also model your architecture in the AWS Pricing Calculator.
Worked Example 1: A Support Chatbot
This example uses real rates from AWS’s US East table for two models. It compares price only, not answer quality, which you must test for yourself.
Assume 100,000 requests a month, each with 1,500 input tokens and 400 output tokens. That is 150 million input tokens and 40 million output tokens a month.
| Model | Input rate | Output rate | Monthly input cost | Monthly output cost | Total |
| Mistral Large 3 | $0.50 per million | $1.50 per million | 150 × $0.50 = $75.00 | 40 × $1.50 = $60.00 | $135.00 |
| Ministral 8B 3.0 | $0.15 per million | $0.15 per million | 150 × $0.15 = $22.50 | 40 × $0.15 = $6.00 | $28.50 |
The larger model costs nearly five times as much for the same traffic. Whether it is worth it depends on how much better its answers are for your task.
Worked Example 2: Add Guardrails
AWS publishes this example for Guardrails: a chatbot gets 1,000 queries an hour. Each query is 200 characters, which is one text unit, and each response is 1,500 characters, which is two text units. That is three text units per exchange, or 3,000 an hour. With content filters and denied topics at 0.15per1,000textunitseach,thecostis3,000×(0.15 + $0.15) ÷ 1,000, or $0.90 an hour.
Over a 730 hour month, that is about $657 for roughly 730,000 queries. In other words, safety filters can cost more than the model itself when the model is a small, cheap one. Budget for them from the start, and turn on only the filters you need.
Worked Example 3: Retrieval
AWS’s pricing page shows a Managed Knowledge Base example. A team indexes 50 GB of content and handles 100,000 standard retrieval queries a month. Index storage is 50 × $5.00, or $250. Retrieval is 100,000 ÷ 1,000 × $1.00, or $100. Parsing, embeddings, and re-ranking are included. The total is $350 a month before any model inference.
The example also shows that agentic retrieval costs more: 100,000 agentic calls at $4.00 per 1,000, plus two underlying retrieve calls each at $1.00 per 1,000, brings the same setup to $850 a month.
Worked Example 4: Prompt Caching
This one uses a hypothetical input rate of $1.00 per million tokens, together with the relative cache prices AWS describes: writes cost 25% more than standard input and reads cost 90% less.
Imagine a 20,000 token reference document sent with 1,000 questions while the cache stays warm.
- Without caching: 1,000 × 20,000 = 20 million tokens × $1.00 per million = $20.00.
- With caching: one write of 20,000 tokens at $1.25 per million is $0.025. The other 999 reads are 19.98 million tokens at $0.10 per million, or about $2.00. The total is about $2.02.
That is roughly a 90% saving on this part of the bill. It only holds if requests arrive within the cache’s time to live, so a quiet hour can trigger a new write.
Track Bedrock Spend by App and Team
A single Bedrock line on your invoice tells you little. AWS offers several ways to attribute it:
- Application inference profiles. Each profile wraps a model and carries cost allocation tags, which flow to Cost Explorer and the Cost and Usage Report. AWS’s documentation says tags can take up to 24 hours to appear after activation, and they are not retroactive.
- IAM principal attribution. It tracks cost by identity, and works alongside profiles.
- Request metadata with invocation logs. Use this when you need cost per feature or per customer, not just per application.
- CloudWatch metrics. Bedrock publishes token counts and invocation counts, so you can alarm on volume.
- Budgets and anomaly alerts. Tags also work with AWS Budgets and Cost Anomaly Detection.
Creating a tagged profile from the command line looks like this:
aws bedrock create-inference-profile \
–inference-profile-name support-chatbot-prod \
–model-source copyFrom=<model-or-profile-ARN> \
–tags key=team,value=support key=env,value=prod
Replace the placeholder with your model ARN, check the CLI reference for current options, and then activate the tags in the Billing console. Use the profile ARN as the model ID in your API calls, so every request is attributed.
How to Reduce AWS Bedrock Cost
Once you can see where the money goes, the savings usually come from a handful of choices. AWS gathers its own guidance on a Bedrock cost optimization page, and the levers below build on it.
1. Match the Model to the Task
The biggest lever is model choice. A large model for every request is like sending a courier by helicopter. Use a smaller model for classification, extraction, and routing, and keep the larger one for tasks that need it. Our worked example showed a nearly fivefold price gap between two models, so even a partial shift helps.
Build a small test set of real prompts, score each model on it, and pick the cheapest one that meets your quality bar. Re-run the test when new models appear.
2. Consider Intelligent Prompt Routing
AWS’s Intelligent Prompt Routing sends each request to a larger or smaller model within the same family, depending on how hard it looks. AWS says it can reduce costs by up to 30% without compromising accuracy. It costs $1 per 1,000 requests, which is $0.001 per request, so it pays off when the average saving per request is higher than that. Test it on your own traffic.
3. Send Fewer Tokens
Every token costs money, so trim the ones that do not help:
- Shorten system prompts, and remove repeated instructions.
- Summarize long conversation history instead of resending all of it.
- Retrieve fewer, better passages in retrieval apps.
- Set a maximum output length, and ask for concise answers.
Bedrock also offers a simple prompt optimizer at $0.03 per 1,000 tokens, which rewrites prompts for better results and shorter responses.
4. Use Prompt Caching for Repeated Context
If many requests share a long prefix, cache it. AWS says cached tokens can be up to 90% cheaper. Put static content, such as instructions and reference documents, at the start of the prompt and the changing question at the end, so the prefix matches. Check the model’s minimum cache size and time to live, and look at the cached token counts in the response to confirm that hits are happening.
5. Move Non-Urgent Work to Batch or Flex
AWS says batch inference on select models costs 50% less than on-demand, and its table lists Flex tier prices at a 50% discount to Standard for many models. Nightly summaries, document classification, evaluation runs, and data enrichment rarely need instant answers. Moving them off the real-time path can halve their cost.
6. Avoid Paying a Premium Without Needing One
Priority tier is priced at a 75% premium to Standard on the models that offer it. Reserve it for user-facing flows where speed matters, and run everything else on Standard or Flex.
7. Buy Provisioned Throughput Only When the Math Works
Provisioned Throughput bills hourly whether or not you use it, so it pays off only at steady, high volume. A simple break-even check helps:
- Break-even tokens per month = monthly Provisioned Throughput cost ÷ your blended on-demand price per token.
- Hypothetical example: $20,000 a month in capacity against a blended on-demand rate of $2 per million tokens gives 10 billion tokens a month.
If your real volume is well below the break-even, stay on on-demand. If it is well above and steady, price a commitment.
8. Keep Retrieval Lean
In Managed Knowledge Bases, AWS lists $5.00 per GB per month for index storage, so storing documents nobody queries has a price. Index what you need, remove stale content, and delete Knowledge Bases you no longer use. For self-managed setups, confirm that the underlying vector store is also removed, since it bills separately.
9. Watch Agents and Multi-Step Flows
An agent can make several model calls to answer one user request, such as planning, searching, calling a tool, and summarizing, and each call uses tokens. Measure tokens per completed task, not per request, and keep agents focused on narrow jobs.
10. Turn On Only the Guardrails You Need
Guardrails bill per filter and per text unit, as the earlier example showed. Enable only the safeguards your use case needs. AWS also lists lower per unit prices for some filters when you use the InvokeGuardrailChecks API, such as $0.07 per 1,000 text units for content filters, compared with $0.15 for the standard path, so check which option fits your design.
11. Consider Distillation and Customization
AWS says distilled models in Bedrock can be up to 75% less expensive and up to 500% faster than the original models, with less than 2% accuracy loss for use cases such as retrieval augmented generation. Results depend on your task, and customization adds training and storage costs, so pilot it before you rely on it.
12. Mind Logging, Region, and Profiles
- Logging. Full invocation logging can create a lot of data. Sample it, set short retention, and watch ingestion charges.
- Region. Prices differ by Region, as the DeepSeek example showed.
- Inference profiles. Compare global and geographic profiles if your compliance rules allow either.
13. Use Credits Where They Apply
If you are a startup, AWS says Activate credits can be used on third-party foundation models in Amazon Bedrock. Credits do not cover everything, so check the terms, and plan for your cost without credits.
The Levers Side by Side
| Lever | AWS stated or listed effect | Trade-off |
| Smaller model | Depends on model prices | Quality must be tested |
| Intelligent Prompt Routing | Up to 30% cost reduction | $1 per 1,000 requests, same model family only |
| Prompt caching | Up to 90% off cached tokens | Needs a stable prefix and warm cache |
| Batch inference | 50% lower on select models | Not instant |
| Flex tier | 50% discount to Standard on listed models | Slower, lower priority |
| Priority tier | 75% premium to Standard | Faster, costs more |
| Distillation | Up to 75% less expensive | Needs setup and testing |
A Step by Step Plan to Control AWS Bedrock Cost
Use this order. Each step makes the next one easier.
- Tag before you scale. Create application inference profiles with cost allocation tags, and activate the tags in the Billing console.
- Set alerts. Create AWS Budgets and Cost Anomaly Detection alerts, and a CloudWatch alarm on token counts for your busiest app.
- Measure tokens per task. Track average input and output tokens for each feature, not only the monthly total.
- Test cheaper models. Score two or three models on real prompts, and move simple tasks to the cheapest one that passes.
- Cache and trim. Restructure prompts so static content comes first, enable caching, and cut tokens you do not need.
- Shift non-urgent jobs. Move batch-friendly work to batch inference or the Flex tier.
- Review the extras. Check Knowledge Base storage, Guardrails filters, logging volume, and unused resources.
- Decide on commitments last. Only price Provisioned Throughput or Reserved capacity after you know your steady volume.
Which Bedrock Pricing Mode Fits Your Workload?
| Workload | Good starting mode | Why |
| Prototype or unpredictable traffic | Standard on-demand | No commitment, pay per token |
| User-facing chat that needs speed | Standard, or Priority if speed is critical | Latency matters, but Priority costs 75% more |
| Nightly summaries and classification | Batch inference | 50% lower on select models |
| Background enrichment that can wait | Flex tier | 50% discount to Standard on listed models |
| Same long prompt prefix on every call | Prompt caching | Up to 90% off cached tokens |
| Steady, very high volume | Reserved tier or Provisioned Throughput | Possible savings, but only if volume is stable |
| Custom or imported models | Provisioned Throughput or on-demand deployment | Depends on the model type and your traffic |
Common AWS Bedrock Cost Mistakes
- Using the biggest model for everything. Most tasks do not need it.
- Ignoring output tokens. They usually cost more, and long answers add up.
- Forgetting the extras. Guardrails, retrieval, and logging can rival model costs.
- Buying Provisioned Throughput too early. It bills hourly even when idle.
- Skipping tags. One combined Bedrock line makes it hard to find the culprit.
- Assuming rates are the same everywhere. Region and profile type change prices.
- Leaving unused Knowledge Bases running. Storage and vector stores keep billing.
- Estimating once. Prompts, traffic, and models change, so review monthly.
One honest limit applies. Prices, discounts, and available tiers differ by model and Region and are updated often, and AWS’s savings figures are maximums. Treat the numbers in this guide as a method, and confirm current rates before you commit.
Decision Guide: Where Should You Start?
- You have no visibility yet: create tagged inference profiles and set budget alerts.
- Your bill is dominated by one model: test a smaller model on the same prompts.
- Your prompts repeat a long prefix: enable prompt caching.
- You run large, non-urgent jobs: use batch inference or Flex.
- Retrieval or safety features are costly: audit Knowledge Base storage and Guardrails filters.
- Your traffic is steady and heavy: model Provisioned Throughput or Reserved capacity against on-demand.
- You are a startup with credits: check which Bedrock models your credits cover, and plan for the full price month.
Prices Change: How to Stay Current
Bedrock pricing moves faster than most AWS services. AWS’s pricing page was updated on November 9, 2026, and it carries notes such as a 50% cut to cache read pricing for Claude Sonnet 5.5 that began on October 7, 2026. Rates you saved in a spreadsheet last quarter may already be out of date.
A few habits keep you current:
- Re-check the pricing page for your model and Region before every budget review.
- Keep rates in one cell range in your estimate, so a change updates everything.
- Watch the What’s New feed for pricing, tier, and caching announcements.
- Compare your actual cost per request each month with your estimate, and investigate gaps.
- Re-run your model comparison when new models launch, since a newer, cheaper option may fit your task.
Treat any price you read in a blog post, including this one, as a starting point. The AWS pricing page is the source of truth for rates.
Practical Examples
These scenarios are illustrative, not real customer cases.
The chatty support bot. A team sends every message to a large model. After testing, they find a smaller model handles most questions well, and they route only complex ones to the larger model. Token spend drops, and answer quality is monitored with a weekly review.
The document pipeline. A company classifies thousands of files each night with on-demand calls. They move the job to batch inference, and the cost of that workload falls by half, since the job already ran overnight.
The surprise safety bill. A small app uses a cheap model, then turns on several Guardrails filters for every message. The monthly bill shows Guardrails costing more than inference. The team keeps the filters that matter, drops the rest, and re-checks the numbers.
Conclusion
AWS Bedrock cost is predictable once you break it into parts. Tokens set the base, the model and Region set the rate, the pricing mode changes the multiplier, and extras like Knowledge Bases and Guardrails add their own lines. Estimate with real rates, track spend with tagged profiles, and cut cost with the right model, caching, batch, and a lean design.
Start this week by tagging your Bedrock usage and calculating cost per request for your busiest feature. That one number shows where the savings are.








































