Claude 3 Haiku
Amazon Bedrock token pricing and cost optimization reference for Claude 3 Haiku.Rates normalized to USD per 1 Million Tokens ($/1M) with prompt caching and batch API discounts across 17 AWS regions.
anthropic.claude-3-haiku-v1:0On Google Cloud Vertex AI
Vertex AI isn't shown for Claude 3 Haiku: Anthropic's models are priced there per geography and context band, and this catalog publishes Claude on Amazon Bedrock only.
Alternatives to Claude 3 Haiku
| Option | Price vs Claude 3 Haiku | Why look at it |
|---|---|---|
| Claude Haiku 5.5Compare → | input-60%-$0.15/1M output-60%-$0.75/1M Standard tier, per 1M tokens | Next step down in price from Anthropic |
| Claude InstantCompare → | input+220%+$0.55/1M output+92%+$1.15/1M Standard tier, per 1M tokens | Next step up in price from Anthropic (general tier) |
| Claude 3.5 HaikuCompare → | input+220%+$0.55/1M output+220%+$2.75/1M Standard tier, per 1M tokens | Same Haiku line, different version |
| Claude Haiku 4.5Compare → | input+300%+$0.75/1M output+300%+$3.75/1M Standard tier, per 1M tokens | Also from Anthropic |
Claude 3 Haiku Spend Estimator
Model inference spend by prompt volume, cache hit rate, and batch processing.
Key Cost Levers & Architecture
Practical mechanisms to reduce inference costs with Claude 3 Haiku on AWSCaches repetitive system instructions, schemas, and document prefixes in memory with 5-minute and extended 1-hour TTL tiers.
- Read Rate: $0.06 / 1M tokens
- Write Rate (5m TTL): $0.31 / 1M tokens
- Ideal for: Multi-turn conversations, RAG document queries, structured schemas
Asynchronous bulk processing submitted via Amazon S3 with a standard 24-hour turnaround SLA.
- Batch Input: $0.13 / 1M tokens
- Batch Output: $0.63 / 1M tokens
- Ideal for: Offline classification, synthetic data generation, benchmark evals
AWS Bedrock supports standard on-demand inference, priority reserved throughput, and cross-region routing.
- Standard: Lowest latency, pay-per-token with zero commitments
- Cross-Region Routing: Automatically burst traffic to available regional capacity
- GovCloud: Dedicated isolated compliance partitions with +20% uplift
Rates by region
Live rates across all 17 available AWS cloud regions| AWS Region | Prompt Input $/1M | Completion Output $/1M | Cache Read $/1M | Batch Input $/1M | Pricing Tier |
|---|---|---|---|---|---|
| us-east-1 US East (N. Virginia) | $0.25 | $1.25 | β | $0.13 | Baseline |
| us-west-2 US West (Oregon) | $0.25 | $1.25 | β | $0.13 | Baseline |
| eu-central-1 Europe (Frankfurt) | $0.25 | $1.25 | β | $0.13 | Baseline |
| eu-west-1 Europe (Ireland) | $0.25 | $1.25 | β | $0.13 | Baseline |
| ap-northeast-1 Asia Pacific (Tokyo) | $0.25 | $1.25 | β | $0.13 | Baseline |
| us-gov-west-1 AWS GovCloud (US-West) | $0.30 | $1.50 | β | β | GovCloud (+20%) |
| ap-south-1 Asia Pacific (Mumbai) | $0.25 | $1.25 | β | $0.13 | Baseline |
| ap-northeast-2 Asia Pacific (Seoul) | $0.25 | $1.25 | β | $0.13 | Baseline |
| ap-southeast-1 Asia Pacific (Singapore) | $0.25 | $1.25 | β | $0.13 | Baseline |
| ap-southeast-2 Asia Pacific (Sydney) | $0.25 | $1.25 | β | $0.13 | Baseline |
| us-gov-east-1 AWS GovCloud (US-East) | $0.30 | $1.50 | β | β | GovCloud (+20%) |
| ca-central-1 Canada (Central) | $0.25 | $1.25 | β | $0.13 | Baseline |
| eu-west-2 Europe (London) | $0.25 | $1.25 | β | $0.13 | Baseline |
| eu-west-3 Europe (Paris) | $0.25 | $1.25 | β | $0.13 | Baseline |
| eu-central-2 Europe (Zurich) | $0.25 | $1.25 | β | $0.13 | Baseline |
| sa-east-1 South America (Sao Paulo) | $0.25 | $1.25 | β | $0.13 | Baseline |
| us-east-2 US East (Ohio) | $0.25 | $1.25 | β | $0.13 | Baseline |
Developer Quickstart
Invoke Claude 3 Haiku via Amazon Bedrock Converse APIimport boto3
# Amazon Bedrock Converse API invocation
client = boto3.client("bedrock-runtime", region_name="us-east-1")
response = client.converse(
modelId="anthropic.claude-3-haiku-v1:0",
messages=[
{
"role": "user",
"content": [{"text": "Summarize key features and cost levers of Claude 3 Haiku."}]
}
],
inferenceConfig={
"maxTokens": 1024,
"temperature": 0.7
}
)
output_text = response["output"]["message"]["content"][0]["text"]
usage = response["usage"]
print(f"Response: {output_text}")
print(f"Usage: {usage['inputTokens']} in, {usage['outputTokens']} out")