Provider comparisons
Azure OpenAI vs Bedrock vs Open Source: HIPAA Cost
What a HIPAA workload actually costs on Azure OpenAI, AWS Bedrock, and open-weight inference - with published per-token prices and the hidden line items
TL;DR
Azure OpenAI and AWS Bedrock are both HIPAA-eligible under their own agreements, and both also carry open-weight models at competitive prices. The large cost gap appears when you compare closed-source frontier models on those platforms against the same workload run on open weights.
Both Azure OpenAI and AWS Bedrock are legitimate answers to the compliance question. Microsoft's BAA is bundled into the Product Terms by default for covered entities; Bedrock appears on AWS's HIPAA-eligible services reference, with an AWS BAA managed through Artifact.
So the compliance question is largely settled for both. The question that decides the architecture is cost, and cost is where the pricing pages get unhelpful.
The compliance baseline, briefly
Worth stating because it is often asked:
- Azure OpenAI is covered by the Microsoft HIPAA BAA, which Microsoft describes as available "as part of the Microsoft Product Terms." Microsoft notes there is "no separate contract to sign." Coverage requires being a covered entity or business associate and using in-scope services.
- Amazon Bedrock is listed on AWS's HIPAA Eligible Services reference. AWS's own condition is that customers "agree not to use these HIPAA Eligible Services for any purpose or in any manner involving Protected Health Information ... without first entering into an AWS business associate agreement."
- Both note that a BAA does not make you compliant by itself. AWS states plainly: "There is no HIPAA certification for a cloud service provider."
What the tokens cost
Here is the comparison that matters. All figures are per million tokens.
Closed-source frontier models on the hyperscalers:
| Model | Platform | Input $/M | Output $/M |
|---|---|---|---|
| Azure OpenAI GPT-6 Astra | Azure | $10.00 | $50.00 |
| Azure OpenAI GPT-6.1 Sol | Azure | $2.00 | $10.00 |
| Claude Opus 5.5 | Bedrock | $4.00 | $20.00 |
| Claude Sonnet 5.5 | Bedrock | $2.00 | $10.00 |
Open-weight models on Bedrock:
| Model | Input $/M | Output $/M |
|---|---|---|
| Qwen3 32B | $0.15 | $0.60 |
| gpt-oss-120b | $0.15 | $0.60 |
| GLM 5 | $1.00 | $3.20 |
| MiniMax M2.5 | $0.30 | $1.20 |
| Kimi K3 | $3.30 | $16.50 |
| DeepSeek v3.2 | $0.62 | $1.85 |
Open weights on OpenMed Router:
| Model | Input $/M | Output $/M |
|---|---|---|
| GLM-5.3-Flash | $0.15 | $0.50 |
| DeepSeek-V4.1-Flash | $0.30 | $1.20 |
| MiniMax M3 | $0.30 | $1.20 |
| Qwen3.8-27B | $0.80 | $4.00 |
| DeepSeek-V4-Pro | $1.32 | $3.96 |
| GLM-5.3 | $1.40 | $4.40 |
| Kimi K3 | $3.00 | $15.00 |
Reading that honestly
Bedrock's open-weight prices are competitive, but only for models 6+ months behind. Qwen3 32B at $0.15/$0.60 and gpt-oss-120b at the same rate are genuinely cheap. If those models fit your workload, Bedrock is a reasonable buy and our advantage is not price. But Qwen 3, Bedrock's latest Qwen model, was released in July 2025 - and anyone who has been following the latest releases in recent months will know that Qwen3.8 is miles ahead of previous releases.
The large gap appears when you compare a funded closed model against an open weight. Claude Sonnet 5.5 at $2.00/$10.00 against, say, GLM-5.3 at $1.40/$4.40 is roughly a 2-to-4x difference on output. The multiple depends entirely on which two models you put side by side - but the core differentiator of the frontier open-source models is where they stand on the price-to-unit-intelligence Pareto frontier.
Model recency is the real differentiator. Bedrock does carry DeepSeek, Qwen, MiniMax, Kimi, and GLM - but at generations that lag the open-weight frontier. When a new model ships, it typically takes months for it to appear on a hyperscaler's catalog. If your product benefits from the newest open model, that lag is the main constraint, not price.
The line items that never make the pricing page
Per-token cost is the visible number. These are the ones that show up later:
- Data-zone and regional deployment. Azure's Data Zone and Regional deployment types cost more than Global, and regional processing endpoints on OpenAI carry a 10% uplift for recent models.
- Provisioned throughput. If you need guaranteed capacity rather than pay-as-you-go, you are buying committed units, and the effective per-token cost depends on utilisation you have to forecast.
- Egress. Moving data out of a cloud the rest of your stack does not live in has a price, and it does not appear next to the model.
- Engineering time. A cloud-native BAA path means IAM, VPC endpoints, KMS configuration, and a deployment pipeline. That is real headcount, and it is the most commonly omitted line in a build-vs-buy comparison.
None of those is hypothetical. Together they are what turns a favourable per-token comparison into an unfavourable total-cost one.
A worked example
Take a mid-sized clinical documentation product: 200,000 requests a month, each with 4,000 input tokens and 800 output tokens. That is 800 million input tokens and 160 million output tokens monthly.
| Path | Input cost | Output cost | Monthly total |
|---|---|---|---|
| GPT-6 Astra on Azure OpenAI | $8,000 | $8,000 | $16,000 |
| Claude Opus 5.5 on Bedrock | $3,200 | $3,200 | $6,400 |
| GLM-5.3 on OpenMed Router | $1,120 | $704 | $1,824 |
| DeepSeek-V4.1-Flash on OpenMed Router | $240 | $192 | $432 |
The point is not that one platform wins across the board. It is that model choice inside a platform moves the bill by an order of magnitude, and an open-weight catalog gives you cheap options a closed catalog cannot.
At that volume the difference between the top and bottom row is roughly $187,000 a year. That is the budget that funds the hardware, the SRE time, and the security review a self-hosted path would require - or it is simply margin you keep.
The decision framework
Three questions, in order:
- Do you need a closed-source frontier model? If yes, Azure OpenAI or Bedrock is your path and the cost is what it is. OpenMed Router does not serve those models today, though proprietary models are coming soon.
- Do you need the newest open weights? If yes, an aggregator-style platform will have them first. Hyperscaler catalogs lag new checkpoints.
- Do you need a cloud account, or just an API? If your stack is not already on Azure or AWS, the surrounding infrastructure is a cost of its own. A BAA-backed API removes that work entirely.
For a typical clinical workload - summarization, extraction, classification, drafting - the honest answer is that an open weight in the middle of the table usually performs close enough, and the token savings fund a lot of engineering. If it does not, pay for the frontier model and be glad the option exists.
OpenMed Router serves the open-weight model catalog under a signed BAA, with zero-retention isolated inference and AES-256 encryption in transit and at rest. The HIPAA compliance guide covers what the agreement must contain.
Modeling a clinical AI budget? Join the waitlist.
Chris Williams, MD
Chris Williams, MD is a physician, clinical AI researcher and the co-founder of OpenMed Router, working to make open source AI models safely accessible to healthcare organizations under HIPAA. He writes about clinical AI, model selection, compliance, and the practical adoption of open source inference in clinical and operational workflows.
Join the waitlist