HiAPI
Blog

Tutorial

Qwen Image 2.0 and 2.0 Pro API: Prices, Real Outputs, Code

Both Qwen Image 2.0 tiers in one guide: bilingual text tests, product shots, the fixed size values, and how 2.0 compares with 2.1 and 3.0.

Jul 7, 2026 8
Qwen Image 2.0 and 2.0 Pro API: Prices, Real Outputs, Code
2.0 / image
$0.0422
2.0 Pro / image
$0.107
Sizes
5 fixed

TL;DR

  • Qwen Image 2.0 is Alibaba's text-to-image model, strong at Chinese and English text inside the picture. On HiAPI there are two tiers: qwen-image-2.0 at $0.0422 per image and qwen-image-2.0-pro at $0.107.
  • Both take the same request: prompt plus one of five fixed size values. There's no aspect_ratio field and no image input.
  • If you're starting a new project, look at the newer versions first: Qwen Image 3.0 is $0.0358 per image and 2.1 Turbo is $0.02, both cheaper than 2.0 and both accept reference images. The comparison is at the end. Open the Qwen Image 2.0 Pro model page to try it; new accounts get 200 free credits.

2.0 or 2.0 Pro

qwen-image-2.0 qwen-image-2.0-pro
Price per image $0.0422 $0.107
Input prompt + size same
Sizes 5 fixed values, up to 2688×1536 same
Reference images No No
Good for Drafts, bilingual posters, signs Final product shots and banners

Live HiAPI prices, checked October 20, 2026. Failed tasks aren't charged.

The request is identical, so switching tier means changing one word in model. Write and test the prompt on 2.0, then render the final on Pro with the same seed.

Real outputs

Bilingual sign (2.0)

A small Tokyo-style ramen shop at night, photoreal, soft drizzle on the pavement, warm interior light spilling out, customers visible through a frosted window. Above the door, a hand-painted wooden sign with two clean lines of text: the top line in large Chinese characters reads "幸福拉面", the bottom line in smaller English reads "Lucky Noodles · Since 2019". A small red paper lantern hangs to the left. 35mm street photography, shallow depth of field, cinematic colour grade.

Generate with this prompt →

qwen-image-2.0, size 1728*2368, $0.0422 at today's price.

Both lines on the sign match the prompt, including the middle dot. The lantern, which the prompt didn't give any text, picked up a few stray characters. Check every small surface before you ship an image with text.

Poster with three text blocks (2.0)

A modern minimalist promotional poster for a specialty coffee shop, cream background with a subtle paper grain. Centred composition: Top half: a large flat-illustration espresso cup with steam, terracotta-and-cream palette. Middle: large bilingual headline. Chinese line on top reads "夏日新品", English line directly below reads "SUMMER MENU 2026". Both lines are perfectly centred. Lower third: a short body line in smaller Chinese reads "全场买二赠一", and an English line beneath reads "Buy two, get one free". Bottom footer: a single small line of English reads "Through August 31". Clean geometric sans-serif typography, generous whitespace, magazine-quality layout.

Generate with this prompt →

qwen-image-2.0, size 1728*2368, $0.0422 at today's price.

All five strings are there and spelled right. The headline broke "SUMMER MENU 2026" across two lines, which the prompt didn't ask for.

Product hero shot (2.0 Pro)

Studio product photograph of a single amber glass skincare dropper bottle with a blank matte white label, standing centered on a round travertine stone pedestal, seamless warm off-white studio background, soft diffused key light from the upper left, a subtle soft shadow falling to the right, hyper-detailed macro texture on the glass and brushed-metal dropper cap, photorealistic, catalog-ready e-commerce hero shot, no text, no logos, no props

Generate with this prompt →

qwen-image-2.0-pro, size 2048*2048, $0.107.

Leave product labels blank and add the label text afterwards. Small type on a small curved surface is the hardest place for any model to get letters right, and a blank label is easier to update when the copy changes.

Sale banner (2.0 Pro)

Flat-lay e-commerce promo banner photograph: three amber glass skincare dropper bottles arranged diagonally on a warm terracotta backdrop with dried eucalyptus sprigs, soft overhead studio lighting with gentle shadows, in the upper right corner bold clean white sans-serif text reading SUMMER GLOW SALE, directly beneath it smaller white text reading SAVE 20% TODAY, no other text anywhere, photorealistic commercial photography, sharp focus

Generate with this prompt →

qwen-image-2.0-pro, size 2688*1536, $0.107.

The copy and its position match the prompt. This one came back with a thin black band along the bottom edge, so plan to crop banners before you publish them.

curl

curl -s -X POST https://api.hiapi.ai/v1/tasks \
  -H "Authorization: Bearer $HIAPI_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "qwen-image-2.0-pro",
    "input": {
      "prompt": "A storefront window sign that reads \"GRAND OPENING\" in bold red letters, photorealistic, golden-hour light",
      "size": "2688*1536",
      "seed": 42
    }
  }'

You get a taskId back. Poll GET https://api.hiapi.ai/v1/tasks/{taskId} until data.status is success, then download data.output[0].url. The link expires about 7 days after the task finishes, so save the file.

Python: one prompt, both tiers

# pip install requests; export HIAPI_KEY=your-key first
import os, time, requests

API = "https://api.hiapi.ai/v1/tasks"
H = {"Authorization": f"Bearer {os.environ['HIAPI_KEY']}"}

def generate(model, timeout_s=300, **inp):
    r = requests.post(API, json={"model": model, "input": inp}, headers=H, timeout=30).json()
    if r.get("code") != 200:
        raise RuntimeError(r)  # a 400 names every invalid field
    task_id = r["data"]["taskId"]
    deadline = time.time() + timeout_s
    while time.time() < deadline:
        d = requests.get(f"{API}/{task_id}", headers=H, timeout=30).json()["data"]
        if d["status"] == "success":
            return d["output"][0]["url"]
        if d["status"] == "fail":
            raise RuntimeError(d.get("error"))
        time.sleep(4)
    raise TimeoutError(task_id)

prompt = 'A bakery chalkboard that reads "FRESH BREAD" in white chalk, morning light'
draft = generate("qwen-image-2.0", prompt=prompt, size="2048*2048", seed=7)
final = generate("qwen-image-2.0-pro", prompt=prompt, size="2048*2048", seed=7)

for name, url in [("draft.png", draft), ("final.png", final)]:
    with open(name, "wb") as f:
        f.write(requests.get(url, timeout=120).content)

Parameters

Field Required Values Notes
prompt Yes text Put the exact text you want in quotes
size No 2688*1536, 2368*1728, 2048*2048 (default), 1728*2368, 1536*2688 Uses *, not x
negative_prompt No text What to avoid
seed No 0–2147483647 Same seed and prompt give a stable starting point across tiers
prompt_extend No true (default) / false Turn off when the wording must stay exactly as written
watermark No false (default) / true

The five sizes are roughly 16:9, 4:3, 1:1, 3:4 and 9:16. For 21:9 or 4:5, render the nearest size and crop.

Errors you'll hit

All of these return HTTP 400 when you submit, so nothing is created or billed:

  • size: value must be one of '2688*1536', ...: you sent 2048x2048 or a custom size. Use one of the five values with *.
  • additional properties 'aspect_ratio' not allowed: 2.0 uses size. Qwen Image 3.0 and 2.1 use aspect_ratio instead.
  • additional properties 'image_urls' not allowed: 2.0 can't take a reference image. Use 2.1 or 3.0 for editing.
  • additional properties 'n' not allowed: one task makes one image. Submit several tasks in parallel.

Qwen Image 2.0, 2.1 or 3.0

Model Price per image Reference images Size control
qwen-image-2.1-turbo $0.02 1–10, optional aspect_ratio (5 values)
qwen-image-3.0/text-to-image $0.0358 Separate image-to-image endpoint, 1–3 aspect_ratio (8 values) + resolution 1K/2K
qwen-image-2.0 $0.0422 No size (5 values)
qwen-image-2.1-pro $0.05 1–10, optional aspect_ratio (5 values)
qwen-image-3.0-pro/text-to-image $0.0497 (1K) / $0.0993 (2K) Separate image-to-image endpoint, 1–3 aspect_ratio (8 values) + resolution
qwen-image-2.0-pro $0.107 No size (5 values)
  • Already running 2.0 in production: nothing breaks; it's still available. Switching to 3.0 costs less, but you'll need to replace size with aspect_ratio and resolution.
  • New project: start on Qwen Image 3.0 or 2.1 Turbo. They're cheaper, and they can edit an existing image.
  • Highest-quality Qwen output: 3.0 Pro at 1K is under half the price of 2.0 Pro.

Usage for 3.0 is in the Qwen Image 3.0 API guide.

FAQ

Can Qwen Image 2.0 edit an existing image?

No. Neither 2.0 tier accepts an image. Qwen Image 3.0 has an image-to-image endpoint, and 2.1 Pro and Turbo accept up to 10 reference images in the same request.

Does it render Chinese text?

Yes, that's its strength. In the examples above, every Chinese and English string we asked for came out spelled correctly. Unrequested text, such as the lantern on the ramen shop, can still appear as stray characters.

How do I get the same image again?

Pass the same seed, prompt and size. That also lets you move a prompt from 2.0 to Pro and keep a similar layout.

Why is 2.0 more expensive than 3.0?

Each model has its own price. At today's prices, 3.0 is $0.0358 per image and 2.0 is $0.0422. If price matters, compare the two on your own prompts before you commit.

To try a prompt without code, open the Qwen Image 2.0 model page.

Related articles

View all articles →

Start building with persistent AI artifacts

Get your API key and call image, video and audio models through one task-based API.

Read the API docs