gpt-oss-20b
Amazon Bedrock token pricing and cost optimization reference for gpt-oss-20b.Rates normalized to USD per 1 Million Tokens ($/1M) with prompt caching and batch API discounts across 15 AWS regions.
openai.gpt-oss-20b-v1:0On Google Cloud Vertex AI
The same model is sold through Vertex AI at one global rate per price type. These are Google's published rates, not the AWS rates above; both hosts are shown because the model is sold on both.
| Rate | Vertex AI, USD per 1M tokens |
|---|---|
| Input | $0.07 |
| Output | $0.25 |
| Cache read | $0.0070 |
| Batch input | $0.04 |
| Batch output | $0.13 |
| Input, long context | β |
| Output, long context | β |
| Output, thinking | β |
Vertex AI rates are global: Google publishes one rate covering every region where the model runs, against the per-region AWS prices above. A dash means Google publishes no rate for that price type.
Alternatives to gpt-oss-20b
| Option | Price vs gpt-oss-20b | Why look at it |
|---|---|---|
| GPT OSS Safeguard 20BCompare → | inputsame price output-33%-$0.10/1M Standard tier, per 1M tokens | Next step down in price from OpenAI |
| gpt-oss-120bCompare → | input+114%+$0.08/1M output+100%+$0.30/1M Standard tier, per 1M tokens | Next step up in price from OpenAI |
| GPT-5.6-LUNACompare → | input+277%+$0.194/1M output+428%+$1.28/1M Standard tier, per 1M tokens | Same GPT line, different version (flagship tier) |
| GPT-5.6-TERRACompare → | input+3671%+$2.57/1M output+5180%+$15.54/1M Standard tier, per 1M tokens | Also from OpenAI (flagship tier) |
gpt-oss-20b 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 gpt-oss-20b on AWSCaches repetitive system instructions, schemas, and document prefixes in memory with 5-minute and extended 1-hour TTL tiers.
- Read Rate: $0.02 / 1M tokens
- Write Rate (5m TTL): $0.09 / 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.04 / 1M tokens
- Batch Output: $0.15 / 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 15 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.07 | $0.30 | β | $0.04 | Baseline |
| us-west-2 US West (Oregon) | $0.07 | $0.30 | β | $0.04 | Baseline |
| eu-central-1 EU (Frankfurt) | $0.09 | $0.40 | β | $0.05 | +29% vs Baseline |
| eu-west-1 EU (Ireland) | $0.08 | $0.35 | β | $0.04 | +14% vs Baseline |
| ap-northeast-1 Asia Pacific (Tokyo) | $0.08 | $0.36 | β | $0.04 | +14% vs Baseline |
| us-gov-west-1 AWS GovCloud (US-West) | $0.08 | $0.36 | β | $0.04 | GovCloud (+20%) |
| ap-southeast-3 Asia Pacific (Jakarta) | $0.07 | $0.31 | β | $0.04 | Baseline |
| ap-south-1 Asia Pacific (Mumbai) | $0.08 | $0.35 | β | $0.04 | +14% vs Baseline |
| ap-southeast-2 Asia Pacific (Sydney) | $0.07 | $0.31 | β | $0.04 | +3% vs Baseline |
| us-gov-east-1 AWS GovCloud (US-East) | $0.08 | $0.36 | β | $0.04 | GovCloud (+20%) |
| eu-west-2 EU (London) | $0.11 | $0.47 | β | $0.05 | +57% vs Baseline |
| eu-south-1 EU (Milan) | $0.09 | $0.40 | β | $0.05 | +29% vs Baseline |
| eu-north-1 EU (Stockholm) | $0.07 | $0.30 | β | $0.04 | Baseline |
| sa-east-1 South America (Sao Paulo) | $0.08 | $0.36 | β | $0.04 | +14% vs Baseline |
| us-east-2 US East (Ohio) | $0.07 | $0.30 | β | $0.04 | Baseline |
Developer Quickstart
Invoke gpt-oss-20b 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="openai.gpt-oss-20b-v1:0",
messages=[
{
"role": "user",
"content": [{"text": "Summarize key features and cost levers of gpt-oss-20b."}]
}
],
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")