Upscale Image
Enlarge a photo 2×, 3×, 4× or up to 8× with high-quality Lanczos detail that runs in a Web Worker in your browser. A live 1:1 preview shows the result before you commit, and nothing is uploaded.
Heads up: upscaling is CPU-intensive. Very large photos can take a minute or more on modest devices — the live preview shows a small crop first so you can judge the result quickly.
Drop a PNG, JPG, WebP or GIF
or drop anywhere on this page · Choose a file · 100 MB
Accepted: JPG, JPEG, PNG, WebP, AVIF, GIF, BMP, HEIC, HEIF, SVG
How does Upscale Image work?
Upscaling is interpolation: inventing pixels between the ones you have. The naive way — what a canvas does when you draw an image bigger — is bilinear filtering, which averages neighbours and produces the familiar soft, slightly blurry enlargement. Serious tools use better filters, and this page implements the best classical one: Lanczos resampling.
What Lanczos actually does
The ideal reconstruction filter is the sinc function, which is infinite — so it is “windowed” by multiplying with a second sinc, giving the Lanczos kernel. For each output pixel the resampler evaluates this kernel over the surrounding source pixels (a 6×6 neighbourhood for Lanczos-3) and takes the weighted average. The negative lobes of the kernel are what preserve edges: unlike bilinear, which can only blur, Lanczos can keep a sharp transition sharp. It runs here as two separable 1D passes — horizontal then vertical — which turns a 36-tap 2D filter into two 6-tap 1D filters and makes it fast enough for a Web Worker.
What it cannot do
No classical filter invents detail. Lanczos gives you the sharpest honest enlargement of the information already in the picture — edges stay crisp, text stays legible one or two sizes up. It will not reconstruct a face from four pixels; tools that claim to are running neural networks (and usually a server). If your source is a clean image that is simply too small, this is the right tool; if it is a 40-pixel thumbnail, nothing honest will save it.
The preview is the point
Upscaling quality is judged at 1:1 — one screen pixel per image pixel — which is why the preview upscales a centre crop and shows it through a before/after slider at full resolution. Drag the divider across an edge or some text: that is exactly what the full-size result will look like. Change the method to bilinear and compare, and the difference Lanczos makes stops being theoretical.
Example input
logo.png — 400 × 300 px
Example output
logo-upscaled-2x.png — 800 × 600 px, edges intact
What options and edge cases does Upscale Image support?
| Parameter | Type | Default | Behaviour & edge cases |
|---|---|---|---|
| Upscale factor | 2× / 3× / 4× / custom | 2× | Custom goes from 1.1× to 8×. Output is capped at 100 megapixels to protect your device's memory. |
| Method | Lanczos-3 / Bicubic / Bilinear | Lanczos-3 | Lanczos-3 is the sharpest classical filter. Bicubic (Catmull-Rom) is close; bilinear is what a canvas does — included so you can see the difference. |
| Gentle sharpening | toggle | On | A mild unsharp mask that restores micro-contrast lost in resampling. Conservative by design — oversharpening is the tell of a cheap upscaler. |
| Output format | PNG / JPG / WebP | PNG | PNG for graphics and text; JPG or WebP for photographs, with a quality slider. |
Frequently asked questions
Is this AI upscaling?
No — and that is stated plainly because the distinction matters. This is classical signal processing: a Lanczos-3 windowed-sinc resampler, the same family of filter Photoshop's “Preserve Details” and ImageMagick use. It produces the sharpest honest enlargement of the pixels you have. It does not hallucinate detail the way neural upscalers do, which means it also never invents a wrong texture or a melted face.
Why does the preview only show part of the image?
Because upscaling is judged at 1:1 — one screen pixel per image pixel — and a full 4× preview of a large photo would itself be enormous. The preview upscales a centre crop with your exact settings and shows it through a before/after slider at full resolution. What you see there is pixel-for-pixel what the download will look like.
Which method should I choose?
Lanczos-3 for almost everything: it preserves edges better than bicubic with minimal ringing. Bicubic if you see faint halos on very high-contrast edges (Lanczos's negative lobes can ring there). Bilinear is included for comparison — it is what most quick tools do, and the preview makes its softness obvious.
Are my images uploaded anywhere?
No. Decoding, resampling (in a Web Worker) and encoding all run in this tab, and the pixels never leave your machine. Open DevTools on the Network panel and upscale something: nothing is sent.
What is the largest image I can upscale?
Inputs are capped at 25 megapixels and outputs at 100 megapixels — beyond that a tab risks running out of memory, and the tool declines instead of freezing. If your requested scale would exceed the output cap, the scale is reduced and the page tells you.
Why is PNG the default output?
Because upscaling is most often applied to graphics, logos and screenshots, where a lossy format would smear the very edges you just preserved. For photographs choose JPG or WebP with the quality slider — at 92 the artefacts are invisible and the file is far smaller.