A production REST API that upscales any image 4x (or up to 16x) using Real-ESRGAN and returns a sharper, higher-resolution result. One HTTP call. The cheapest ESRGAN API on the market at $0.009 per image — less than a sixth of Let's Enhance and roughly a ninth of Topaz Gigapixel. 5,000 free trial credits, no credit card required.
Sign up, copy your key from the dashboard, and POST your image. The endpoint returns a generation id; poll until status=completed, then download the upscaled image from output_url. Default scale is 4x; pass scale=8 or scale=16 for larger output.
curl -X POST https://api.pixelapi.dev/v1/image/upscale \
-H "Authorization: Bearer YOUR_API_KEY" \
-F "image=@photo.jpg" \
-F "scale=4"
# Response: {"id": "uuid", "status": "queued", "credits_used": 9.0}
# Poll until completed
curl https://api.pixelapi.dev/v1/image/UUID \
-H "Authorization: Bearer YOUR_API_KEY"
# Response: {"generation_id": "uuid", "status": "completed", "output_url": "https://..."}
pip install pixelapi
---
from pixelapi import PixelAPI
client = PixelAPI(api_key="YOUR_API_KEY")
result = client.upscale(image="photo.jpg", scale=4)
result.save("photo_4x.png")
npm install pixelapi
---
import { PixelAPI } from "pixelapi";
const client = new PixelAPI({ apiKey: process.env.PIXELAPI_KEY });
const result = await client.upscale({ image: "./photo.jpg", scale: 4 });
await result.save("photo_4x.png");
composer require pixelapi/pixelapi
---
<?php
use PixelAPI\Client;
$client = new Client(getenv("PIXELAPI_KEY"));
$result = $client->upscale(["image" => "photo.jpg", "scale" => 4]);
file_put_contents("photo_4x.png", $result->getBody());
gem install pixelapi
---
require "pixelapi"
client = PixelAPI::Client.new(api_key: ENV["PIXELAPI_KEY"])
result = client.upscale(image: "photo.jpg", scale: 4)
File.binwrite("photo_4x.png", result.body)
go get github.com/pixelapi/pixelapi-go
---
import "github.com/pixelapi/pixelapi-go"
client := pixelapi.New("YOUR_API_KEY")
result, err := client.Upscale("photo.jpg", 4)
if err != nil { panic(err) }
result.Save("photo_4x.png")
Verified per-image API costs, October 2026. PixelAPI uses Real-ESRGAN and is priced to be the most accessible upscaling API for developers — no subscription required to start.
| Provider | Free tier | Per-image cost | Scale options |
|---|---|---|---|
| PixelAPI | 5,000 credits (trial), no card | $0.009 | 2x – 16x |
| Topaz Gigapixel API | None (paid plan required) | $0.08 – $0.12 / credit | varies by model |
| Let's Enhance / Claid.ai | limited | $0.059 / credit (one-time pack) | 2x – 16x |
| Vance.ai | limited | see vanceai.com/pricing (dashboard-only) | varies |
| Upscale.media | limited | see upscale.media/pricing (INR only) | 2x – 4x |
Pricing verified from each rival's public pricing page October 2026. Topaz: topazlabs.com/api. Let's Enhance: letsenhance.io/business. Vance.ai does not publish API pricing publicly; Upscale.media publishes INR prices only. PixelAPI's price is set at well under half the cheapest verifiable rival per our pricing principle.
A single Real-ESRGAN pass at the default scale=4 reconstructs fine detail, texture, and edges that bicubic interpolation blurs. Ideal for e-commerce product images, stock photo enlargements, and portrait enhancement.
Pass scale=8 or scale=16 to run two consecutive Real-ESRGAN passes. A 1,254 px web image becomes a 10,000 px+ print-ready file. Used by print labs and large-format poster pipelines.
Pass target_width and target_height together to request an exact pixel size. Choose fit_mode=stretch for an exact match, pad_white for letterboxing on a white canvas, or pad_transparent for a transparent PNG canvas.
PNG images with an alpha channel are upscaled in RGBA mode — the transparent regions stay transparent in the output. Ideal for product cutouts, logos, and UI sprites that need higher-resolution versions.
Product photos, portraits, stock images. Up to 20 MB. The most common upscaling input format.
Screenshots, UI assets, transparent cutouts. Alpha channels are preserved exactly through the upscale pipeline.
Modern web-optimised images. Submit directly — no conversion step needed on your side.
The ESRGAN Upscaler API powers these production workflows. Each links to a setup guide:
Enlarge product images to meet marketplace minimum resolution requirements — Amazon, Flipkart, Shopify. Batch pipeline at $0.009/image.
Convert web-resolution images to 300 DPI print-ready files. 16x scale turns a 1,254px source into 20,000px+ output.
Upscale legacy archive images to modern resolutions before submitting to stock libraries.
Recover detail from older low-resolution scans, DSLR crops, or screen captures. Bulk process RAW exports.
Sharpen and enlarge listing photos for portals that require high-resolution originals.
More use-case guides: all industries →
Bulk-upscale product images on upload via webhook. Trigger Real-ESRGAN on every new product photo automatically.
No-code upscale trigger — connect Google Drive, Dropbox, or Airtable to auto-upscale on file upload.
Drag-and-drop upscaling in Make scenarios. Combine with background removal for a full product image pipeline.
CMS auto-upscale for editorial imagery. Keep source images small in Webflow, serve hi-res on demand.
Catalog automation with the BC product API. Upscale all existing product images in one batch job.
PixelAPI at $0.009 vs Topaz at $0.08–$0.12 per credit. No monthly subscription required to start. REST API vs Topaz's proprietary client SDK.
PixelAPI at $0.009 vs Let's Enhance / Claid.ai at $0.059 per credit (one-time pack). Same Real-ESRGAN quality, 6x lower price.
Vance.ai hides API pricing behind a login. PixelAPI publishes pricing publicly and requires no sales call to get started.
Upscale.media tops out at 4x; PixelAPI supports up to 16x via multi-pass. Transparent USD pricing vs INR-only billing.
Deep Image AI pricing requires an account to view. PixelAPI is transparent: $0.009/image, no surprises, no sales process.
20 requests/minute on the free trial, 60 on Starter, 120 on Pro and 300 on Scale, plus 3/10/20/50 concurrent jobs respectively (see pixelapi.dev/docs/parallel-processing.html). Exceeding the limit returns HTTP 429 with a Retry-After header. Recommended: exponential backoff starting at 2s, doubling on each retry up to 30s. The Python and Node SDKs handle this automatically.
# Python SDK auto-retries 429 with backoff from pixelapi import PixelAPI client = PixelAPI(api_key="...", max_retries=4) result = client.upscale(image="batch_item.jpg", scale=4) # auto-retries on 429
Common error codes:
| HTTP status | Meaning | Action |
|---|---|---|
400 | Invalid input — missing image, oversized file, bad scale value | Fix the request parameters |
402 | Insufficient credits or trial ended | Top up credits or subscribe |
429 | Rate limit exceeded | Retry after the Retry-After seconds |
500 | Processing failure (credits auto-refunded) | Retry; contact support if persistent |
An ESRGAN API (Enhanced Super-Resolution Generative Adversarial Network API) is a REST endpoint that accepts a low-resolution image and returns a higher-resolution version with reconstructed detail. Real-ESRGAN uses a trained model to produce results that sharpen textures and edges — outperforming simple bicubic interpolation. PixelAPI wraps Real-ESRGAN into a simple POST call at $0.009/image.
$0.009 per image — less than a sixth of Let's Enhance / Claid.ai ($0.059) and roughly a ninth of Topaz Gigapixel API ($0.08–$0.12). New accounts get 5,000 free trial credits — over 555 upscale jobs — with no credit card required.
Scale factors from 2x up to 16x via the scale parameter. scale=4 is the default: one Real-ESRGAN pass producing a 4x larger image. scale=5 through scale=16 use two consecutive passes — a 1,254 px web image becomes 10,000 px+ output, suitable for large-format printing.
JPEG, PNG, and WebP, up to 20 MB. Submit a file upload (multipart image field) or pass an image_url parameter. Alpha channels in PNG images are preserved in the output.
A JSON object with output_url pointing to the upscaled image (PNG). Pass target_width and target_height together for an exact output resolution, plus fit_mode to control aspect-ratio handling (stretch / pad_white / pad_transparent). Minimum 64 px, maximum 16,384 px per side.
Yes — pip install pixelapi. Official SDKs also available for Node.js (npm install pixelapi), PHP (Composer), Ruby (Gem), Go (go get), and Java/Kotlin. All SDKs handle authentication, polling, retry-on-429, and binary file save automatically.
20 requests/minute on the free trial, 60 on Starter, 120 on Pro, 300 on Scale — plus 3/10/20/50 concurrent jobs respectively. Higher burst limits are available for batch pipelines; email support@pixelapi.dev with your expected volume.
Topaz Gigapixel API costs $0.08–$0.12 per credit (1 credit = 1 image up to 24 MP), requires a Developer plan at $50/month, and ships a proprietary SDK (verified from topazlabs.com/api, October 2026). PixelAPI costs $0.009/image, has no monthly subscription requirement, and uses a standard REST API with SDKs for 6 languages.
Yes. Sign up with an email address and 5,000 credits are added automatically. At $0.009/image that covers over 555 upscale jobs. No credit card and no charge if you do not subscribe. Purchased credits stay in your account even after the trial period ends.
Failed or corrupted outputs are detected by an output-quality check layer. The job is rejected and credits are automatically refunded — you never pay for a broken result.
Yes. PixelAPI is a registered Indian business. We issue GST invoices: 18% IGST for international clients, CGST/SGST for domestic. Invoice download is built into the dashboard under Billing.
Yes. Use scale=8 or scale=16 for large-format output. Combine with target_width/target_height to produce an exact pixel size, then set 300 DPI metadata in your print workflow. A 1,254 px JPG at scale=16 can reach 20,000 px+ — sufficient for A0 poster printing at 300 DPI.