Alex Getmanearly AI signals

GPT-4.1

OpenAI

Released Updated
Context window
1M
1,047,576 tokens
Max output
33K
32,768 tokens
Input / Output
text, image → text

API pricing

USD / 1M tokens

InputOutputCached input
  • $2.00
openai-pricing
  • $8.00
openai-pricing
  • $0.50
openai-pricing

Timeline

  1. · API availability · evidence link · evidence link · evidence link
  2. · Product update · evidence link · evidence link
Input / output price · USD / 1M tokens
ModelEvidence linksInput / output price
gpt-4.1
batch
openai
API route unavailable
$1.00 / $4.00
gpt-4.1
fast
openai
API route unavailable
$3.50 / $14.00
gpt-4.1
standard
openai$2.00 / $8.00
openai/gpt-4.1
standard
openrouter$2.00 / $8.00
openai/gpt-4.1:batch
batch
openrouter$1.00 / $4.00
openai/gpt-4.1
standard
vercel-gateway$2.00 / $8.00
openai/gpt-4.1-batch
batch
vercel-gateway$1.00 / $4.00
  1. · Confirmed use · OpenAI · official articles · Introducing GPT-4.1 in the API
  2. · Evidence links · OpenAI · official articles
    Excerpt
    Introducing GPT‑4.1 in the API
  3. · Evidence links · OpenAI · official articles
  4. · Evidence links · OpenAI · official articles
  5. · Evidence links · OpenAI · official articles
    Excerpt
    On OpenAI-MRCR, a measure of long-context information retrieval, GPT‑5 outperforms o3 and GPT‑4.1, by a margin that grows substantially at longer input lengths
  6. · Evidence links · OpenAI · official articles
  7. · Catalogue listing · GitHub · openai/openai-node · code
    Excerpt
    s.openai.com/api/docs/models) for descriptions * of them. */ model?: | (string & {}) | 'gpt-5' | 'gpt-5-mini' | 'gpt-5-nano' | 'gpt-5-2025-08-07' | 'gpt-5-mini-2025-08-07' | 'gpt-5-nano-2025-08-07' | 'gpt-4.1' | 'gpt-4.1-mini' | 'gpt-4.1-nano' | 'gpt-4.1-2025-04-14' | 'gpt-4.1-mini-2025-04-14' | 'gpt-4.1-nano-2025-04-14' | 'o3-mini' | 'o3-mini-2025-01-31' | 'o1' | 'o1-2024-12-17' | 'gpt-4o' | 'gpt-4o-2024-11-20' | 'gpt-4o-2024-08-06' | 'gpt-4o-2024-05-13' | 'gpt-4o-mini' | 'gpt-4o-mini-2024-07-18' | 'gpt-4.5-preview' | 'gpt-4.5-preview-2025-02-27' | 'gpt-4-turbo' | 'gpt-4-turbo-2024-04-09' | 'gpt-4-0125-preview' | 'gpt-4-turbo-preview' | 'gpt-4-1106-preview' | 'gpt-4-vision-preview' | 'gpt-4' | 'gpt-4-0314' | 'gpt-4-0613' | 'gpt-4
  8. · Catalogue listing · GitHub · openai/openai-agents-python · code
    Excerpt
    dels import get_default_model from ...models.interface import Model, ModelProvider from .litellm_model import LitellmModel # This is kept for backward compatibility but using get_default_model() method is recommended. DEFAULT_MODEL: str = "gpt-4.1" class LitellmProvider(ModelProvider): """A ModelProvider that uses LiteLLM to route to any model provider. You can use it via: ```python Runner.run(agent, input, run_config=RunConfig(model_provider=LitellmProvider())) ``` See supported models here: [litellm models](https://docs.litellm.ai/docs/providers). NOTE: API keys must be set via environment variables. If you're using models that require additional configuration (e.g. Azure API base or version), those must also be set via the environment variables that LiteLLM expects. If you have more advanced needs, we recommend copy-pasting this clas
  9. · Catalogue listing · GitHub · openai/codex · code
    Excerpt
    ror> { let mode = if PARSE_IN_STRICT_MODE { ParseMode::Strict } else { ParseMode::Lenient }; parse_patch_text(patch, mode) } enum ParseMode { /// Parse the patch text argument as is. Strict, /// GPT-4.1 is known to formulate the `command` array for the `local_shell` /// tool call for `apply_patch` call using something like the following: /// /// ```json /// [ /// "apply_patch", /// "<<'EOF'\n*** Begin Patch\n*** Update File: README.md\n@@...\n*** End Patch\nEOF\n", /// ] /// ``` /// /// This is a problem because `local_shell` is a bit of a misnomer: the /// `command` is not invoked by passing the arguments to a shell like Bash, /// but are invoked using something akin to `execvpe(3)`. /// /// This is significant in this case because where a shell would interpret /// `

    This code reference does not establish a working model identifier.

  10. · Catalogue listing · GitHub · openai/codex · code
    Excerpt
    ror> { let mode = if PARSE_IN_STRICT_MODE { ParseMode::Strict } else { ParseMode::Lenient }; parse_patch_text(patch, mode) } enum ParseMode { /// Parse the patch text argument as is. Strict, /// GPT-4.1 is known to formulate the `command` array for the `local_shell` /// tool call for `apply_patch` call using something like the following: /// /// ```json /// [ /// "apply_patch", /// "<<'EOF'\n*** Begin Patch\n*** Update File: README.md\n@@...\n*** End Patch\nEOF\n", /// ] /// ``` /// /// This is a problem because `local_shell` is a bit of a misnomer: the /// `command` is not invoked by passing the arguments to a shell like Bash, /// but are invoked using something akin to `execvpe(3)`. /// /// This is significant in this case because where a shell would interpret /// `

    This code reference does not establish a working model identifier.

  11. · Catalogue listing · GitHub · openai/openai-agents-python · code
    Excerpt
    `openai/...` と `any-llm/...` のモデル名を混在させる場合は、[`MultiProvider`][agents.MultiProvider] を使用し、そこで `openai_use_responses_websocket=True` を設定します。 `MultiProvider` には、従来からの次の 2 つのデフォルト動作があります。 - `openai/...` は OpenAI プロバイダーのエイリアスとして扱われるため、`openai/gpt-4.1` はモデル `gpt-4.1` としてルーティングされます。 - 不明なプレフィックスはそのまま渡されず、`UserError` が発生します。 リテラルの名前空間付きモデル ID を要求する OpenAI 互換エンドポイントを OpenAI プロバイダーで使用する場合は、パススルー動作を明示的に有効にしてください。WebSocket が有効な設定では、`MultiProvider` にも `openai_use_responses_websocket=True` を維持してください。 ```python from agents import Agent, MultiProvider, RunConfig, Runner provider = MultiProvider( openai_base_url="https://openrouter.ai/api/v1", openai_api_key="...", openai_use_responses_websocket=True, openai_prefix_mode="model_id", unknown_prefix_mode="model_id", ) agent = Agent( name="Assistant", instructions="Be concise.", model="openai/gpt-4.1", ) re

    This code reference does not establish a working model identifier.

  12. · Catalogue listing · GitHub · openai/openai-python · code
    Excerpt
    1-chat-latest", "gpt-5", "gpt-5-mini", "gpt-5-nano", "gpt-5-2025-08-07", "gpt-5-mini-2025-08-07", "gpt-5-nano-2025-08-07", "gpt-5-chat-latest", "gpt-4.1", "gpt-4.1-mini", "gpt-4.1-nano", "gpt-4.1-2025-04-14", "gpt-4.1-mini-2025-04-14", "gpt-4.1-nano-2025-04-14", "o4-mini", "o4-mini-2025-04-16", "o3", "o3-2025-04-16", "o3-mini", "o3-mini-2025-01-31", "o1", "o1-2024-12-17", "o1-preview", "o1-preview-2024-09-12", "o1-mini", "o1-mini-2024-09-12", "gpt-4o", "gpt-4o-2024-11-20", "gpt-4o-2024-08-06", "gpt-4o-2024-05-13", "gpt-aud
  13. · Catalogue listing · GitHub · openai/openai-agents-js · code
    Excerpt
    _WINDOWS_1M = new Set([ 'gpt-6-astra', 'gpt-6-sol', 'gpt-6-luna', 'gpt-6.1-sol', 'gpt-5.6', 'gpt-5.6-sol', 'gpt-5.6-terra', 'gpt-5.6-luna', 'gpt-5.4', 'gpt-5.4-2026-03-05', 'gpt-5.4-pro', 'gpt-5.4-pro-2026-03-05', 'gpt-4.1', 'gpt-4.1-2025-04-14', 'gpt-4.1-mini', 'gpt-4.1-mini-2025-04-14', 'gpt-4.1-nano', 'gpt-4.1-nano-2025-04-14', ]); const SANDBOX_CONTEXT_WINDOWS_400K = new Set([ 'gpt-5', 'gpt-5-codex', 'gpt-5-mini', 'gpt-5-nano', 'gpt-5-pro', 'gpt-5.1', 'gpt-5.1-codex', 'gpt-5.1-codex-max', 'gpt-5.1-codex-mini', 'gpt-5.2', 'gpt-5.2-codex', 'gpt-5.2-codex-cyber', 'gpt-5.2-pro', 'gpt-5.3-codex', 'gpt-5.3-codex-spark', 'gpt-5.4-mini', 'gpt-5.4-nano', ]); const SANDBOX_CONTEXT_WINDOWS_200K = new Set([ 'codex-mini-latest', 'o1', 'o1-2024-12-17', 'o1-pro', 'o3', 'o3-2025-04-16', 'o3-mini', 'o3
  14. · Evidence links · OpenAI · Model release notes
    Excerpt
    Starting today, Plus, Pro, and Team users can access GPT-4.1 via the "more models" dropdown in the model picker
  15. · Evidence links · OpenAI · news
    Excerpt
    Introducing GPT-4.1 in the API—a new family of models with across-the-board improvements, including major gains in coding, instruction following, and long-context understanding
  16. · Evidence links · OpenAI · ChatGPT release notes
    Excerpt
    Starting today, Plus, Pro, and Team users can access GPT-4.1 via the "more models" dropdown in the model picker

Signals 1

Specifications

GPT-4.1 is a model from OpenAI, released on 14 Apr 2025. The context window is 1,047,576 tokens. The maximum output is 32,768 tokens. Pricing is $2.00 per million input tokens and $8.00 per million output tokens.

Context window
1,047,576
Max output
32,768
Input
text · image
Output
text
Input · USD / 1M tokens
$2.00
Output · USD / 1M tokens
$8.00
Cached input · USD / 1M tokens
$0.50

Questions

What is the context window of GPT-4.1?

The context window is 1,047,576 tokens. The maximum output is 32,768 tokens.

How much does GPT-4.1 cost?

Pricing is $2.00 per million input tokens and $8.00 per million output tokens. Cached input is $0.50 per million.

When was GPT-4.1 released?

On 14 Apr 2025.