RunLocalTools

Upscale — Free Online Image Upscaler (Photo & Pixel Art)

Enlarge photos and pixel art with real resampling algorithms — Lanczos3, bicubic, and pixel-art-specific Scale2x/Scale3x/Eagle scalers. Free, runs entirely in your browser, no upload.

What it does

Upscale enlarges an image to a bigger size using an algorithm suited to what the image actually is. Photos get Lanczos3, bicubic, or bilinear resampling — the same families of algorithm used in professional image editors. Pixel art and sprites get dedicated scalers (Scale2x, Scale3x, and Eagle) that were designed specifically to enlarge low-resolution pixel graphics without turning clean edges into blur. A before/after slider lets you compare the result against a plain nearest-neighbor blow-up so you can see exactly what the algorithm added. Everything processes locally in your browser — nothing is uploaded.

How it works

Photographic algorithms resample the image using a weighted average of nearby source pixels. Bilinear looks at a small neighborhood and blends smoothly (fast, but a little soft). Bicubic and Lanczos3 use a wider neighborhood and a sharper weighting curve, which preserves edges and fine detail better — Lanczos3 in particular is the algorithm most photo software defaults to for high-quality enlargement, because its windowed-sinc weighting keeps lines crisp without the ringing that cruder sharpening methods introduce.

Pixel-art scalers work completely differently: rather than blending colors, they compare each pixel against its immediate neighbors and decide whether to replicate a diagonal neighbor’s exact color into the new pixels the enlargement creates. Scale2x (used in emulators for decades) and its 3x sibling only smooth a corner when three specific neighboring pixels agree, which is what turns a jagged staircase edge into a clean diagonal line — without ever inventing a color that wasn’t already in the source image. Eagle uses a similar corner-matching rule with a slightly different neighborhood test. Because these algorithms only replicate existing colors, they’re ideal for sprites, icons, and retro game art, and a poor fit for photos (where they’d produce blocky, cartoonish results).

An optional unsharp-mask pass runs after upscaling: it blurs a copy of the result, finds the difference between that blur and the sharp version, and re-adds that difference at an adjustable strength — the standard technique for recovering perceived sharpness that resampling naturally softens.

How to use it

  1. Drop in one or more images.
  2. Pick an algorithm: Lanczos3 or bicubic for photos, or Scale2x/Scale3x/Eagle for pixel art and sprites.
  3. Choose a scale multiplier (2×–8×) or, for photographic algorithms, enter an exact target width/height.
  4. Drag the before/after slider to compare against a plain nearest-neighbor enlargement.
  5. Optionally enable the sharpen pass and adjust its strength.
  6. Download the current image, or click “Apply to all” to process every loaded image with the same settings and grab them all as a .zip.

Supported formats & limits

Accepts any image your browser can decode. Exports as PNG (lossless), WebP, or JPEG with an adjustable quality slider. Pixel-art scalers only support their native integer multiples (2×, 4×, 8× for Scale2x/Eagle; 3×, 9× for Scale3x) since they work by repeated passes rather than arbitrary resampling. Extremely large target sizes are checked against browser canvas limits before processing, so you get a warning instead of a frozen tab.

Privacy

Images are processed entirely in your browser using the Canvas API — nothing is uploaded to a server. Loaded images persist locally so a refresh doesn’t lose your batch; clear them anytime with “Clear all.”

FAQ

Which algorithm should I use for a photo? Lanczos3 generally gives the sharpest, most detailed result for photographic content. Bicubic is a close second and slightly faster. Bilinear is smoother and softer — useful if you want to avoid any sharpening artifacts. Nearest neighbor is included mainly as a reference/comparison baseline, not for final output.

Which algorithm should I use for pixel art or game sprites? Scale2x, Scale3x, or Eagle. These preserve hard edges and never blend colors together, so a 16×16 sprite stays crisp and readable instead of turning into a blurry smear.

Why can’t I enter a custom size for Scale2x/Scale3x/Eagle? These algorithms work by detecting patterns in a fixed neighborhood of pixels and only support their native multiples (2×, 3×, and powers of those). If you need an exact custom size from pixel art, scale up with one of these first, then use a photographic algorithm for the final fine adjustment.

Does upscaling actually add detail that wasn’t there before? No algorithm — including this one — can recover information that was never captured. Photographic upscalers make an enlargement look smoother and more natural by intelligently interpolating; pixel-art scalers make hard edges look cleaner by extending existing patterns. Neither invents new detail from nothing.

Why does my upscaled image look soft, and how do I fix it? Some softening is inherent to smooth resampling (more so with bilinear than Lanczos3). Enable the sharpen option and increase its strength to recover perceived crispness — just watch for visible haloing around edges if you push it too far.

Will this work well on a scanned document or line art? Bicubic or Lanczos3 will smooth jagged edges reasonably well. For pure black-and-white line art or text, a dedicated vectorization tool will usually give cleaner results than any raster upscaler, since it can produce genuinely smooth curves rather than more pixels.