GPTMap

GPT Image 2 Prompt Formulas and Commercial Use Boundaries

GPT Image 2 is the current primary image model (DALL·E 2/3 retired 2026-05-12). A 5-part prompt formula, natural vs vivid styles, Images API size/quality/n parameters, and a pre-publish Usage Policy checklist.

TL;DR
GPT Image 2 (released 2026-04-21) replaced DALL·E 2/3 as OpenAI's only image generation model. This article gives a 5-part prompt formula (subject / scene / light / style / composition), natural vs vivid styling, Images API size/quality/n parameters, and a Usage Policy checklist before commercial use.
GPT Image 2 is OpenAI's image generation model released 2026-04-21. DALL·E 2/3 were hard-retired 2026-05-12. GPT Image 2 is called via the gpt-image-2 model id and supports text-to-image, image editing (inpainting / outpainting), and multiple output sizes.

How to

  1. Write your first 5-part prompt

    Subject → scene/background → light → style → composition/camera; one or two keywords per part, no adjective pile-up.

  2. Call the Images API

    client.images.generate(model='gpt-image-2', prompt=..., size='1024x1024', quality='medium', style='natural', n=1); returns b64_json or url.

  3. Pick natural or vivid

    Product / realistic → natural. Marketing / concept / posters → vivid. When in doubt, natural.

  4. Do image editing (inpainting)

    Pass image (original PNG), mask (transparent region = what to change), prompt (describes new content); the model only redraws the masked area.

  5. Pre-commercial self-check

    Run the Usage Policy checklist: no celebrity/politician portraits, no medical imagery, no misleading imagery, no copyrighted reproduction; only then publish.

GPT Image 2 (released 2026-04-21) replaced DALL·E 2/3 as OpenAI's only image generation model. This article covers the prompt formula, style controls, API parameters, and a pre-publish Usage Policy checklist.

1. The 5-part prompt formula

Describe the picture you want in five parts:

[Subject]       who or what
[Scene / Background]  where
[Light]         how it's lit
[Style]         artistic style
[Composition / Camera]  how it's framed

Example 1 (product shot):

"A deep-blue ceramic coffee mug, on a wooden table, soft side light from a morning window, natural photography style, medium shot, shallow depth of field."

Example 2 (marketing poster):

"A young woman standing on a neon-lit city street, giant billboards in the background, rainy night with reflections, cyberpunk style, wide-angle lens, high contrast."

One or two keywords per part — no adjective pile-up. "Very extremely particularly beautiful" loses to "minimal, elegant".

2. natural vs vivid styles

StyleColorLightGood for
natural (default)Balanced, realisticNatural, restrainedProduct shots, portraits, landscapes, realistic scenes
vividBold, dramaticHigh contrast, theatricalMarketing posters, concept art, stylized illustration

When in doubt, pick natural — it won't go wrong. vivid can over-saturate.

3. Images API parameters

from openai import OpenAI

client = OpenAI()

result = client.images.generate(
    model="gpt-image-2",
    prompt="...",
    size="1024x1024",       # 1024x1024 / 1024x1792 / 1792x1024
    quality="medium",       # low / / medium / / high / auto
    style="natural",        # natural / vivid
    n=1,                    # images per call; 2-4 is usually right
)

image_bytes = result.data[0].b64_json  # or .url

Parameter picks:

  • size: square (1024×1024) is the social default; portrait (1024×1792) fits phone screens; landscape (1792×1024) for website banners
  • quality: auto lets the model decide; explicit usage → medium (social) or high (print / large display)
  • n: one call with n=4 is 4× cheaper than 4 calls — pricing is per call, not per image

4. Image editing (inpainting / outpainting)

Inpainting: pass original image + mask (transparent region = what to change) + prompt, the model only redraws the masked area.

from openai import OpenAI
import base64

client = OpenAI()

with open("original.png", "rb") as f:
    image_b64 = base64.b64encode(f.read()).decode()
with open("mask.png", "rb") as f:
    mask_b64 = base64.b64encode(f.read()).decode()

result = client.images.edit(
    model="gpt-image-2",
    image=image_b64,
    mask=mask_b64,
    prompt="a cat sitting on a chair",
    size="1024x1024",
)

Outpainting: extends the image beyond its current canvas — useful for turning a square into a banner, or adding borders.

Common uses: swap backgrounds, repair details, add elements, expand framing.

5. Commercial use boundaries (read the Usage Policy)

OpenAI allows commercial use of GPT Image 2 output, but with hard lines:

ProhibitedWhy
Celebrity / politician portraitsEven artistic ones are out
Medical diagnostic imageryNot for medical advice
Misleading imageryFake news photos, false evidence
Copyright material reproductionMimicking a living artist's style carries risk
Training competing modelsNot for training non-OpenAI image models

Pre-publish self-checklist:

  • Subject is not on a celebrity/politician list
  • No medical diagnostic implications
  • Clearly labeled "AI-generated" (some jurisdictions require it)
  • If mimicking a style, the original artist's work is still in copyright
  • Prompt has no misleading elements

6. Common errors and troubleshooting

  • Output doesn't match the prompt → prompt too abstract; rewrite with the 5-part formula
  • Hands / eyes / text look off → GPT Image 2 is significantly better than DALL·E 3, but rare edge cases happen; switch style to natural or retry with a new prompt
  • Style too over-the-top → switch style to natural or quality to medium
  • A generated portrait looks like a real person → don't publish; it usually means the prompt included a real name
  • Post-publish copyright warning → self-check the Usage Policy; if you mimicked a living artist's style, remove

7. What's Next

  • GPT Image 2 complete guide: text-to-image, editing, style control
  • OpenAI API Beginner: Your First GPT-5.6 Call Explained
  • Function Calling with the OpenAI API: A Complete Guide to Tool Use in the Responses API

Key points

  • 5-part prompt: subject → scene/background → light → style → composition/camera; the more specific, the better
  • natural style leans real photography, vivid style is more dramatic; default is natural
  • size controls output pixels (1024x1024 / 1024x1792 / 1792x1024); quality controls detail (low / medium / high / auto)
  • n controls images per call; n=4 in one call is 4× cheaper than 4 calls
  • Before commercial use, run the Usage Policy checklist: no celebrity portraits, medical diagnostic images, misleading imagery, or copyright material reproduction
  • Image editing (inpainting / outpainting) passes image + mask fields; the model redraws only the masked region

Frequently asked questions

GPT Image 2 is the successor to the DALL·E family — same lineage but significantly better: sharper text rendering, more reliable complex scenes, more natural faces. DALL·E 2/3 were hard-retired 2026-05-12 from the API, so GPT Image 2 is now the only choice. Migration is just a model id swap (dall-e-3 → gpt-image-2).

Official references

Related articles

Subscribe to GPTMap Weekly

One email every Monday: curated OpenAI updates, deep dives, and best practices. No ads, unsubscribe anytime.

GPTMap EditorialPublished 2026-08-07 4 min read
Test environment (EEAT)
Last tested: 2026-08-07
Model used: gpt-image-2