How to upscale an image to 3000x3000 (or any exact size)
Divide the target size by the current size to get the upscale factor, then run it: 1000×1000 at 3× is 3000×3000. Sume takes any factor from 1 to 4.
To upscale an image to 3000x3000, divide the target by the current size and upscale by that factor: a 1000×1000 image needs 3×, a 1500×1500 image 2×, and a 1200×1200 image 2.5×. The image must already be square, because an upscale factor multiplies width and height by the same number; crop it to 1:1 first if it is not.
Sume's Image Upscale 1.0 takes that factor directly: upscale_factor is a number from 1 to 4, so 2.5 is a valid value. The request fields come from the OpenAPI document behind the Sume API reference, and the job routes from the API reference docs page, read on 2026-09-27.
How do I work out the upscale factor?
Factor = target edge ÷ current edge. Work it out for both edges: if the two answers differ, the shapes differ and you need a crop first. For common targets:
| Current size | Target size | `upscale_factor` |
|---|---|---|
| 1000×1000 | 3000×3000 | 3 |
| 1500×1500 | 3000×3000 | 2 |
| 1200×1200 | 3000×3000 | 2.5 |
| 750×750 | 3000×3000 | 4 |
| 500×500 | 3000×3000 | 6: over 4, so two jobs |
| 1280×720 | 1920×1080 | 1.5 |
| 960×540 | 1920×1080 | 2 |
How do I run the upscale?
Send the image's public HTTPS URL and the factor to POST /v1/image-upscale-1.0/upscale. output_format is png unless you ask for jpg or webp. The job runs async by default, so poll GET /v1/jobs/:id/status, then read GET /v1/jobs/:id/result.
- Check the result: each artifact can report
widthandheight. Rounding at fractional factors such as 2.5 is not documented, so confirm both numbers before you use the file. - The request has no target-size or crop field, so the factor is the only size control.
- AI image upscaler API covers modes, webhooks, and results in more depth.
curl -X POST https://api.sume.com/v1/image-upscale-1.0/upscale \
-H "Authorization: Bearer $SUME_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"image_url": "https://example.com/images/product-1000.png",
"upscale_factor": 3,
"output_format": "png",
"mode": "async"
}'What if my image isn't square?
Crop it first. An upscale factor enlarges both edges equally, so a 1200×1000 image at 2.5× comes back 3000×2500, not 3000×3000. Crop it to 1000×1000 in an image editor, then upscale by 3. If a crop would cut off the subject, regenerate the image at the new shape instead, as in AI image aspect ratio changer.
Can I generate the exact size instead of upscaling?
Not at 3000×3000. The docs publish exact pixel rules for the ChatGPT Image models, which take custom pixels in image_size: both edges multiples of 16, a longest edge of 3840 at most, an aspect ratio of 3:1 at most, and 655,360 to 8,294,400 pixels. 3000×3000 fails twice: 3000 is not a multiple of 16, and 9,000,000 pixels is over the cap. 2000×2000 fits, and 2000×2000 at upscale_factor 1.5 is 3000×3000.
1920×1080 fails the same rule, because 1080 is not a multiple of 16. Generate 1280×720 and upscale by 1.5. AI image generation API aspect ratios covers image_size on other models.
How much does it cost, and what are the limits?
API pricing lists Image upscale at $0.20 per image, plus a 5.5% agent fee by default. The price is per image, so it is the same at factor 1.5 as at 4.
upscale_factorstops at 4. A bigger jump takes two jobs, each billed, or a larger source image.- Each job takes one image from a public HTTPS URL, not file bytes.
- An upscaler enlarges the image; it can't recover detail the original never captured, so start from the sharpest source you have.
Sources
Related posts
More in Media tools
- Video editing API: which Sume endpoint for each edit
A task-to-endpoint map of Sume's video editing API: which call cuts, crops, captions, joins, or re-voices a video, and which guide explains each edit.
- X (Twitter) video upload specs for AI-generated clips
X recommends H.264 at 30 or 60 fps and 1280x720 or 720x1280, and caps default Post video at 20 minutes. How a Sume clip maps to each line.
- YouTube bumper ad specs: 6 seconds, 16:9, non-skippable
A YouTube bumper ad is a non-skippable video of 5 to 6 seconds, hosted on YouTube, with 16:9 at 1920×1080 listed. How to cut one to 6 s with Sume.
- YouTube ad specs: in-stream and in-feed sizes and lengths
Google lists 1920×1080, 1080×1920, and 1080×1080 at a recommended 15 seconds for YouTube in-video ads; non-skippable in-stream runs 15–60 seconds.
Written by Sume