Skip to main content
Kyma serves sixteen image-generation models behind a single async endpoint. Pick the right model for the output you need; the API shape is identical across all of them.
The endpoint is asynchronous. POST returns 202 with a job_id immediately; poll GET /v1/jobs/{job_id} until status is succeeded.

Pick a model

Prices reflect Kyma’s 1.35× markup on the underlying provider cost. See pricing, or GET /v1/pricing for the live canonical source.

recraft-v4

Top of HuggingFace Text-to-Image Arena (#1) — beats Midjourney V8, DALL-E 3, and FLUX in human preference evaluation. Design-aware composition, lighting, and material rendering. Same price as the previous Recraft V3 default.
  • Cost: $0.054 per image
  • Aspect ratios: 1:1, 16:9, 9:16, 4:3, 3:4, 21:9
  • n: up to 4 images per request
  • Best for: brand illustration, marketing visuals, design-quality default

recraft-v4-pro

Recraft V4 at 4 megapixels for print-ready or large-scale assets — same design taste as V4 standard, higher resolution.
  • Cost: $0.338 per image
  • Output: up to 4 megapixels
  • Best for: print, posters, hero campaign visuals, large displays

recraft-v4-vector

Native SVG output — actual paths and structured layers, editable in Figma, Illustrator, or any vector editor. The only generation model on the market shipping true vector files (every other model rasterises and lies about it).
  • Cost: $0.108 per image
  • Output: SVG file (Content-Type: image/svg+xml)
  • Best for: logos, icons, illustration sets, brand systems that need to scale

recraft-v4-vector-pro

Native SVG at 4 megapixels — for print-ready vectors with finer detail and richer composition.
  • Cost: $0.405 per image
  • Output: SVG file
  • Best for: print-ready logos, packaging illustrations, large-scale signage

flux-2-pro

BFL’s 32B flagship released November 2025 — 3× larger than Flux 1.1, wins ~2/3 of blind comparisons against the prior generation, ~60% accurate text-in-image. Unifies generation and editing in one model. Single-reference (image-to-image edit):
Multi-reference blend (up to 10 sources, FLUX.2 Pro’s signature feature):
The first 6 reference images receive high-fidelity processing; references 7–10 act as supplementary composition guides. Beyond 10 returns 400 too_many_references. Text-only is also fully supported — no reference required.
  • Cost: per megapixel of output, rounded to nearest whole MP. 0.03forthefirstMP+0.03** for the first MP + **0.015 per extra MP, then × 1.35 markup.
    • 1024×1024 → 1 MP → $0.041
    • 1920×1080 → 2 MP → $0.061
    • 2048×2048 → 4 MP → $0.101
  • Best for: photorealism, multi-source blending, hero shots, unified gen/edit workflows

flux-kontext-pro

Image-to-image editor. Takes an existing image plus a text instruction; returns a modified image. Use for inpainting, prop swaps, background changes, refinement.
  • Cost: $0.054 per image
  • Requires: image_url (HTTPS URL to the source image). A request without image_url returns 400 image_url_required.

ideogram-v3

Text-in-image specialist. Best model on Kyma for typography, packaging mockups, posters, and logos where readable, accurate text matters.
  • Cost: $0.108 per image
  • Strengths: legible text, brand-safe layouts, packaging design

flux-1.1-ultra

Legacy. Kept for backward compatibility with existing API integrations. New projects should use flux-2-pro — cheaper at 1MP, higher quality, supports multi-reference.
  • Cost: $0.081 per image (flat)
  • Status: existing API contracts continue to work; not recommended for new code.

recraft-v3

Legacy. Kept for backward compatibility. Use recraft-v4 for new projects — same price, top of the HF Arena leaderboard.
  • Cost: $0.054 per image
  • Status: existing API contracts continue to work; not recommended for new code.

Billing flow

  1. POST creates a job and places a hold for estimated_cost (price × n images, markup applied; or per-MP estimate for FLUX.2 Pro based on requested size).
  2. On succeeded, the hold is finalized as a usage transaction at the actual cost. For FLUX.2 Pro, the actual cost reflects the true output dimensions returned by the provider.
  3. On failed or expired, the hold is fully refunded — you only pay for images you receive.
You can verify the charge on GET /v1/jobs/{id}: charged_amount is the final billed amount, estimated_cost is what was held up front.

Idempotency

Pass idempotency_key to make POST safe to retry. The same (user_id, idempotency_key) pair always returns the same job — no duplicate charges, no duplicate generations.

See also