AI Image Upscaler

Enlarge small or blurry photos and illustrations to 2× or 4× with AI. Everything runs on your device, and your image is never sent anywhere. Compare before and after, then save.

On-device・No uploadLimited on mobile

Your files and input are processed only inside your browser on this device and are never uploaded to our servers.

Drop a file here

or

Images are upscaled only on your device. Nothing is sent to a server.Accepts: JPEG / PNG / WebP / BMP / GIFUp to 20 MB per filePaste (Ctrl+V) also works
Upscale settings2×
Scale

4× uses the model’s 4× result as it is. 2× is made by shrinking the same result, so the detail is the same kind of estimate.

Save format

Transparent areas become white. WebP cannot be saved in browsers that do not support it.

How to use

  1. small-photo.jpg480×320 px

    Add a small or blurry image

  2. small-photo.jpg4x → 1920×1280

    Enlarge 2x or 4x with AI

  3. large-photo.pngProcessed on your device

    Save as PNG, JPEG or WebP

Enlarge a small image 2x or 4x with AI, processed on your device
  1. Drop an image or click “Choose file”. “Try a sample” shows how the result looks.

  2. Pick 2× or 4× under “Scale”. Larger images take longer, so trying 2× first is a good idea.

  3. Press “Upscale”. The image is processed in 128 px tiles, and progress is shown. You can cancel at any time.

  4. Drag the divider to compare the original with the upscaled result.

  5. Press “Save” and choose PNG, JPEG or WebP.

What it does

Upscales only on your device

The AI model and the browser runtime are served from this site, and upscaling runs in a Web Worker. Images are not sent to any external service.

Official model weights

The model is Real-ESRGAN (BSD-3-Clause) realesr-general-x4v3, converted to ONNX from the official weights. No third-party weights are used.

Tiles to hide seams

The image is split into 128 px tiles, and each tile is read with 32 px of surrounding context, so tile borders are hard to see.

Faster with WebGPU

If the browser supports WebGPU, the GPU is used. Otherwise the CPU (WebAssembly) does the work.

Compare before saving

A slider shows the original and the result side by side. Save as PNG, JPEG or WebP.

Use cases

  • Make an old or low-resolution photo large enough to print or use in a document
  • Enlarge a blurry illustration or icon with clean edges
  • Look closer at part of a photo with smooth outlines instead of coarse pixels
  • Upscale images without sending them to a server, such as work material or personal photos

Supported formats

Input

JPEGPNGWebPBMPGIF (first frame)

Output

PNGJPEGWebP (browsers that support it)

Capability matrix

FeatureSupportNotes
Upscaling photos and illustrations to 2× or 4×Supported—
Restoring details that are not in the imageNot supportedThe AI draws plausible detail. Information that was not in the original does not come back
Faces and textPartialFaces can look unnatural, and small text may become unreadable
Separate colour, noise or deblur adjustmentsNot supportedThe scale is the only setting. No other corrections are applied
Sending files to a serverNot supportedNothing is sent. All processing happens on your device
Very large images on older devicesPartialImages over the input limit cannot be processed. Large images take time and memory
Video and animationNot supportedOnly the first frame is upscaled
Keeping transparency when savingNot supportedTransparent areas become white

Limits & notes

  • Up to 20 MB per file. Input is limited to about 4 megapixels at 2× (for example 2000 × 2000) and about 1.56 megapixels at 4× (for example 1250 × 1250). Output is limited to about 25 megapixels. Images over the limit are not processed.
  • The upscaling is an AI estimate. It does not truly restore details that are not in the image, so the result can differ from the original.
  • Processing time depends heavily on image size and device. On phones, large images can run out of memory.
  • The first run loads the model (about 5 MB) and the runtime. Later runs use the browser cache.
  • Transparent areas are made white before upscaling. JPEG cannot store transparency.

Privacy & safety

Loading, upscaling and saving all happen inside your browser. Images are never sent to or stored on a server, and usage statistics do not include images or file names. The AI model and runtime are served from this site, and no external service is contacted.

FAQ

Are my images uploaded?
No. Upscaling happens on your device, and the image is not sent to any server. The model and runtime are also loaded from this site.
Should I choose 2× or 4×?
Use 4× for printing or large display. Use 2× when you want a quick first try. The 2× result is made by shrinking the 4× result, so it looks similar in detail.
Does it add details that were not in the photo?
The AI draws detail that looks natural from the surroundings. It does not bring back information the original did not contain, so check important faces and text against the original.
Why does it take so long?
The image is split into tiles, and the AI model upscales them one by one. The number of tiles is shown before you start, and larger images have more tiles.
Why does it say the image is too large?
To protect device memory, the output is limited to about 25 megapixels. At 4×, the input is limited to about 1.56 megapixels (for example 1250 × 1250). Make the image smaller or choose 2×.
What happens to transparent images?
Transparent areas become white before upscaling. Transparency cannot be kept when saving.

Last updated: