Clarity Ai Creative Upscaler
Playground
Try it on WavespeedAI!Creative Upscaler enlarges images with style and detail control, restoring photos or adding micro-textures for portraits and anime. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.
Features
Clarity AI Creative Upscaler
Clarity AI Creative Upscaler enlarges and enhances images with controllable detail generation, making it useful for both faithful restoration and more stylized creative upscaling. It is well suited for interiors, portraits, product images, artwork, and other assets that need higher resolution with adjustable enhancement strength.
Why Choose This?
-
Creative image upscaling Increase image resolution while enhancing sharpness, textures, and overall visual clarity.
-
Megapixel-based output control Choose the target output size directly in megapixels for more predictable delivery needs.
-
Flexible detail generation Use
creativityto balance source-faithful restoration against stronger generated detail. -
Simple workflow Upload one image, choose the target megapixels, adjust creativity, and generate the enhanced result.
-
Production-ready API Suitable for image enhancement workflows, creative tooling, print preparation, and commercial asset delivery.
Parameters
| Parameter | Required | Description |
|---|---|---|
| image | Yes | Input image to upscale. |
| target_megapixels | No | Target output size in megapixels. Higher values produce larger outputs. |
| creativity | No | Controls how much new detail is added. Lower values stay closer to the source, while higher values add stronger enhancement. |
How to Use
- Upload your image — provide the source image you want to enhance.
- Choose target megapixels — set the desired output size based on your delivery needs.
- Adjust creativity (optional) — keep it low for more faithful results, or increase it for stronger enhancement.
- Submit — run the model and download the upscaled image.
Example Use Case
Upscale an interior design photo for higher-resolution presentation output while preserving structure, lighting, and clean material textures.
Pricing
Pricing is based on the selected target_megapixels tier.
| Target Megapixels | Cost |
|---|---|
<= 4 MP | $0.05 |
> 4 MP and <= 8 MP | $0.10 |
> 8 MP and <= 16 MP | $0.20 |
> 16 MP and <= 25 MP | $0.40 |
> 25 MP and <= 50 MP | $0.80 |
> 50 MP | $1.60 |
Billing Rules
- Pricing is based on
target_megapixels - Cost uses fixed megapixel tiers rather than scaling linearly
- Higher megapixel tiers increase the price step by step
creativitydoes not affect pricing
Best Use Cases
- Photo enhancement — Improve clarity and resolution for real-world photography.
- Interior and architecture images — Preserve structure and clean lines while increasing output size.
- Product and commercial visuals — Prepare sharper assets for catalogs, campaigns, and listings.
- Artwork and illustration upscaling — Generate larger outputs for presentation or print use.
- Creative asset preparation — Produce higher-resolution images for design, marketing, and publishing workflows.
- Controlled restoration vs enhancement — Adjust
creativitybased on how close the result should stay to the original.
Pro Tips
- Start with a lower megapixel tier first, then increase only if you need a larger final output.
- Keep
creativitylow when structure accuracy and source fidelity matter most. - Increase
creativitygradually if you want stronger texture generation or more stylized enhancement. - Use the cleanest source image available for better results.
- For print or large-format delivery, choose a higher megapixel tier only when the extra size is necessary.
Notes
imageis the only required field.- Pricing depends on the selected
target_megapixelstier. creativityaffects the look of the result, but not the price.- Larger target sizes may be more suitable for print, presentation, or premium delivery workflows.
Related Models
- Clarity AI Pro Upscaler — A simpler photorealistic upscaler with resolution-tier pricing.
- Clarity AI Flux Upscaler — Adds prompt guidance and optional LoRA style control.
- Clarity AI Crystal Upscaler — Uses resolution-tier output with a more straightforward enhancement workflow.
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/clarity-ai/creative-upscaler" \
--header "Content-Type: application/json" \
--header "Authorization: Bearer ${WAVESPEED_API_KEY}" \
--data-raw '{
"target_megapixels": 4,
"creativity": 0
}'
# 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 |
|---|---|---|---|---|---|
| image | string | Yes | - | Input image to upscale. | |
| target_megapixels | number | No | 4 | 1 ~ 64 | Requested output size in megapixels. Range: 1-64 MP. |
| creativity | number | No | - | -10.0 ~ 10.0 | Negative values stay stricter to the source; positive values add more generated detail. |
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.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 |