PocketWebToolsPocketWebTools100% local · no upload
Report / Feedback

Image Upscaler

Sharpen and enlarge small images up to 4x with AI. Runs entirely in your browser, no upload, no signup.

Model

One-time download. Cached in your browser so subsequent runs are instant.

Stays on your device. WebGPU (or WebAssembly fallback) runs the model in your browser. No upload, no signup, unlimited use.

Free AI image upscaler that runs entirely in your browser

PocketWebTools' image upscaler uses an in-browser Swin2SR model to take a small or low-resolution image and produce a sharper, four-times-larger version. The model loads once, runs on your device using WebGPU (or WebAssembly on older hardware), and never uploads your image anywhere. There's no signup, no per-image fee, no usage cap, and your original file stays on your machine.

Two flavours are available: a realworld variant trained on real-world degradations like JPEG compression, blur, and noise, and a classical variant trained on clean bicubic-downsampled inputs. The first is the right pick for phone photos and anything saved to the web; the second is sharper on pixel art and archival graphics.

How to use it

  1. Drop, paste, or click to upload a small image (PNG, JPEG, WebP, or AVIF).
  2. Pick a model: Real photos for noisy inputs or Clean inputs for crisp pixel art and screenshots.
  3. Click Upscale 4×. The first run downloads the model (~33 MB) and caches it for next time.
  4. Drag the slider to compare before and after, then download the PNG result. Output is up to 2048 pixels on the long edge.

What it does well

  • Restores detail to small thumbnails, avatars, and icons.
  • Sharpens scanned receipts, low-res screenshots, and embedded social images.
  • Cleans up compression artefacts on phone photos saved through messaging apps or screenshotted from the web.
  • Recovers usable resolution from old archival photos that were saved at a small size.
  • Upscales pixel art, vector exports, and game assets without introducing colour shifts.

When not to use it

If your input is already a high-resolution photo, an upscaler isn't the right tool. The model fills in plausible detail at 4×, but it cannot invent information that was never captured, and on a sharp 4000-pixel-wide source there is nothing missing to fill in. Stick to the original. Save upscaling for cases where the input is genuinely too small.

Input is capped at 512 pixels on the long edge because the 4× output and the intermediate feature maps grow quadratically with input size. Larger images are automatically downscaled before inference. We'll revisit this with tile-based processing once we see real demand.

Private by design, free forever

Cloud upscalers like Topaz Gigapixel or Let's Enhance charge per image and require you to upload files to a server you don't control. We take the opposite path: the model runs in your tab, your image never touches our servers, and we don't have an inference bill to pay, so the tool is free and unlimited. The trade-off is that you bring your own compute; the upside is privacy, speed on subsequent runs, and zero account creation.

Frequently asked questions

Does my image get uploaded anywhere?
No. The image stays in your browser the entire time. The AI model runs locally on your device using WebGPU (or WebAssembly on devices without WebGPU). There's no server in the loop, no upload, and nothing for us to log.
What kinds of images is this best for?
Small or low-resolution inputs: avatars, thumbnails, icons, scanned receipts, screenshots, pixel art, old photos saved at a tiny size. The default model is Swin2SR realworld, trained with real-world degradations (compression, noise, blur), so it handles phone photos and web-scraped images well. If your image is already high resolution, an upscaler is not the tool you need.
How much bigger does it make my image?
4× on each side, so 16× total pixel count. A 256×256 image becomes 1024×1024. A 512×512 image becomes 2048×2048. Output is always a PNG so there's no second round of compression loss.
Why is there a 512-pixel input cap?
The model produces an output that's 16× the input pixel count. Without the cap, a 1024×1024 input would emit a 4096×4096 result (~64 MB of pixel data) plus large floating-point feature maps, which is enough to crash mobile browsers and many desktop tabs. Capping at 512 keeps the output at a safe 2048 long edge while still being a meaningful upscale. We may relax this with tile-based inference in a later version.
Which model should I pick?
Use 'Real photos' (Swin2SR realworld) for anything that has been compressed, noisy, or shot on a phone. Use 'Clean inputs' (Swin2SR classical) for pixel art, sharp screenshots, vector exports, or archival graphics where the input is already crisp. The realworld model deliberately smooths over compression artefacts, which is the right move on photos but blurs sharp edges on pristine inputs.
Why does it ask to download a model the first time?
The AI model that does the upscaling has to be on your device to run locally. It's a one-time download (~33 MB on WebGPU, larger on older hardware) cached by your browser, so subsequent runs are instant. You can review or delete cached models from the 'Local models' chip in the page header.
Does this work offline?
Yes, after the first visit. Once the model is cached your browser doesn't need a network connection to run it again, so you can use the tool on a plane.
Can I use the result commercially?
Yes. The output is yours, just like with any image editor. The Swin2SR model is Apache 2.0 (permissive open source). We don't claim any rights over images you process here.
How does this compare to Real-ESRGAN, Topaz, or Upscayl?
Real-ESRGAN is the most famous GAN-based upscaler; Swin2SR uses a Swin Transformer V2 architecture instead. On real-world photos the visual quality is comparable. Topaz Gigapixel and Let's Enhance use proprietary cloud models with paid plans; Upscayl is a desktop app that ships GAN weights. We trade some peak quality for being in-browser, free, and private. For everyday upscaling of small images the difference is small, and the workflow advantages add up.
What's WebGPU and does my browser support it?
WebGPU is a modern browser API that runs the AI computation on your GPU. It makes upscaling about 5-10x faster than the CPU-based WebAssembly fallback. We auto-detect support and pick the fastest path; the badge near the action button tells you which one you got. WebGPU is available in Chrome, Edge, and recent Safari and Firefox builds on most desktop and Android devices.

Related tools