Bulk Image Upscaler 2x/4x from CSV, Sheet or URL List
Pricing
$15.00 / 1,000 image upscaleds
Bulk Image Upscaler 2x/4x from CSV, Sheet or URL List
Pricing
$15.00 / 1,000 image upscaleds
Rating
0.0
(0)
Developer
Francesco Correnti
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
10 days ago
Last modified
Categories
Share
Bulk Image Upscaler: 2x / 4x from CSV, Google Sheet or URL list
Upscale hundreds of images from URLs in one run. AI upscaling (Real-ESRGAN realesr-general-x4v3, ONNX, CPU) with an automatic Lanczos fallback. You get every image as PNG or JPG, one ZIP, and a result table. $0.015 per successfully upscaled image. Failures are free.
Input
{ "urls": ["https://example.com/a.jpg", "https://example.com/b.png"], "scale": "2", "format": "png" }
{ "sheetUrl": "https://docs.google.com/spreadsheets/d/<id>/edit#gid=0", "csvUrl": "https://example.com/list.csv", "scale": "4", "format": "jpg", "maxImages": 200 }
| Field | Default | Meaning |
|---|---|---|
urls / csvUrl / sheetUrl | - | Merged and deduplicated. CSV/Sheet: column url (any case), else the first column. Non-http rows skipped. Sheet must be link-shared. |
scale | "2" | "2" or "4" (a string in API input; an integer is rejected with HTTP 400) |
format | png | png or jpg (quality 92, transparency flattened to white) |
maxImages | 100 | Cap per run |
imageTimeoutSecs | 180 | Whole-image timeout, download included |
modelTimeoutSecs | 60 | AI time limit per image; on timeout the image is upscaled with Lanczos |
useModel | true | false = Lanczos only (fast) |
Output
- Key-value store:
img-<n>-<name>.png|jpg,upscaled.zip(all successful images),OUTPUT(link to the ZIP). - Dataset row per URL:
url, status, method, inWidth, inHeight, outWidth, outHeight, bytes, kvKey, link, error. status:ok,download_error,not_image,too_large,output_too_large,timeout,error.method:modelorlanczos.
Pricing
Pay per event: image = $0.015, charged only after the image is saved. Bad URLs, non-images, too-large and failed images are not charged. The run stops cleanly when your max-charge limit is reached.
Limits
- Input max 25 MP, output max 100 MP (e.g. a 12 MP image at 4x is refused as
output_too_large). - Download max 50 MB, download timeout 30 s.
- AI model runs on CPU only for inputs up to 1 MP (measured on the platform at 4096 MB: ~0.08 MP in ~1.5 s, ~1 MP close to 60 s). Larger inputs,
useModel=falseor a model timeout use Lanczos resampling (method=lanczos). - If
upscaled.zipexceeds 1 GB it is not uploaded;OUTPUTthen haszip: nulland a note. Use the per-image links in the dataset. - Images are processed one at a time; the run fetches only the URLs you give, no crawling.
Privacy
No personal data collected. Metadata (EXIF, GPS) is stripped from outputs. Images are kept only in your run's storage.
Run the check
python3 check.py (offline; needs numpy, Pillow, onnxruntime). Publish: APIFY_TOKEN=... python3 publish.py (--dry-run shows the payload).
SEO title: Bulk Image Upscaler 2x/4x from CSV, Sheet or URLs SEO description: Upscale images in bulk from a URL list, CSV or Google Sheet. Real-ESRGAN AI on CPU with Lanczos fallback. PNG/JPG + ZIP. $0.015 per image.