Ideogram AI Ideogram V3 Turbo

Ideogram AI Ideogram V3 Turbo

Playground

Try it on WaveSpeedAI!

Ideogram V3 Turbo produces the highest-quality Ideogram v3 images with photorealistic detail, creative designs, and consistent style. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.

Features

Generate stunning images with exceptional typography using Ideogram V3 Turbo. This versatile model excels at rendering text within images — perfect for posters, logos, marketing materials, and design work. With support for image editing, mask-based inpainting, and up to 3 reference images, it’s a complete creative toolkit.

Why It Looks Great

  • Superior typography: Industry-leading text rendering for posters, logos, and designs.
  • Multiple modes: Text-to-image generation, image editing, and masked inpainting.
  • Style presets: Choose from Auto, General, Realistic, or Design styles.
  • Reference images: Use up to 3 reference images to guide generation.
  • Mask support: Precise regional editing with custom masks.
  • Flexible aspect ratios: Five format options for any use case.
  • Safety Checker: Optional content filtering for appropriate output.

Parameters

ParameterRequiredDescription
promptYesText description of the image you want to generate.
imageNoSource image for editing (upload or public URL).
mask_imageNoMask to specify edit regions — white areas will be regenerated.
styleNoOutput style: Auto, General, Realistic, or Design. Default: Auto.
aspect_ratioNoOutput format: 1:1, 16:9, 9:16, 4:3, or 3:4. Default: 1:1.
reference_imagesNoUp to 3 reference images to guide style and composition.
enable_base64_outputNoAPI only: Returns base64 string instead of URL.
Enable Safety CheckerNoToggle content safety filtering.

How to Use

Text-to-Image Generation

  1. Write your prompt — describe the image including any text you want rendered.
  2. Choose style — select Auto, General, Realistic, or Design.
  3. Set aspect ratio — pick the format that fits your use case.
  4. Add reference images (optional) — click ”+ Add Item” to include style references.
  5. Run — click the button to generate.
  6. Download — preview and save your image.

Image Editing

  1. Upload source image — the image you want to edit.
  2. Upload mask (optional) — white areas indicate regions to regenerate.
  3. Write your prompt — describe the desired changes or new elements.
  4. Run — click the button to apply edits.

Pricing

Flat rate per image generation.

OutputCost
Per image$0.03

Style Guide

StyleDescriptionBest For
AutoAutomatically selects the best styleGeneral use, when unsure
GeneralBalanced, versatile outputWide range of subjects
RealisticPhotorealistic, natural appearancePhotos, portraits, products
DesignGraphic design aestheticPosters, logos, marketing materials

Best Use Cases

  • Typography & Posters — Create designs with perfectly rendered text and lettering.
  • Logo Design — Generate logo concepts with clean, readable text.
  • Marketing Materials — Produce banners, ads, and promotional graphics.
  • Social Media Graphics — Design eye-catching posts with integrated text.
  • Product Mockups — Visualize packaging and branded materials.

Example Prompts

  • “beautiful bauhaus stark typographic poster saying ‘Ideogram v3 turbo on WaveSpeedAI’, pink and yellow”
  • “minimalist logo design for a coffee shop called ‘Morning Brew’, earth tones, clean typography”
  • “movie poster for a sci-fi film titled ‘NEXUS’, dramatic lighting, futuristic cityscape”
  • “Instagram story template with text ‘SALE 50% OFF’, bold modern typography, gradient background”
  • “vintage travel poster for Tokyo, retro illustration style, Japanese text integration”

Reference Images Tips

Number of ReferencesBest Use Case
0Pure generation from prompt
1Match a specific style or composition
2-3Combine multiple style elements or ensure consistency

Pro Tips for Best Results

  • For typography, put the exact text in quotes within your prompt.
  • Use the Design style for graphic design work with text elements.
  • Realistic style works best for photographic content without heavy text.
  • Reference images help maintain consistency across multiple generations.
  • Use masks to selectively edit only specific areas of an image.
  • Describe typography style: “bold”, “minimalist”, “vintage”, “modern”, “serif”, “sans-serif”.

Notes

  • Ideogram is renowned for best-in-class text rendering in AI-generated images.
  • If using URLs for images, ensure they are publicly accessible.
  • The enable_base64_output option is only available through the API.
  • Enable Safety Checker for content that will be publicly shared.
  • Reference images (up to 3) help guide style without directly copying content.

Authentication

For authentication details, please refer to the Authentication Guide.

API Endpoints

Submit Task & Query Result

set -euo pipefail

export WAVESPEED_API_KEY="your-api-key"

REQUEST_BODY=$(cat <<'JSON'
{
  "prompt": "A cinematic ocean wave at sunrise, highly detailed",
  "style": "Auto",
  "aspect_ratio": "1:1"
}
JSON
)

# 1. Submit the prediction.
SUBMIT_RESPONSE=$(curl --silent --show-error --fail-with-body \
  -X POST "https://api.wavespeed.ai/api/v3/ideogram-ai/ideogram-v3-turbo" \
  -H "Authorization: Bearer ${WAVESPEED_API_KEY}" \
  -H "Content-Type: application/json" \
  -d "${REQUEST_BODY}")

TASK=$(printf '%s' "${SUBMIT_RESPONSE}" | jq 'if type == "object" and has("data") then .data else . end')
PREDICTION_ID=$(printf '%s' "${TASK}" | jq -r '.id // empty')
if [ -z "${PREDICTION_ID}" ]; then
  printf 'Submission response did not contain a prediction id
' >&2
  exit 1
fi
RESULT_URL=$(printf '%s' "${TASK}" | jq -r '.urls.get // empty')
if [ -z "${RESULT_URL}" ]; then RESULT_URL="https://api.wavespeed.ai/api/v3/predictions/${PREDICTION_ID}/result"; fi

# 2. Poll until the prediction finishes.
while true; do
  RESPONSE=$(curl --silent --show-error --fail-with-body \
    "${RESULT_URL}" \
    -H "Authorization: Bearer ${WAVESPEED_API_KEY}")
  RESULT=$(printf '%s' "${RESPONSE}" | jq 'if type == "object" and has("data") then .data else . end')
  STATUS=$(printf '%s' "${RESULT}" | jq -r '.status // empty')

  case "${STATUS}" in
    completed) printf '%s\n' "${RESULT}" | jq '.outputs'; break ;;
    failed|cancelled|timeout) printf '%s\n' "${RESULT}" | jq . >&2; exit 1 ;;
    created|processing) sleep 2 ;;
    *) printf 'Unexpected status: %s
' "${STATUS}" >&2; exit 1 ;;
  esac
done

Parameters

Task Submission Parameters

Request Parameters

ParameterTypeRequiredDefaultRangeDescription
promptstringYes-The positive prompt for the generation.
imagestringNo-The image to generate an image from.
mask_imagestringNo-The mask image tells the model where to generate new pixels (white) and where to preserve the original image (black). It acts as a stencil or guide for targeted image editing.
stylestringNoAutoAuto, General, Realistic, DesignThe style of the generated image.
aspect_ratiostringNo1:11:1, 16:9, 9:16, 4:3, 3:4The aspect ratio of the generated media.
reference_imagesarray<string>No-0 ~ 3 itemsA list of images to use as style references.
enable_base64_outputbooleanNofalse-If set to `true`, the prediction's `output` strings are returned as **naked base64** (no `data:<mime>;base64,` prefix). When `false` (default), outputs are returned as URLs pointing to our CDN.

Response Parameters

ParameterTypeDescription
codeintegerHTTP status code (e.g., 200 for success)
messagestringStatus message (e.g., “success”)
data.idstringUnique identifier for the prediction, Task Id
data.modelstringModel ID used for the prediction
data.outputsarrayOutput values, usually URL strings; some models return text strings or structured result objects (empty when status is not completed)
data.urlsobjectObject containing related API endpoints
data.urls.getstringURL to retrieve the prediction result
data.statusstringStatus of the task: created, processing, completed, or failed
data.created_atstringISO timestamp of when the request was created (e.g., “2023-04-01T12:34:56.789Z”)
data.errorstringError message (empty if no error occurred)
data.timingsobjectObject containing timing details
data.timings.inferenceintegerInference time in milliseconds

Result Request Parameters

ParameterTypeRequiredDefaultDescription
idstringYes-Task ID

Result Response Parameters

ParameterTypeDescription
codeintegerHTTP status code (e.g., 200 for success)
messagestringStatus message (e.g., “success”)
dataobjectThe prediction data object containing all details
data.idstringUnique identifier for the prediction
data.modelstringModel ID used for the prediction
data.outputsarray<string | object>Array of generated outputs (empty when status is not completed). Items are usually URL strings, but may be text strings or structured result objects, depending on the model.
data.urlsobjectObject containing related API endpoints
data.urls.getstringURL to poll for the prediction result
data.statusstringStatus: created, processing, completed, or failed
data.created_atstringISO timestamp of when the request was created
data.errorstringError message (empty if no error occurred)
data.timingsobjectObject containing timing details
data.timings.inferenceintegerInference time in milliseconds
© 2026 WaveSpeedAI. All rights reserved.