What it’s doing
Say your file is 600 pixels across and you need 2,400. Three out of every four pixels in the result were never recorded by anything. They are not hiding in the file, waiting to be unlocked. They have to be worked out from the pixels either side, and the only real question an enlarger answers is how.
The cheap answer, and the one your browser gives by default when it stretches an image in a page, is to blend each new pixel from its two nearest neighbours. It is fast and it turns every edge into a gentle ramp. The answers here cost more arithmetic and use more of the picture: seven source pixels per output pixel rather than two, weights that follow a windowed sinc curve, and — if you pick it — a test of which way the local edge runs before anything is blended at all.
Enlarging can’t recover detail that was never recorded. What a model does is make a confident guess about what should be there, informed by millions of other photographs — which is often better than a blur and is never the same thing as the real thing. At 8× from a 200px picture, most of what you’re looking at is the guess.
That paragraph is the reason the loupe exists. A result judged at fit-to-screen is a result nobody has looked at, because the screen is quietly shrinking it again. Put the magnifier over an eyelash, a brick or a letterform and you will know within a second whether the size you asked for is a size this picture can carry.
Two ways to get there
There are two families of enlarger in the world. One computes; one predicts. This build ships the first one, properly, and is honest about not shipping the second.
| Method | Best on | Costs you |
|---|---|---|
| Lanczos 3 | Photographs, scans, anything with texture | A faint bright rim on hard edges |
| Mitchell | Grainy or already-sharpened sources | A touch of softness |
| Edge-guided | Diagonals, line art, lettering | Time, and nothing gained on foliage |
| Nearest | Pixel art, icons, screenshots | Visible squares, which is the point |
The second family is a trained network — the kind of thing people mean by AI upscaling. It does not compute the missing pixels; it predicts them from what it has seen in millions of other photographs, and on a soft, small, ordinary snapshot it can be startling. It also invents. Give it small text and it will produce confident letters that are the wrong letters. Give it a face forty pixels wide and it will give you back a person who does not exist.
There is no such network in this build, and the “Model” entry in the method list stays greyed out rather than pretending otherwise. We would rather show you a row you cannot press than hand you a button that quietly runs Lanczos and calls it AI. What we can tell you honestly is that on a clean, sharp source at 2×, the gap between careful arithmetic and a trained model is a great deal smaller than the marketing for either would have you believe — and the arithmetic never invents a letter that was not there.
Clean first, then enlarge
The order of those two words is the whole point of the control. An enlargement multiplies what is already in the file, so a JPEG saved at quality 55 hands you its eight-by-eight block grid and its blotchy colour channels at four times the size, welded into the result where nothing can reach them.
The clean-up pass runs first and is deliberately narrow. It smooths steps that land exactly on a block boundary, and only when they are small enough to be an artefact rather than a real edge; it blurs the two colour-difference channels and leaves brightness alone. It is not a general denoiser, because over-cleaning before an enlargement is what produces the smooth plastic look people complain about afterwards. Light is usually enough. Strong is for a picture that has been through three chat apps.
What it accepts
JPG, PNG, WebP, AVIF, TIFF, BMP and ICO decode natively, using whatever your browser already knows. A HEIC — what an iPhone shoots unless you told it otherwise — needs a two-megabyte WebAssembly decoder, and that arrives only at the moment you drop one, so nobody who opens this page with a JPG ever pays for it. An animated GIF or WebP hands over its first frame and nothing else; the other frames are not lost, they are simply not what a still enlarger is for.
| Limit | Laptop | Phone |
|---|---|---|
| Longest edge of the result | 16,000 px | 8,192 px |
| Total pixels in the result | 80 megapixels | 24 megapixels |
| File you can open | 120 MB | 120 MB |
| Picture you can open without a lighter copy | 32 megapixels | 16 megapixels |
Those ceilings are what a browser canvas will actually hand back, not a number we picked to look generous. When a factor would break one, the chip greys out and the tool names the factor that still fits before you commit to anything.
What the file costs on the way out
Pixel count goes up with the square of the factor, and file size follows it. A 1,000 × 700 photograph holds 700,000 pixels; the same picture at 4× holds 11.2 million, and at 8× it holds 44.8 million. None of that is compressible in the way the original was, because a good enlargement produces smooth gradients where the source had hard little steps — which is exactly the kind of data a PNG encoder cannot fold up.
| Saved as | Roughly | What the format does to it |
|---|---|---|
| PNG at 4× | 10–18 MB | Nothing at all — every pixel the enlarger produced |
| JPG 95 at 4× | 1–3 MB | A second gentle round of the artefacts you cleaned off |
| PNG at 8× | 40–70 MB | Nothing, at a size some upload forms will refuse |
| JPG 95 at 8× | 3–8 MB | Re-encodes the guess, which is the least honest file here |
PNG is the default for that reason and not out of purism: you waited for careful arithmetic, and handing the result straight to a lossy encoder undoes a visible part of it. Pick JPG when something at the other end has a limit — a form, an email, a portal — and pick it knowingly rather than because it was already selected.
Where this falls down
Two limits are worth knowing here before you lean on a result.
- The detail in the result is arithmetic, not evidence.Every method here interpolates between pixels that exist. None of them can tell you what the number plate said, whose face that was, or what the sign read. If the answer matters — a claim, an identification, a document — the enlargement is not the answer, and a sharper-looking enlargement is not a better one.
- The camera details in your file do not survive the save.The result is drawn fresh onto a canvas and encoded from there, which is what makes the arithmetic reproducible and also what drops the date, the camera, the lens and the GPS tag. If that information matters to you, keep the original file alongside the enlargement rather than replacing it.
The questions we get
- Can a picture really be enlarged without losing quality?
- Not in the sense the phrase implies. Quality here means recorded detail per pixel, and enlarging always lowers it — the same information is simply spread over more pixels. What a good enlargement buys you is that the spreading is done well: edges stay edges instead of becoming ramps, and the result holds up at the size you actually need it. That is worth having. It is not the same as getting detail back.
- Which factor should I pick?
- The smallest one that reaches the size you need. Every step up multiplies whatever is wrong with the source as well as what is right, so 2× on a sharp photo looks excellent, 4× looks good, and 8× looks like a painting of the photo. If a printer or a form asked for a number, work back from that number rather than reaching for the biggest chip.
- Why does my enlarged photo look plasticky?
- Usually the clean-up pass was set too high, or the source had already been through a smoothing filter somewhere else. Drop the clean-up to Light or Off and try Mitchell instead of Lanczos: you will trade a little crispness for texture that still reads as skin or fabric rather than putty.
- What happens to the picture I open?
- It is decoded into memory in this tab and stays there. Nothing is sent anywhere, nothing is written to disk unless you press Save, and closing the tab is the whole of the clean-up. There is no account, and there is nothing on our side to hold a file even if we wanted one.
- Does it work on a phone?
- Yes, with a lower ceiling. Mobile browsers give a page far less room for a large canvas and fail silently rather than complaining, so the factor chips grey out sooner there. If 8× is unavailable on your phone and available on a laptop, that is why.
Open at the number you were given
If a printer, a portal or a person asked for a specific multiplier, these open straight at it, with copy written for that case rather than the general one.
- Double the sizeThe factor with the least to apologise for. Opens at 2× on a sharp source.
- Four times overThe usual answer when a picture is close but not close enough. Opens at 4×.
- Eight times overThe factor most likely to disappoint, offered anyway with the reasons attached.
- A rough small photoOpens with the clean-up pass on, because a 600-pixel JPEG carries more than a picture.
Reading, if you want the reasoning
Three essays sit behind this tool, and each one exists because a question kept arriving that a tooltip could not answer. The index below says which is which; the guides themselves leave the losing cases in.
- The reasoningThree long answers to the questions people ask before they trust an enlargement.
- What enlarging can and cannot get backWorked through at 2×, 4× and 8×, with the part that is a guess named as one.
- Where a trained model beats arithmetic, and where it doesn'tThe case for the classical path, made fairly, including the cases it loses.
- Enlarged and still softSix reasons a bigger picture looks worse, and which one you actually have.