# Hermoso — exact per-render credit costs

> Generated from the running server on 2026-08-24 — do not edit by hand.
> A published snapshot is a convenience. The live catalog is the contract: call `hermoso_capabilities`
> (free, read-only, 0 credits) for the current ids and prices, and never hard-code a number from here.
> Plans, the per-credit rate and what a credit costs in money: https://hermoso.ai/pricing

Everything below is priced in **credits** — one pool covers research, image and video, on every plan.
Credits are deliberately not converted to dollars here: the per-credit rate differs by plan, so a dollar
figure would be wrong on three of the four. Reading and managing accounts you already own is free.

## Image models (25)

One credit figure per render, whatever the aspect ratio.

| Model | id | Credits / image | Notes |
| --- | --- | --- | --- |
| Nano Banana Pro | `nano-banana-pro` | 9 | Top quality — best at text, packaging & product fidelity |
| Nano Banana 2 | `nano-banana-2` | 5 | Fast + excellent text |
| GPT Image | `gpt-image` | 38 | Great at in-image text & instructions |
| FLUX1.1 Pro | `flux-pro` | 7 | Versatile, lifelike product & lifestyle |
| Recraft V3 | `recraft-v3` | 5 | Best for logos & in-image text |
| Stable Diffusion 3.5 | `sd-35` | 9 | Open, highly steerable |
| Seedream 4.0 | `seedream-4` | 2 | Current ByteDance flagship — up to 4K, sharp text |
| FLUX.2 [pro] | `flux-2-pro` | 5 | Newest FLUX — photoreal detail, cleaner text |
| Ideogram V4 | `ideogram-v4` | 2 | Typography king — posters, exact in-image text |
| Qwen-Image | `qwen-image` | 3 | Open flagship — strong text, very steerable |
| HiDream I1 | `hidream-i1` | 7 | Open 17B — sharp, photoreal, strong prompt-following |
| Luma Photon | `luma-photon` | 4 | Luma’s creative image model — great value |
| GPT Image 2 | `gpt-image-2` | 32 | Near-perfect Latin + CJK text, up to 4K |
| Seedream 5.0 Pro | `seedream-5-pro` | 9 | Newest flagship — native text in 14 languages, dense layouts |
| Seedream 5.0 Lite | `seedream-5-lite` | 3 | Current-gen quality at half price — the variation/fan-out tier |
| FLUX.2 [klein] | `flux-2-klein` | 2 | FLUX.2-gen realism + crisp text at draft price |
| Grok Imagine | `grok-imagine-image` | 7 | Highly aesthetic — a distinct stylistic lane |
| Reve 2.1 | `reve-2-1` | 32 | Strong typography + prompt adherence — very high native res |
| Bria HD | `bria-t2i-hd` | 5 | Commercially-safe — trained only on licensed data |
| Krea 2 Turbo | `krea-2-turbo` | 3 | Fast, cheap drafts — megapixel-billed |
| Ideogram v4 Fast | `ideogram-v4-fast` | 3 | Cheaper Ideogram — typography at draft speed |
| Seedream 4.5 | `seedream-4.5` | 5 | ByteDance 4.5 — up to 4K/6K, precise control + strong text |
| GPT Image Mini | `gpt-image-mini` | 5 | Cheapest GPT Image tier — quick text-in-image drafts |
| FLUX1.1 Ultra | `flux-pro-ultra` | 8 | FLUX 1.1 ultra — up to 4MP high-res realism |
| Nano Banana 2 Lite | `nano-banana-2-lite` | 3 | Cheapest, fastest Nano Banana — sub-2s edits |

## Video models (23)

Video is priced **per second of output and per resolution**, because both change what a render costs.
The table gives each model's available lengths and the credits for the shortest and longest of them at
the default resolution; every length in between is published by `hermoso_capabilities`.

| Model | id | Lengths (s) | Credits (shortest → longest) | Resolutions | Native audio |
| --- | --- | --- | --- | --- | --- |
| Seedance 2.5 | `seedance-2.5` | 4, 5, 6, 8, 10, 12, 15, 20, 25, 30 | 189 → 1398 | 1080p, 720p, 480p | yes |
| Seedance 2.0 | `seedance-2` | 5, 10, 15 | 154 → 458 | 720p, 1080p, 480p, 4k | yes |
| Gemini Omni | `omni` | 4, 6, 8, 10 | 42 → 103 | — | yes |
| Veo 3.1 | `veo-3.1` | 4, 6, 8 | 162 → 323 | — | yes |
| Veo 3.1 Fast | `veo-3.1-fast` | 4, 6, 8 | 41 → 81 | — | yes |
| Kling 3.0 | `kling-3` | 5, 10, 15 | 71 → 212 | — | yes |
| Kling 2.5 | `kling-2.5` | 5, 10 | 36 → 71 | — | no |
| Kling 2.1 | `kling-2.1` | 5, 10 | 141 → 282 | — | no |
| Seedance Lite | `seedance-lite` | 5, 10, 12 | 11 → 27 | 720p, 480p, 1080p | no |
| Hailuo 2.3 | `hailuo-2.3` | 6, 10 | 31 → 51 | — | no |
| PixVerse V6 | `pixverse-v6` | 5, 8, 10, 15 | 33 → 99 | 720p, 1080p, 540p, 360p | yes |
| Grok Imagine 1.5 | `grok-imagine` | 6, 10, 15 | 153 → 381 | 720p, 480p, 1080p | yes |
| Seedance 2.0 Fast | `seedance-2-fast` | 5, 10, 15 | 122 → 366 | 720p, 480p | yes |
| HappyHorse 1.1 | `happy-horse-1.1` | 5, 10, 15 | 71 → 212 | 720p, 1080p | yes |
| Wan 2.7 | `wan-2.7` | 5, 10, 15 | 51 → 152 | 720p, 1080p | yes |
| Marey | `marey-1.5` | 5, 10 | 152 → 303 | — | no |
| Veo 3.1 Lite | `veo-3.1-lite` | 4, 6, 8 | 21 → 41 | — | yes |
| Kling 2.6 | `kling-2.6` | 5, 10 | 71 → 141 | — | yes |
| Kling 3.0 Turbo | `kling-3-turbo` | 5, 10, 15 | 64 → 191 | — | yes |
| Kling O3 | `kling-o3` | 5, 10 | 71 → 141 | — | yes |
| Vidu Q3 | `vidu-q3` | 5, 10 | 78 → 156 | 720p, 1080p, 540p, 360p | no |
| Luma Ray 3.2 | `luma-ray` | 5 | 31 | 720p, 540p, 1080p | no |
| MiniMax H3 | `minimax-h3` | 5, 8, 10, 12, 15 | 31 → 91 | 1080p, 720p, 480p, 4k | yes |

Default video resolution: **1080p**. Higher resolutions cost more;
`hermoso_capabilities` returns the full per-resolution grid for every model.

## Post-production and other lanes

| Operation | Credits | Unit |
| --- | --- | --- |
| Edit an image | 9 | per edit |
| Edit a video (generative) | 121 | per edit |
| Reframe to another aspect ratio | 51 | per video |
| Upscale a video | 101 | per video |
| Dub into another language | 6 | per video |
| Swap the voice | 16 | per video |
| Clip a long video into short-form cuts | 7 | per clip |
| Narrated explainer (plain) | 31 | per film |
| Explainer music bed | 9 | per film |
| UGC avatar (lip-synced) | 15.3 | per second |

Styled explainer films are priced by length:

| Length (s) | Credits |
| --- | --- |
| 30 | 171 |
| 60 | 319 |
| 90 | 474 |

## What costs nothing

Reading and managing what you already own is free, on purpose — running out of research budget must not
take a whole marketing operation offline with it. Free: `hermoso_capabilities`, `hermoso_credits`,
`list_connectors`, `get_brand`, `list_jobs`, `list_brands`; publishing organically (`post_to_meta`,
`post_to_tiktok`, `post_to_youtube`, `post_to_linkedin_page`, `post_to_pinterest`, `post_to_reddit`);
scheduling; reading insights, replying to comments and pausing a campaign on your own accounts.

**One exception, stated up front:** X (Twitter) bills per API call, because X charges per request — so
every action there costs a few credits, including each post in a thread. Its connector tile says so
before you connect it.

## How a render is billed

A render **reserves** an estimate before the first provider call and **settles** the exact cost
afterwards, refunding or topping up the difference — so the quote and the charge are computed by the
same expression and cannot disagree. If a model is substituted mid-render you are billed for the model
that actually rendered, and the substitution is disclosed in the result. Nothing dispatched to a
provider means a full refund; a clean 4xx, a content-policy refusal or a timeout before any render
refunds in full. Full rules: https://hermoso.ai/docs/credits/
