Ideogram Ai Ideogram Character
Playground
Try it on WavespeedAI!Ideogram Character creates consistent characters from one reference image, in many styles, and supports inpainting to place the character into existing images. Ready-to-use REST API, no coldstarts, affordable pricing.
Features
Ideogram Character
Edit and transform character images with Ideogram’s powerful AI. This specialized model excels at modifying outfits, appearances, and styles while maintaining character consistency and natural lighting — perfect for fashion visualization, character design, and creative transformations.
Why It Looks Great
- Character-focused editing: Optimized for modifying people and characters while preserving identity.
- Style modes: Choose from Auto, Fiction, or Realistic styles to match your creative vision.
- Rendering speed options: Balance between speed and quality with Turbo, Default, or Quality modes.
- Flexible aspect ratios: Five format options for any use case.
- Prompt Enhancer: Built-in tool to refine your editing instructions automatically.
- Safety Checker: Optional content filtering for appropriate output.
Parameters
| Parameter | Required | Description |
|---|---|---|
| prompt | Yes | Text instruction describing the edit you want to make. |
| image | Yes | Source image to edit (upload or public URL). |
| style | No | Output style: Auto, Fiction, or Realistic. Default: Auto. |
| rendering_speed | No | Processing mode: Turbo, Default, or Quality. Default: Default. |
| aspect_ratio | No | Output format: 1:1, 16:9, 9:16, 4:3, or 3:4. Default: 1:1. |
| enable_base64_output | No | API only: Returns base64 string instead of URL. |
| Enable Safety Checker | No | Toggle content safety filtering. |
How to Use
- Write your edit instruction — describe the changes you want (e.g., outfit, appearance, style).
- Use Prompt Enhancer (optional) — click to refine your instruction.
- Upload your image — drag and drop or paste a public URL.
- Choose style — select Auto, Fiction, or Realistic based on your needs.
- Select rendering speed — choose Turbo for speed, Quality for best results, or Default for balance.
- Set aspect ratio — pick the output format that fits your use case.
- Run — click the button to apply the edit.
- Download — preview and save your edited image.
Pricing
Pricing varies by rendering speed.
| Rendering Speed | Cost | Best For |
|---|---|---|
| Turbo | $0.10 | Quick previews, rapid iteration, testing concepts |
| Default | $0.15 | General use, balanced quality and speed |
| Quality | $0.20 | Final deliverables, maximum detail and refinement |
Examples
| Rendering Speed | 5 Images | 10 Images | 50 Images |
|---|---|---|---|
| Turbo | $0.50 | $1.00 | $5.00 |
| Default | $0.75 | $1.50 | $7.50 |
| Quality | $1.00 | $2.00 | $10.00 |
Best Use Cases
- Fashion & Outfit Changes — Swap clothing, change dress colors, modify accessories.
- Character Design — Create variations of characters with different looks.
- Portrait Enhancement — Adjust appearance details while maintaining likeness.
- Style Exploration — Transform between realistic and fictional aesthetics.
- Content Creation — Generate multiple outfit or look variations for social media.
Example Prompts
- “She change the outfit to a red dress, keep the lighting natural”
- “Change the shirt to a blue business suit”
- “Add sunglasses and a leather jacket”
- “Transform into a fantasy warrior with armor”
- “Change hair color to blonde, keep everything else the same”
- “Dress in casual summer outfit, white t-shirt and jeans”
Style Guide
| Style | Description | Best For |
|---|---|---|
| Auto | Automatically determines the best style | General use, when unsure |
| Fiction | Stylized, artistic, illustrative look | Fantasy, anime, creative content |
| Realistic | Photorealistic, natural appearance | Fashion, portraits, professional use |
Pro Tips for Best Results
- Be specific about what to change AND what to preserve — “keep the lighting natural”.
- Use Realistic style for fashion and portrait work, Fiction for creative/fantasy content.
- Start with Turbo mode to test your prompt, then switch to Quality for the final version.
- Describe outfit changes in detail — color, style, material, fit.
- The model preserves facial identity well — focus your prompt on clothing and accessories.
- Match aspect ratio to your intended platform: 1:1 for profiles, 9:16 for stories, 16:9 for banners.
Notes
- If using a URL for the image, ensure it is publicly accessible. A preview thumbnail confirms successful loading.
- The enable_base64_output option is only available through the API.
- Processing time varies by rendering speed selection.
- Enable Safety Checker for content that will be publicly shared.
Authentication
For authentication details, please refer to the Authentication Guide.
API Endpoints
Submit Task & Query Result
# Submit the task
curl --location --request POST "https://api.wavespeed.ai/api/v3/ideogram-ai/ideogram-character" \
--header "Content-Type: application/json" \
--header "Authorization: Bearer ${WAVESPEED_API_KEY}" \
--data-raw '{
"style": "Auto",
"rendering_speed": "Default",
"aspect_ratio": "1:1",
"enable_base64_output": false
}'
# Get the result
curl --location --request GET "https://api.wavespeed.ai/api/v3/predictions/${requestId}/result" \
--header "Authorization: Bearer ${WAVESPEED_API_KEY}"
Parameters
Task Submission Parameters
Request Parameters
| Parameter | Type | Required | Default | Range | Description |
|---|---|---|---|---|---|
| prompt | string | Yes | - | The positive prompt for the generation. | |
| image | string | Yes | - | An image to use as a character reference. | |
| style | string | No | Auto | Auto, Fiction, Realistic | The character style type. Auto, Fiction, or Realistic. |
| rendering_speed | string | No | Default | Default, Turbo, Quality | Rendering speed. Turbo for faster and cheaper generation, quality for higher quality and more expensive generation, default for balanced. |
| aspect_ratio | string | No | 1:1 | 1:1, 16:9, 9:16, 4:3, 3:4 | The aspect ratio of the generated media. |
| enable_base64_output | boolean | No | false | - | If enabled, the output will be encoded into a BASE64 string instead of a URL. This property is only available through the API. |
Response Parameters
| Parameter | Type | Description |
|---|---|---|
| code | integer | HTTP status code (e.g., 200 for success) |
| message | string | Status message (e.g., “success”) |
| data.id | string | Unique identifier for the prediction, Task Id |
| data.model | string | Model ID used for the prediction |
| data.outputs | array | Array of URLs to the generated content (empty when status is not completed) |
| data.urls | object | Object containing related API endpoints |
| data.urls.get | string | URL to retrieve the prediction result |
| data.has_nsfw_contents | array | Array of boolean values indicating NSFW detection for each output |
| data.status | string | Status of the task: created, processing, completed, or failed |
| data.created_at | string | ISO timestamp of when the request was created (e.g., “2023-04-01T12:34:56.789Z”) |
| data.error | string | Error message (empty if no error occurred) |
| data.timings | object | Object containing timing details |
| data.timings.inference | integer | Inference time in milliseconds |
Result Request Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| id | string | Yes | - | Task ID |
Result Response Parameters
| Parameter | Type | Description |
|---|---|---|
| code | integer | HTTP status code (e.g., 200 for success) |
| message | string | Status message (e.g., “success”) |
| data | object | The prediction data object containing all details |
| data.id | string | Unique identifier for the prediction, the ID of the prediction to get |
| data.model | string | Model ID used for the prediction |
| data.outputs | string | Array of URLs to the generated content (empty when status is not completed). |
| data.urls | object | Object containing related API endpoints |
| data.urls.get | string | URL to retrieve the prediction result |
| data.status | string | Status of the task: created, processing, completed, or failed |
| data.created_at | string | ISO timestamp of when the request was created (e.g., “2023-04-01T12:34:56.789Z”) |
| data.error | string | Error message (empty if no error occurred) |
| data.timings | object | Object containing timing details |
| data.timings.inference | integer | Inference time in milliseconds |