dall-e-3 — Deprecated
- Deprecated
- —
- Shutdown
- 2026-05-12
- Status
- deprecated
- Replacement
- gpt-image-1
Action required
Production code calling dall-e-3 will return errors after 2026-05-12.
Quick fix — copy & paste
Choose your language. The "before" block matches the deprecated call; the "after" block is the drop-in replacement.
image = client.images.generate(
model="dall-e-3",
prompt="A futuristic cityscape at sunset",
size="1024x1024",
quality="standard",
n=1,
) image = client.images.generate(
model="gpt-image-1",
prompt="A futuristic cityscape at sunset",
size="1024x1024",
quality="high",
n=1,
) const image = await openai.images.generate({
model: "dall-e-3",
prompt: "A futuristic cityscape at sunset",
size: "1024x1024",
quality: "standard",
n: 1,
}); const image = await openai.images.generate({
model: "gpt-image-1",
prompt: "A futuristic cityscape at sunset",
size: "1024x1024",
quality: "high",
n: 1,
}); "model": "dall-e-3", "quality": "standard" "model": "gpt-image-1", "quality": "high" Error messages
Seeing one of these? You're in the right place.
-
model_not_found: dall-e-3 -
DALL-E 3 has been deprecated -
The model `dall-e-3` does not exist
Replacement options
-
gpt-image-1Compare token cost → -
gpt-image-1-miniCompare token cost →
Other OpenAI deprecations
What this means for your code
dall-e-3 is an image-generation model called through the images endpoint. Image generation models often change their quality enums, default response format (URL vs base64), supported sizes, and per-image pricing between versions. Migration is rarely a clean string swap.
OpenAI has scheduled dall-e-3 for shutdown on 2026-05-12. That gives you 4 days to migrate. Until then the model still works, but every API call after that date will return a model_not_found error.
Find every call in your codebase
Before you change anything, locate every place the deprecated model id is referenced. Search source files, environment files, feature flags, and config repos. Use these commands from your project root:
Python projects
grep -rn '"dall-e-3"' --include="*.py" . JavaScript / TypeScript projects
grep -rn '"dall-e-3"' --include="*.{js,ts,tsx,jsx}" . Anywhere (configs, scripts, infra)
grep -rn "dall-e-3" . Migration checklist
Steps in order. Skip any that don't apply, but read the whole list — for image gen models, the non-obvious steps are usually the ones that break in production.
- 1. Update the model id in image generation calls
- 2. Map the old quality enum (standard/hd) to the new model's enum (low/medium/high/auto)
- 3. Verify supported sizes — newer models may not support 256x256 or 512x512
- 4. Check response_format default — gpt-image-1 returns base64 by default while DALL-E returned URLs
- 5. Recompute per-image cost; some new models charge by tile count, not by image
Will this migration cost more?
Switching from dall-e-3 to gpt-image-1 could change your costs significantly. Calculate the exact difference for your prompts.
Open the cost calculator →