Short answer
To upscale an image without losing quality, first find the largest original you have, because nothing beats pixels that were actually recorded. Then pick the engine by the kind of picture: a trained model for photographs, faces, fabric and anything textured, and a classical filter such as Lanczos for logos, screenshots, diagrams and text, where an invented texture is worse than none. Enlarge by a whole factor, two or four rather than 2.3, and stop at the size the job needs.
Enlarging a picture used to mean accepting that it would look worse. That is no longer true, but the reason people are still disappointed is that the two tools for the job are good at opposite things, and most services offer only one and do not say which.
This guide is the practical version: what to do first, how to choose, what settings actually matter, and how to tell whether the result is any good.
Start with the biggest original you have
This is dull advice and it beats everything else in this guide.
The file you are holding has probably been resized on the way to you. WhatsApp and Messenger reduce photos by default. Instagram and Facebook resize on upload. Email clients offer to shrink attachments. A website’s thumbnail is not the picture, it is a thumbnail. Every one of those steps threw away pixels that were genuinely recorded, and ten minutes of asking the photographer, the supplier or your own phone’s library often produces a file four times larger than the one you were about to enlarge.
Check the camera roll rather than the shared album, the original email rather than the forwarded one, and the supplier’s asset pack rather than the product page.
Work out the size the job needs
Do not enlarge to a round number for its own sake. Work back from the output, as described in image resolution explained:
- Print: inches on paper times 300 dots per inch. An A4 page is about 2480 by 3508 pixels. A poster seen from two metres is fine at half that, and upscaling an image for print has the full table.
- Screen: the width the picture will occupy in CSS pixels, doubled for dense displays.
- Marketplace: whatever the platform’s own minimum is, which is usually published.
Then round up to the next whole factor. If your original is 900 pixels wide and you need 2400, ask for three times rather than 2.67. Models are trained at whole factors, and a whole factor is also easier to reason about.
Choose the engine by the kind of picture
This is the decision that determines whether you are pleased.
A trained model has learned what detail looks like. It has seen millions of pairs of large and small patches of photographs, so when it meets a smudge that used to be an eyelash it draws an eyelash. On photographs, portraits, animals, food, fabric and landscape it produces a result that a classical filter cannot approach.
A classical filter such as Lanczos reconstructs rather than invents. Every value it outputs is a weighted mixture of values that were really in the picture, so it can never add a texture that was not there. On a logo, an icon, a screenshot, a chart, a diagram or anything containing text this is exactly what you want, because a photographic model meeting a perfectly flat fill will often add grain to it, and meeting a clean curve will often add a slight wobble.
A quick rule: if the picture came out of a camera, use the model. If it came out of a drawing program or a screen, use the filter.
What the good tools are doing that the bad ones are not
Three things separate a careful enlargement from a careless one, and none of them is the model.
Arithmetic in linear light. The numbers in an image file are not amounts of light: sRGB is a curve. Averaging 0 and 255 in storage gives 128, which is much darker than the half-way light your eye expects, so mixing pixels in storage darkens every edge in the picture. On fine detail the whole image goes muddy. A good enlarger takes the values out of the curve before mixing and puts them back afterwards.
Premultiplied alpha. If the picture has transparency, resampling the colour channels without accounting for alpha drags the colour of fully transparent pixels into the visible edge. That is the grey or black halo people see around an enlarged cutout. The fix is to multiply the colour by the alpha before any mixing happens. White halo around a cutout covers the same problem where it more often starts.
A real kernel. A browser scaling an image uses a two pixel average, which is fast and soft. Lanczos uses a windowed sinc across six or more pixels per axis, which is what image editors use for enlarging. That difference alone is visible at 200 percent.
If a tool gets those three right, its classical output is already better than what your document app would have produced, before any model is involved.
Settings that matter, and settings that do not
Factor matters. Ask for what you need.
Engine matters, as above.
Back-projection, where a tool shrinks its own answer back down, compares it with your original and pushes the difference back in, is a genuine gain on a classical enlargement and costs nothing in fidelity, because every correction is derived from your own pixels. It is on by default in the tool here.
Sharpening after enlargement is worth having only if it knows where the edges are. A plain unsharp mask lifts the noise in a sky as enthusiastically as the detail in an eyelash, which is why “sharpen” so often means “grainy”. An edge-masked version leaves flat areas alone.
Denoise before enlargement is occasionally useful on a very noisy phone photo, because a model will happily enlarge the noise into texture. Most of the time it costs more detail than it saves.
Judge an enlargement honestly
- Enlarge your picture by four times.
- Zoom the result to 100 percent, not to fit. Fit hides everything.
- Find an area of fine detail: hair at the temple, the weave of a jumper, the grain of wood, small text.
- Compare it against the original scaled up by the same amount in any ordinary viewer.
You should see: At 100 percent, real texture where the ordinary enlargement has smooth mush, and clean edges rather than a halo.
If you do not: If the result looks waxy or plastic, the factor is too high for this original. Drop from four times to two and look again.
Enlarging a picture that has transparency
A cutout is a common thing to want larger, and it is the case most tools handle worst, because a model has three channels and an alpha channel is a fourth.
What should happen is that the transparent area is filled with the colour of the nearest visible pixels before the model runs, so the network does not see a black wall beside your subject and draw a dark fringe along it, and the alpha channel is enlarged separately with a proper filter and put back afterwards. Done that way, a cutout comes out larger with its soft edge intact.
If you are producing the cutout as well as enlarging it, do the background removal first at the original size and enlarge afterwards. Removing the background from an enlarged picture means the edge detection is working on invented detail.
What to save it as
PNG for artwork, logos, screenshots and anything with transparency. It is lossless, so it will not add compression artefacts on top of your enlargement.
JPG at quality 90 or above for photographs. An enlarged photograph is a big file and JPG is far smaller for the same visible quality. If the enlargement is going to a printer, ask them which they prefer.
WebP for the web, where it is usually smaller than both. PNG versus WebP for websites covers the trade.
A worked example
A supplier sends a product photo at 800 by 800 pixels. It has to go on a product page where it is displayed at 600 CSS pixels, and into a printed catalogue at 90 mm square.
The web need is 600 times two, so 1200 pixels: one and a half times the original. The print need is 90 mm, which is 3.54 inches, times 300 dots per inch, so about 1063 pixels. Both are covered by a single two times enlargement to 1600 square, with room to spare.
That is worth noticing, because the instinct is to ask for four times and it would have been wasted: a 3200 pixel file would be downsized again by the browser and by the printer, and every one of those invented pixels would be thrown away. Ask for the next whole factor above what you need and stop there. If the same supplier photo had to fill an A4 page, 2480 pixels, the answer would be four times, and at that point it is worth looking at the result at 100 percent before committing to it.
When not to enlarge at all
If the picture is blurry rather than small, enlarging it produces a larger blurry picture. If it is a logo, the right answer is a vector rather than more pixels. If it is a scan, rescanning at a higher resolution takes two minutes and beats any model. And if the picture is going somewhere it will be seen small, using it at its own size is not a compromise, it is the correct choice.
The free way
Enlarge it in your browser, with a choice of engine
Drop a picture, choose two to eight times, and pick the AI model for photographs or the Lanczos engine for logos and screenshots. The result is shown against the browser’s own enlargement with a divider you drag, so you can judge it at 100 percent before you save. No watermark, no size cap, no account, and the model runs on your own graphics chip rather than on a server.
The steps, in short
- Find the biggest original you have. Check the camera roll, the photographer, the supplier or the original email rather than the copy that has been through a chat app. Any pixels that were genuinely recorded beat any that are invented.
- Work out the size you need. For print, inches times 300. For a screen, the display width in CSS pixels times two. Round up to the next whole factor of your original.
- Choose the engine. A model for photographs, faces, animals, fabric and landscapes. A classical filter for logos, icons, screenshots, diagrams, charts and anything with text in it.
- Enlarge and compare at 100 percent. Look at an area of fine detail such as hair, fabric weave or small text, at full zoom, against the original enlarged normally. That is the only comparison that tells you anything.
- Save as PNG for artwork, JPG for photographs. PNG is lossless and keeps transparency. A JPG at high quality is far smaller for a photograph and holds no transparency.
Questions
How do I enlarge a picture without it going blurry?
Use a tool that reconstructs the picture rather than stretching it. Every browser and document app scales with a two pixel average, which is fast and soft. A proper resampler or a trained model gives a much better result at the same size. On top of that, do not ask for more than the job needs: four times a small photo for an A4 print is reasonable, eight times for a screen is not.
Which is better, AI upscaling or Lanczos?
It depends entirely on the picture. On a photograph the model wins clearly, because it draws texture it has learned rather than smearing what it was given. On a logo, a screenshot or a chart the classical filter wins, because the model will invent texture along an edge that is meant to be perfectly clean.
How many times can I enlarge an image?
Two to four times is the comfortable range for anything that will be looked at closely. Six and eight times are useful when the result is seen from a distance, such as a banner or a backdrop. Beyond that the output is mostly the tool's opinion rather than your picture.
Does upscaling work on screenshots and text?
Yes, but choose the classical engine. Text has hard edges and flat fills, and a photographic model tends to add grain and wobble to letterforms. Lanczos in linear light keeps the shapes clean.
Will upscaling fix a blurry photo?
No. Blur from camera shake or missed focus is a different problem from a shortage of pixels, and enlarging makes it larger rather than better. Check which one you have before reaching for an upscaler.
Do upscalers upload my photo?
Most do, because they run the model on a server. The upscaler on this site runs the model in your browser on your own graphics chip, so the weights are downloaded to you and the picture is never sent anywhere.