About AI Image Upscaler
AI Image Upscaler doubles the resolution of any photo using Real-ESRGAN — a super-resolution model trained to recover edge detail rather than just interpolate pixels. Use it to rescue low-res screenshots, old phone photos, product shots that need to fill a larger canvas, or thumbnails you've lost the source for. The model runs on-device via transformers.js/WebAssembly. First run downloads ~50 MB of weights; after that every upscale is offline and your images stay in the browser.
- No uploads
- Browser-only
- Works offline
- 100% free
How it works
- 1
Pick an image
Drop a JPG, PNG or WebP. Smaller inputs (under ~1500 px on the long edge) give the cleanest results because the model has room to invent detail.
- 2
Run the upscaler
Real-ESRGAN runs on your CPU/GPU via WebAssembly. A 512×512 image upscales in a few seconds on a modern laptop; large inputs take longer.
- 3
Download the 2× output
Save the upscaled image. Compare side-by-side with the original to see the recovered edges and texture.
Super-resolution is invention, not magnification
A naive resize — bilinear or bicubic interpolation — has no new information to add, so when it doubles a 500px image to 1000px it just averages neighbouring pixels and the result looks soft and smeared. AI super-resolution does something fundamentally different: Real-ESRGAN is a model trained on millions of high-res/low-res image pairs, so it has learned what plausible high-frequency detail looks like and synthesises it — sharpening edges, reconstructing texture, and cleaning up compression noise as it scales. The original Real-ESRGAN work is published openly (Wang et al., 2021).
The crucial word is 'plausible'. The model is not recovering detail that was captured and lost; it is hallucinating detail that is statistically likely given what it can see. On a slightly soft photo that reads as a genuine improvement. But it means the upscaled image is a synthesis, not a higher-resolution truth — a distinction that matters the moment the pixels are used as evidence.
What it can and can't recover
| Input | Result | Why |
|---|---|---|
| Slightly soft natural photo | Good — crisper edges, restored texture | Matches the model's training distribution |
| Compressed / noisy photo | Good — denoises while upscaling | Real-ESRGAN was trained to handle JPEG artefacts |
| Tiny input (under ~200px) | Mixed — invented, sometimes wrong detail | Too little signal; the model fills gaps from priors |
| Text / UI screenshots | Poor — text can turn illegible | Glyph edges aren't natural-image texture |
| Line art / pixel art | Poor — smudges hard edges | The model softens what should stay sharp |
For screenshots, pixel art and crisp line work, a plain integer (nearest-neighbour) upscale in our [image resizer](/image/resize/) usually looks better than AI.
When to use it, and the artefacts to expect
Reach for AI upscaling to rescue a low-res photo you've lost the source for, to fill a larger canvas with a small product shot, or to clean up an old phone snap. The model is trained for a 2x factor; to go bigger, run the output back through for 4x, accepting that each pass compounds any invented detail. Smaller, natural-photo inputs give the cleanest results because the model has the most room to add believable texture without contradicting real detail. Everything runs locally via transformers.js after a one-time ~50 MB weight download, so your images stay in the browser.
Know the failure signatures so you can spot them. A 'plasticky' or over-smoothed look appears when the model scrubs away fine texture it didn't recognise. A faint waxy sheen on skin is the same effect on faces. And on anything with text or sharp logos, expect mangling — the edges that make glyphs readable are exactly what Real-ESRGAN is least equipped to reconstruct. The hard limit is honesty about use: for forensic, scientific, medical or any measurement context, an upscaled image is not a faithful record of what was captured and must not be treated as one. Once upscaled, compress or convert the file for delivery.
Frequently asked questions about AI Image Upscaler
Can it upscale by more than 2×?
The model is trained for a 2× factor. To go further, run the result back through the upscaler — a second pass gives you 4×. Quality holds well for 2× and is still good at 4× on photo-like inputs; very small inputs (under 200 px) will show some hallucinated detail.
Is the output AI-generated?
Yes. Real-ESRGAN invents plausible high-frequency detail that wasn't in the original pixels — so the upscaled image is a synthesis, not a true higher-resolution capture. For evidentiary, scientific or measurement use cases, the output is not a faithful representation. See /disclaimer.
Why does my upscale look soft or smudged?
Real-ESRGAN expects natural photographic inputs. Cartoons, line art, screenshots of text, and heavily-compressed images can confuse the model — text in particular may become illegible. For pixel art and UI screenshots, a plain integer-nearest upscale in our image resizer usually looks better.
Privacy, offline use, browser support, and pricing questions are answered on the site-wide FAQ.