OpenAI’s o3 model page lists API prices of $2.00 per 1 million uncached input tokens, $0.50 per 1 million cached input tokens, and $8.00 per 1 million output tokens. It also lists lower Batch rates. Prices below are in U.S. dollars. I checked the documentation on November 12, 2026; the pages reviewed do not state a pricing effective date. These are API charges, not ChatGPT subscription prices. (o3 model documentation; ChatGPT and API billing)
OpenAI o3 API prices
| Usage category | Standard API | Batch API |
|---|---|---|
| Uncached input | $2.00 / 1M tokens | $1.00 / 1M tokens |
| Cached input | $0.50 / 1M tokens | $0.25 / 1M tokens |
| Output | $8.00 / 1M tokens | $4.00 / 1M tokens |
The o3 model page lists the standard and Batch rates. Count each input token in only one category: uncached or cached. If you know total input and cached input, calculate uncached input = total input − cached input.
Batch is asynchronous, not for requests that need an immediate response. OpenAI documents a 24-hour completion window; use its lower rates in a budget only for work that can tolerate that workflow. The o3 documentation lists Batch, but check the current model reference and your API access before relying on it. (Batch API guide)
How to calculate an o3 API request
There is no fixed price per request. Multiply each token category by its applicable rate, add the charges, and divide by 1 million:
uncached input tokens = total input tokens − cached input tokens
cost = (uncached input tokens × input rate
+ cached input tokens × cached-input rate
+ output tokens × output rate) ÷ 1,000,000
Example: standard API, no cached input
Suppose a request uses 5,000 input tokens, none cached, and 4,000 output tokens:
- Input: 5,000 × $2.00 ÷ 1,000,000 = $0.010
- Output: 4,000 × $8.00 ÷ 1,000,000 = $0.032
- Estimated total: $0.042
Example: standard API with cached input
Suppose those 5,000 input tokens include 4,000 cached tokens, leaving 1,000 uncached tokens, and the request uses 4,000 output tokens:
- Uncached input: 1,000 × $2.00 ÷ 1,000,000 = $0.002
- Cached input: 4,000 × $0.50 ÷ 1,000,000 = $0.002
- Output: 4,000 × $8.00 ÷ 1,000,000 = $0.032
- Estimated total: $0.036
Example: Batch rates
For 5,000 input tokens and 4,000 output tokens, assuming no cached input:
- Input: 5,000 × $1.00 ÷ 1,000,000 = $0.005
- Output: 4,000 × $4.00 ÷ 1,000,000 = $0.016
- Estimated total: $0.021
This is a rate calculation, not a promise that a particular job will complete immediately. Batch is intended for asynchronous work, with a documented 24-hour completion window.
Include reasoning tokens in your output estimate
OpenAI says reasoning tokens count toward output usage and are billed as output tokens, even though they are not visible as answer text. A short displayed answer can therefore involve more billable output tokens than its visible length suggests. Use API usage counts rather than estimating output cost from answer length alone. (OpenAI token documentation)
For a monthly estimate, multiply each category’s expected token count by its rate and divide by 1 million. For example, 10 million uncached input tokens and 2 million output tokens at standard rates calculate to $36: (10 × $2) + (2 × $8). At listed Batch rates, the same token counts calculate to $18, if Batch is available for the model and the work can meet its asynchronous processing conditions. Actual spending depends on cached input and actual token usage.
Is o3 still suitable for a production budget?
The OpenAI o3 model page lists both o3 and o3-2025-04-16 as deprecated. It also lists Chat Completions, Responses, and Batch among o3’s endpoints. The page identifies o3 as an alias, but the documentation reviewed here does not establish the alias-to-snapshot mapping or state an o3 shutdown date. Do not assume that the deprecated snapshot’s status alone tells you how long calls using o3 will remain available. (o3 model documentation)
OpenAI’s deprecations guide says to check the model’s optional shutdown_date through the List models endpoint (GET /v1/models); the value can be a date or null if no shutdown date has been announced. Check the identifier your application actually uses and confirm access in your organization’s API environment before making a production budget or availability decision. (OpenAI API deprecations)
Does o3 API pricing include ChatGPT?
No. ChatGPT and the API platform have separate billing systems. The token rates above apply to API usage; they do not set the price of a ChatGPT plan. (OpenAI billing documentation)
Budgeting checklist
- Use the standard or Batch rate that matches the processing option you will actually use; Batch is for asynchronous work with a documented 24-hour completion window.
- Split total input into uncached input and cached input so no tokens are counted twice.
- Include reasoning tokens in output usage, even when they are not visible in the response.
- Refine estimates with actual API usage. OpenAI says usage can be reviewed in the dashboard and in API response usage information. (API usage documentation)
- Before relying on o3 in production, check the status and
shutdown_datefor the model identifier your application uses, and verify access in your organization’s environment.
Sources
Understanding and counting tokens
