# Which model is better for analysing an image?

**URL:** <https://community.openai.com/t/which-model-is-better-for-analysing-an-image/1146012>\
**Category:** API\
**Tags:** gpt-4, gpt-4o-mini, o3-mini\
**Created:** [March 18, 2025, 9:44am UTC](https://community.openai.com/t/which-model-is-better-for-analysing-an-image/1146012 "2025-03-18T09:44:38Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![wolfmens23](https://sea2.discourse-cdn.com/openai1/user_avatar/community.openai.com/wolfmens23/32/499900_2.png) [@wolfmens23](https://community.openai.com/u/wolfmens23)\
**Post date:** [March 18, 2025, 9:44am UTC](https://community.openai.com/t/which-model-is-better-for-analysing-an-image/1146012/1 "2025-03-18T09:44:38Z")

</div>

I’m making an image analysis application and I can’t find information on the Internet which model is better able to handle image analysis, what do you recommend? choose between gpt-4o, gpt-4o-mini, o3-mini, o1-mini

---

<div class="post-metadata">

**Author:** ![\_j](https://sea2.discourse-cdn.com/openai1/user_avatar/community.openai.com/_j/32/766292_2.png) [@\_j](https://community.openai.com/u/_j)\
**Post date:** [March 18, 2025, 11:01am UTC](https://community.openai.com/t/which-model-is-better-for-analysing-an-image/1146012/2 "2025-03-18T11:01:54Z")

</div>

I revised your message…

“I made an image analysis on my application comparing models because I couldn’t find information on the Internet. Here’s what I recommend for my particular use-case and desired output, which may be significantly different than model performance on yours.”

A small effort and you’d find the effect of:

> [“o1-mini-2024-09-12 does not support attachments.”, “o3-mini does not support attachments.”]:

which is  
`{'error': {'message': 'Invalid content type. image_url is only supported by certain models.', 'type': 'invalid_request_error', 'param': 'messages.[3].content.[2].type', 'code': None}}`

A little more investigation and the discovery is that gpt-4o-mini actually costs twice as much in dollars per image than gpt-4o at current pricing (and intentional multiplication of billed tokens).

Leaving one answer from your choices.

---

<div class="post-metadata">

**Author:** ![wolfmens23](https://sea2.discourse-cdn.com/openai1/user_avatar/community.openai.com/wolfmens23/32/499900_2.png) [@wolfmens23](https://community.openai.com/u/wolfmens23)\
**Post date:** [March 19, 2025, 7:09am UTC](https://community.openai.com/t/which-model-is-better-for-analysing-an-image/1146012/3 "2025-03-19T07:09:21Z")

</div>

It’s strange, I’ve watched various reviews where the o1 mini and o3 mini models were used in image analysis. How did they do it then?

---

<div class="post-metadata">

**Author:** ![\_j](https://sea2.discourse-cdn.com/openai1/user_avatar/community.openai.com/_j/32/766292_2.png) [@\_j](https://community.openai.com/u/_j)\
**Post date:** [March 19, 2025, 7:49am UTC](https://community.openai.com/t/which-model-is-better-for-analysing-an-image/1146012/4 "2025-03-19T07:49:15Z")

</div>

```markdown
--- Testing gpt-4o
The image is a random multicolored static pattern, similar to television static. It consists of numerous small squares in a wide variety of colors, creating a pixelated and noisy appearance.
CompletionUsage(completion_tokens=38, prompt_tokens=94, total_tokens=132, completion_tokens_details=CompletionTokensDetails(accepted_prediction_tokens=0, audio_tokens=0, reasoning_tokens=0, rejected_prediction_tokens=0), prompt_tokens_details=PromptTokensDetails(audio_tokens=0, cached_tokens=0))

```

```markdown
--- Testing o1-mini
Traceback (most recent call last):

openai.BadRequestError: Error code: 400 - {'error': {'message': 'Invalid content type. image_url is only supported by certain models.', 'type': 'invalid_request_error', 'param': 'messages.[0].content.[1].type', 'code': None}}

```

```markdown
--- Testing o3-mini
Traceback (most recent call last):
openai.BadRequestError: Error code: 400 - {'error': {'message': 'Invalid content type. image_url is only supported by certain models.', 'type': 'invalid_request_error', 'param': 'messages.[0].content.[1].type', 'code': None}}

```

On the new Responses API, you are allowed to not read nor believe me and waste your money if you want:

```markdown
--- Testing o3-mini
Assistant: {"response_to_user": "I don't seem to have received an image. Could you please try attaching the image again?"}

```
