TL;DR: so what to use?
- Which to use: for everyday upscaling our first choice is the MegaPotato AI upscaler (megapotato.app): in our tests its quality is comparable to Topaz Wonder 3.5, and at 100 photos a month it costs 6.5× less than Wonder 3.5 through Topaz's own API (2.9× less than on fal.ai, the full price comparison is below). It is strong on all the kinds of photos we tried, works right in the browser and needs no subscription. Which one ↓
- Real photos: old phone shots, noisy pictures and compressed copies MegaPotato handled consistently. Crystal can be very faithful and was close in the controlled test, but on real low-quality photos it struggled much more: MegaPotato 67.2, Wonder 3.5 62.8, Crystal 46.1. Results by kind ↓
- Faces: on the full test, 567 faces, the blind AI judge gave MegaPotato the highest face score. On similarity to the originals, as face-recognition models measure it, Wonder 3.5 and Crystal are higher. Natural-looking detail and a preserved identity are, obviously, different things, so we show both. Faces up close ↓
- What backs this up: MegaPotato scored highest overall both in the core test of 18 tools and settings and in the wider test of 135 photos and 567 faces. The exact model matters: the other five Topaz models we tested were well below Wonder 3.5 on the same small, damaged inputs. The scoreboard ↓
- Price per photo: at 100 photos a month, averaged over 2.7, 16 and 48 MP outputs, MegaPotato costs $0.083 with its batch discount. Topaz Wonder 3.5 costs $0.54 through Topaz's own API, where the plan starts at $50 a month ($0.24 through fal.ai, pay as you go): a 6.5× difference (2.9×). MegaPotato's chips never expire. Prices and conditions ↓
- Pictures first? Every example shows the input, the original where there is one and the tools' results, zoomed in. Compare the small faces, textures and text: that is where the differences that matter for your photos are. Detailed examples ↓
Image upscaling is one of the oldest tasks in computer vision. Rare is the spy movie without this scene: an operator marks some area, enlarges it, zooms in and, with one magic button, gets a super-high-res face of the subject. From classical computer vision in the pre-neural-network era to the most advanced multimodal LLMs of today, researchers keep trying to solve this simple-looking and, in reality, almost unsolvable task.
In 2025 there was an unbelievable rise of general-purpose image editing models of all kinds, mostly based on or exploiting multimodal LLMs and diffusion models. The exponential growth in quality started with FLUX.1 Kontext and was marked out by the Nano Banana release. These models can perform any transformation of an image that can be expressed with a text instruction, from the most precise to the most abstract. But however good they were at general tasks, they still lacked precise transformations, preserving the original image and strict prompt following. Especially noticeable were the changes of colours and, most important, of people's identities by the proprietary chatbots (ChatGPT, Gemini and the like). Despite this, back then it looked like all image transformation tasks would be solved in the shortest time.
More than a year has passed, models have improved, preserving the original has become much better, but systematically the same types of problems remain. Image upscaling (super-resolution) is an especially demanding task here: while general editing can often allow some degree of fantasy ("add a cat": which breed and the other parameters are not specified, just a cat), upscaling does not allow any changes of the original. It doesn't matter whether one wants to upscale a photo from a phone for a poster or make a 4K image from an AI-generated picture: usually they don't mean to change anything but the details and the resolution.
For illustration, we asked ChatGPT to make a small photo from a street race four times bigger and to change nothing (the picture). It came back sharp, clean and bright. But look at the runner's number. The real bib says LUT 3029. ChatGPT drew SEINE-MARNE 77, a French county near Paris, and replaced "trucks" on the shirt with another word. None of it is in the photo. Gemini wrote LUT 2022. From the same small copy, one upscaler in our test read all four digits (more tools on this runner).
What every tool got, the original photo, ChatGPT's result.
This is what general AI image editors do as upscalers now. It doesn't matter how exactly you ask and design the prompt: they don't just enlarge the pixels, they try to guess what should be there and paint it in. Often the guess is right. Sometimes it is a different word, a different colour or even a different face. At the same time the results usually look very nice and aligned with the human understanding of aesthetics.
Meanwhile, many specialized image upscalers are on the market. Because the task is historically old, the number of such services is enormous, and it is very hard to find a way through all the models from such different epochs. So we built the most complete upscaler test we know of, with the most popular, successful and precise methods.
The short answer is above. The rest of the article is the precise and reproducible narration, built this way: a core test: 18 tools and settings, the same small, damaged copies of 16 photos, and every result checked against the full-size original that no tool ever saw. Then the full test: three leaders on 135 photos with 567 faces, with every judge on every result and every metric that can be measured on it. Then a set of extremely hard cases: print scans, heavy JPEG, noise, old prints, statues and paintings. Finally, we provide detailed prices at 10, 100 and 1 000 photos a month. The pictures are here ↓
Quick answers.
- What is an AI image upscaler? A tool that makes a picture bigger and has to guess the detail that is not in the pixels.
- What does 4× mean? Four times wider and four times taller: 504 × 336 becomes 2016 × 1344.
- Can a photo be upscaled with nothing changed? Not by any tool here.
- Is there a free one? Upscayl: free and offline, but not for small faces.
- Is it enough for print? 2016 × 1344 prints at about 17 × 11 cm at 300 pixels per inch.
- Need it sharper, not bigger? That is an enhancer, not an upscaler. In MegaPotato the mode is called Refine, and we did not test it here.
The scoreboard: 18 AI image upscalers and settings compared#
Every tool made the same 16 small photos (504 × 336 pixels, lightly damaged) 4× bigger, and every result was checked against the original. The total is out of 100. The formula and every part of it are in How we tested.
| click for all metrics | ||||||
|---|---|---|---|---|---|---|
| MegaPotato | 82.6full test 78.8 | 7.00 full test 7.13 | no chip packs | First on both tests. The cleanest real low-quality, night and AI photos. Natural faces | Smooths skin a little. Small faces drift more from the person than Wonder's and Crystal's. Made a woman in a damaged photo younger | $0.083 web app |
| Topaz Wonder 3.5 | 81.9full test 75.7 | 7.09 full test 6.99 | no fal.ai yes Topaz API | The most faithful faces. The only one to read 3029. Best on web-video frames | API only, the apps have Wonder 3. Some ages changed. Treats statues and dolls as people | $0.24 fal.ai |
| Let's Enhance | 81.8 | 6.81 | no packs | The faces the face judge liked most. Nothing invented | Web only. Wrong digits. Not run on the full test | $0.22 web |
| Crystal | 80.8full test 69.5 | 6.78 full test 5.97 | no API yes website | The closest to the originals by the image metrics. Best with no people | Weak on noise and damaged old prints (46.1 on real low-quality photos). See-through sunglasses. Distorted a statue | $0.35 API |
| ChatGPT, strict prompt | 73.2 | 6.16 | no API or app | Good-looking results (MUSIQ 61.2) | Writes new words. Shifts colours. New objects. Stops at about 8 MP | $0.16 API |
| ChatGPT, simple prompt | 73.2 | 5.81 | no API or app | The best-looking results, level with Topaz Bloom 2 (MUSIQ 63.6) | Blue sky and green trees added. Younger faces. New words | $0.16 API |
| Gemini app | 70.9 | 6.66 | no free app | Careful with faces and colours. Cheap | Soft. Small files (1264 px in the free app). Clean, wrong numbers | $0.11 API |
| Topaz Standard MAX | 69.9 | 5.78 | no fal.ai yes Topaz API | Clean on big, sharp things | Plastic small faces (7 of 67 changed). Removed a mask | $0.45 fal.ai |
| Topaz Bloom 2 | 68.1 | 5.81 | no fal.ai yes Topaz API | Sharp and lively, made for AI art | Redraws faces (same-person score 0.26). New text. Brighter colours | $0.91 fal.ai |
| Topaz Low Resolution V2 | 65.1 | 5.47 | no fal.ai yes Topaz API | Cheap. Clean edges | Garbled text. 9 of 67 faces changed. Removed a mask | $0.11 fal.ai |
| Recraft Crisp | 63.9 | 5.42 | no API | The cheapest API. Fine on AI art and clean edges | Distorted small faces (5 of 67). No size setting | $0.033 API |
| Topaz Standard V2 | 62.6 | 4.89 | no fal.ai yes Topaz API | Cheap. Clean edges | Soft, plastic small faces (8 of 67 changed). Removed a mask | $0.11 fal.ai |
| Upscayl (Standard) | 59.7 | 5.12 | no free | Free, offline, private. Invents no words | Distorted faces (13 of 67). Blurred text | free own GPU |
| Krea Enhance | 53.7 | 4.12 | no up to 2K yes above 2K | One toolbox, partner models included | Far from the real faces (21 of 67 changed). Lines across faces. Chalk turned grey | $0.21 Pro plan |
| Magnific Precision V2 | 53.5 | 5.20 | no ComfyUI yes own site | Sharp. Keeps the scene | Two 2× passes (the node gives 2×). Grain and crunchy edges on everything. Far from the originals (LPIPS 0.49) | $1.13 ComfyUI |
| Magnific Creative | 46.3 | 2.34 | no ComfyUI yes own site | Rich new pictures, for concept art | A new scene. 41 of 67 faces changed. Invented words everywhere | $1.02 ComfyUI |
| Topaz High Fidelity V3 | 34.1 | 4.20 | no fal.ai yes Topaz API | Made for big, sharp inputs | Barely changes a small photo. A thin black edge | $0.11 fal.ai |
| Recraft Creative | 33.3 | 2.03 | no API | – | A new scene. 51 of 67 faces changed. Nonsense words | $2.05 API |
Total: out of 100, and under it, in grey, the same tool's total on the full test (135 photos, the three tools we ran there). Opus 5.5 judge: 0–10, with the full test's score under it. Needs a plan?: whether a monthly subscription is the only way to use that route at all, given per route where a tool has two (red = yes). Krea's and ChatGPT's free tiers are limited. Pros and cons: what the two tests and the hard cases showed, in short. The detail is in The tools, one by one. *Price per photo: the average of three sizes at 100 photos a month, with the way to buy it at that price under it. Topaz's own API costs more than fal.ai. MegaPotato's API has no batch discount and comes to $0.104 (What it costs). Hover a column name for what it measures. All of them are in What each measure is. Click a row for every measure, the full test's included.
The top four are within two points. MegaPotato (82.6), Topaz Wonder 3.5 (81.9), Let's Enhance (81.8) and Crystal (80.8) are a group of their own. The next tool, ChatGPT with a strict prompt (the prompts are in Settings and prompts), is eight points behind (73.2). So we decided to proceed with three of them and make a much wider, harder and more challenging set.
Image quality vs fidelity: aesthetics and preserving the original#
We used mostly real photos in this test. That's not only because it is one of the most important cases, but also because such photos are the hard case. With AI art, a new texture often just looks like more art. With a real photo there is a reference, obviously. So every mistake is easy to see: a new face, a new word, a colour that was not there.
Scatter plot of 8 points: Looks good (MUSIQ) against Distance from the original (LPIPS). Distance from the original (LPIPS) from 0.193 to 0.287. Highest Looks good (MUSIQ): ChatGPT, simple prompt (63.6); lowest: Gemini (50.4). Highlighted: MegaPotato (59.9 at 0.207).
| Distance from the original (LPIPS) | Looks good (MUSIQ) | |
|---|---|---|
| ChatGPT, simple prompt | 0.287 | 63.6 |
| Topaz Wonder 3.5 | 0.211 | 61.7 |
| MegaPotato | 0.207 | 59.9 |
| Crystal | 0.193 | 59.7 |
| Upscayl (Standard) | 0.240 | 55.7 |
| Topaz Standard V2 | 0.248 | 54.9 |
| Recraft Crisp | 0.222 | 53.6 |
| Gemini | 0.242 | 50.4 |
Average scores over the 16 photos of the core test for eight of the settings. Left means closer to the original (a lower LPIPS, one of the closeness measures in our total), up means a higher "looks good" score (MUSIQ). The axis starts near the closest tool, not at zero: the original photos sit at 0 by definition, and they score 53.3 on MUSIQ, below most of the results.
Obviously, ChatGPT has the most aesthetic results, which are, no surprise, among the farthest from the original. Specialized tools are close to the original but less aesthetic (it also depends on the input).
The full test: MegaPotato vs Topaz Wonder 3.5 vs Crystal on 135 photos#
The full test went to three of the four leaders of the core test: MegaPotato, Topaz Wonder 3.5 and Crystal. (Let's Enhance, third in the core test, is web-only, we did not run it on the 135 photos.)
The sample: 135 photos and 567 faces.
- 14 photos from the core test, with the original.
- 16 AI-generated photos (FLUX.1 [schnell]) and 13 photos with no people (animals, nature, buildings), shrunk and damaged the same way as the inputs of the core test (a little blur and noise, saved as a JPEG twice), with the original.
- 29 real low-quality photos as they were taken: old phone photos in low light, early digital cameras, messenger copies, stage and party shots. No high-resolution original exists.
- 19 old prints and film scans with dust, fading and grain, made smaller for the test. No clean original exists.
- 44 natively small photos fed exactly as they were posted: 37 Flickr photos from 2001–2007 and 7 frames from 2005–2009 web videos. No high-resolution original exists.
Across them: people (103 photos), crowds and groups (30), faces (567 faces: 348 of them 10–24 pixels wide in the input, 173 of 25–59 pixels, 46 larger), signs and text (20), night, stage and low light (24), old photos (21), AI images (16), animals (20), nature (26), cities, buildings and rooms (55) and web-video frames (7). We left out still lifes (products and food): this sample is about people, places, animals and nature.
Where there is no clean high-resolution original, the judges compared each result with the input, and only the measures that need no original were used: closeness to the original (LPIPS, A-FINE, same-person score) comes from the 43 photos that have one. Each measure is averaged over the photos it can be measured on, and the total is the weighted sum of these averages. The n column says how many photos or faces each line covers.
| Measure | MegaPotato | Topaz Wonder 3.5 | Crystal | n |
|---|---|---|---|---|
| Total, 0–100 | 78.8 | 75.7 | 69.5 | 135 photos |
| Opus 5.5 judge ↑ | 7.13 | 6.99 | 5.97 | 135 photos |
| Qwen3.8, zoomed areas ↑ | 7.24 | 7.21 | 6.83 | 135 photos |
| Qwen3.8, faces ↑ | 6.69 | 6.59 | 6.24 | 567 faces |
| Same-person score ↑ | 0.518 | 0.558 | 0.556 | 138 faces |
| Different person, % ↓ | 1.1 | 1.2 | 2.8 | 567 faces |
| Face quality (eDifFIQA) ↑ | 0.522 | 0.525 | 0.484 | 567 faces |
| LPIPS ↓ | 0.205 | 0.210 | 0.191 | 43 photos |
| A-FINE ↓ | 17.0 | 34.8 | 35.4 | 43 photos |
| MUSIQ ↑ | 52.4 | 52.5 | 45.7 | 135 photos |
| NIQE ↓ | 3.98 | 3.95 | 4.01 | 135 photos |
| DISTS ↓ | 0.140 | 0.125 | 0.119 | 43 photos |
| DreamSim ↓ | 0.0166 | 0.0121 | 0.0107 | 43 photos |
| DINOv2 ↑ | 0.966 | 0.975 | 0.976 | 43 photos |
| TOPIQ-FR ↑ | 0.696 | 0.705 | 0.703 | 43 photos |
| Colour ΔE ↓ | 2.42 | 2.31 | 2.11 | 43 photos |
| MANIQA ↑ | 0.325 | 0.344 | 0.281 | 135 photos |
| CLIP-IQA+ ↑ | 0.512 | 0.537 | 0.466 | 135 photos |
| TOPIQ ↑ | 0.442 | 0.469 | 0.403 | 135 photos |
The first line is the total and the ten under it are its parts. The eight behind the button are checks, not in it. A measure's name is explained on hover; all the definitions are in What each measure is.
The full test by tool: the same numbers, one row per tool
| Tool | Full test, total | Opus 5.5 judge (full test) | Qwen3.8, zoomed areas (full test) | Qwen3.8, faces (full test) | Same-person score (full test) | Different person, % (full test) | Face quality (full test) | LPIPS (full test) | A-FINE (full test) | MUSIQ (full test) | NIQE (full test) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| MegaPotato | 78.8 | 7.13 | 7.24 | 6.69 | 0.518 | 1.1 | 0.522 | 0.205 | 17.0 | 52.4 | 3.98 |
| Topaz Wonder 3.5 | 75.7 | 6.99 | 7.21 | 6.59 | 0.558 | 1.2 | 0.525 | 0.210 | 34.8 | 52.5 | 3.95 |
| Crystal | 69.5 | 5.97 | 6.83 | 6.24 | 0.556 | 2.8 | 0.484 | 0.191 | 35.4 | 45.7 | 4.01 |
One row per tool: the total and its ten parts, as the scoreboard's detail panels list them. The table above has the same numbers, with the eight checks.
Results by kind of photo. The same formula, run on each part of the sample on its own. Where a kind has no faces or no originals, those parts are left out and the other weights are scaled up to add to 100 %, so compare the tools within a kind, not one kind with another:
| Core-test photos | 14 | 82.9 | 81.7 | 80.5 |
| AI-generated photos | 16 | 79.2 | 76.1 | 76.1 |
| No people | 13 | 72.8 | 72.6 | 74.2 |
| Real low-quality photos | 29 | 67.2 | 62.8 | 46.1 |
| Old prints and film | 19 | 73.9 | 74.0 | 73.3 |
| Natively small photos (Flickr, web video) | 44 | 75.5 | 75.4 | 61.9 |
The same, by content (people, text, night, animals and more)
| People | 103 | 78.6 | 75.2 | 68.2 |
| Crowds and groups | 30 | 80.0 | 76.1 | 69.7 |
| Faces (10 px and up) | 103 | 78.9 | 75.2 | 68.3 |
| Signs and text | 20 | 81.6 | 78.5 | 73.9 |
| Animals | 20 | 75.4 | 74.5 | 66.3 |
| Nature | 26 | 82.7 | 81.0 | 77.2 |
| Cities, buildings, rooms | 55 | 79.6 | 76.8 | 71.5 |
| Night, stage, low light | 24 | 70.1 | 64.8 | 55.2 |
| Old photos | 21 | 76.9 | 76.5 | 74.7 |
| AI images | 16 | 79.2 | 76.1 | 76.1 |
| Web-video frames | 7 | 65.5 | 67.6 | 42.7 |
| Photos with an original | 43 | 79.8 | 78.4 | 78.4 |
What the numbers say:
- MegaPotato leads the full test, by 3 points. It is especially good on real low-quality photos (67.2 against 62.8 for Wonder and 46.1 for Crystal, 29 photos), on night and stage light (70.1 against 64.8 and 55.2, 24 photos), on AI images, on text and signs, and on crowds.
- Wonder 3.5 is level with it on old prints (74.0 against 73.9, 19 photos) and on the natively small photos (75.4 against 75.5, 44 photos), and ahead on web-video frames (67.6 against 65.5, 7 frames). Crystal leads only on photos with no people (74.2, 13 photos), and falls far behind on real low-quality photos.
- The blind Opus 5.5 judge agrees with the order: MegaPotato 7.13, Wonder 3.5 6.99, Crystal 5.97 of 10 (135 photos), and so does the Qwen3.8 judge on zoomed areas (7.24, 7.21, 6.83).
- Faces: the same split as in the core test. Wonder 3.5 and Crystal stay closest to the person in the original, as measured by an ensemble of face-recognition models. MegaPotato's faces got the best scores from the Qwen3.8 face judge and were the least often called a different person.
- A-FINE gives MegaPotato its biggest lead, because it finds MegaPotato's results more natural. A-FINE (CVPR 2025)[1] judges two things, how close a result is to the original and how natural it looks, and when a result looks more natural than the original it gives naturalness a much bigger weight. Taken apart on the 43 photos of the full test that have an original, A-FINE found MegaPotato's result more natural than the original photo on all photos.
A still from a 2010 White House web video, 480 × 360 px as published (120 × 90 px of the input)
A still from a 2010 White House web video, published as a photo and counted with the real low-quality photos. MegaPotato makes a sharp, natural face. Wonder 3.5 and Crystal stay blurry. Real low-quality photos were the kind where MegaPotato's lead was widest.
Image: Executive Office of the President, public domain
A cat, 640 × 480 px, 2004 (170 × 128 px of the input)
Fish in an aquarium, 640 × 480 px, 2005 (200 × 150 px of the input)
A singer at a concert, 1280 × 960 px, 2006 (110 × 83 px of the input)
Natively small photos (no real high-res original exists), fed as they were posted. On the cat, Crystal keeps the speckle of the old JPEG file, Wonder 3.5 and MegaPotato clean it. On the fish, MegaPotato gives the crispest scales and eyes, Wonder is clean but softer, and Crystal keeps the noise. On the singer, Crystal stays soft, Wonder and MegaPotato give a clean face. On these 44 photos MegaPotato and Wonder 3.5 tied (75.5 and 75.4), and Crystal stayed the softest (61.9).
Photos (Flickr, CC BY 2.0, creativecommons.org/licenses/by/2.0): "Cat | In your face cat." by Jennifer Kramer; "I Want This Guy's Job!!!" by James; "Elwood Caine concert at Herr Nilsen" by Henning Klokkeråsen. Cropped and upscaled.
How we tested the AI upscalers#
Basically, all test photos fall into two categories:
- High-res, high-quality photos that we degraded with different methods (JPEG, blur, noise and so on) and resized to a low resolution.
- Natively low-res photos.
Left: what every tool got in the core test, a small 504 × 336 copy (shown here enlarged). Right: the original, which no tool ever saw. We used it only as the answer key.
Zoomed in:
The same crowd, zoomed in. In the copy every tool got, these faces are only about 20–26 pixels wide. The upscaler must guess the rest.
The core test (16 photos, 18 tools and settings).
- The same damaged input for everyone: 504 × 336 pixels, a little blur and noise, saved as a JPEG twice, like a photo that has been shared a few times. The AI image was only shrunk.
- The same job for everyone: 4 times bigger (2016 × 1344). Topaz, Crystal, Let's Enhance, MegaPotato, Krea, Upscayl and Magnific were set to 4×. Recraft has no size setting but returned exactly 4×. ChatGPT and Gemini can't be told a size, so we scaled their results to 2016 × 1344.
- Default settings, one run per photo. Topaz: six models. ChatGPT: a simple and a strict prompt. We did not change any default parameters to keep the test clean.
Eleven of the 16 photos of the core test (the originals). All 16 are linked in photos.csv. The tools got only small, damaged versions.
The full test (135 photos, 3 leaders). The photos are described above. Every result was made 4× bigger in one run: MegaPotato in its web app, Wonder 3.5 and Crystal through fal.ai with their default settings.
The judges, both blind. Using strong multimodal AI models as graders[2] is an established method in AI research[3]. We used two different ones, so that one model's taste can't decide the result.
- Claude Opus 5.5 (max effort)[4] saw every result under a random letter, as a whole picture and zoomed areas, next to the original (or the input, where no original exists), and gave a score from 0 to 10. One result per photo was shown twice to check its consistency.
- Qwen3.8[5] (27B) scored zoomed areas and every face next to the original, on the same 0–10 scale, and answered for every face: is it still the same person?
The measurements. Every face was found once on the original with SCRFD[6] (on the enlarged input where there is no original) and cut out the same way from every result, so a face a tool lost can't escape the test.
- Same person? The average similarity from four face-recognition models (three on most faces): ArcFace[7] (trained on Glint360K[8]), MagFace[9], AdaFace[10] (trained on WebFace12M[11]) and AuraFace[12] (1 = the same face, different people score about 0–0.3).
- Face quality: eDifFIQA[13] (the fast successor of DifFIQA[14]), which scores how clean and recognisable a face is, without the original.
- Closeness to the original: LPIPS[15] and A-FINE[1] in the total; DISTS[16], DreamSim[17], DINOv2[18], TOPIQ[19] and the CIEDE2000 colour difference[20] as checks.
- Does it look good? (no original needed): MUSIQ[21] and NIQE[22] in the total, MANIQA[23], CLIP-IQA+[24] and TOPIQ as checks.
The metrics ran with the open IQA-PyTorch library[25] and the models' own code.
The total (0–100). 28 % the Opus score, and 8 % each for: the Qwen3.8 score on zoomed areas, the Qwen3.8 score on faces, the same-person score, the share of faces Qwen3.8 called a different person, face quality, LPIPS, A-FINE, MUSIQ and NIQE. The judges' scores are multiplied by 10. Every other measure is scaled so that the best of the 18 tools and settings of the core test gets 100 and the worst 0. The full test uses the same scale, so its totals mean the same thing. A value better than the best of the core test counts as 100, a value worse than the worst as 0. The weights are our choice. Every part is shown, so you can weigh them your own way. We fixed the weights after the core test and before the full test. Opus got the most weight because it is an extremely capable proprietary model, and on the core test its scores matched our own eyes best.
About reproducibility. Before scoring, every result was lined up with the input: a result shifted by more than 0.75 pixels was moved back (Wonder 3.5's results are often shifted by about 0.8 pixels). The numbers repeat: see How to repeat this test.
Before and after: detailed examples#
The crops below are from the core test unless the figure says otherwise.
Faces: which AI upscaler kept the person's identity#
Under every result, in small type: Opus 5.5 judge, the blind judge's score (0–10) for the whole result the crop comes from. face sim., how close that face is to the person in the original as the face-recognition models measure it (0–1, different people score about 0–0.3), where there is a face. MUSIQ, the looks-good score of the whole result (0–100).
A football player from 1914, his face about 25 pixels wide in the copy. Six tools stay close to the original person: Crystal, Let's Enhance, MegaPotato, Topaz Wonder 3.5, Gemini and ChatGPT (ChatGPT also gives the photo a slight blue tint). Krea covers the face with black lines, Upscayl loses it, Recraft Creative and Magnific Creative draw a different man. Note Upscayl's numbers: a face similarity of 0.54, but the Qwen3.8 face judge gave it 2 of 10. A distorted face that keeps the rough shape can fool face recognition. That is why we show both kinds of measure.
On a close portrait almost every tool did a good job: the image carries much more information, so the task is easier.
The easy case: the nose and lips of a close portrait. Crystal and Topaz Wonder 3.5 keep the skin texture closest to the original. MegaPotato smooths it a little. Topaz Bloom 2 redraws the lips, Upscayl looks waxy, and Magnific Creative paints its own freckles.
Small faces, on the other hand, are extremely hard, so the tools split into groups very clearly. In a crowd or an old group photo a face is only 10–35 pixels wide, so the model mostly has to guess.
A woman at the edge of a night-market crowd, her face about 15 pixels wide. Nobody really got her. By the Qwen3.8 face judge Let's Enhance came the closest (6 of 10), MegaPotato and ChatGPT got a 5, Topaz Wonder 3.5 a 3. Quite interesting that even ChatGPT did not succeed in redrawing it. Gemini and Recraft Creative lose the face altogether.
A shopkeeper in 1943. The face is about 16 pixels wide. Topaz Wonder 3.5 and MegaPotato seem the closest in this case: Wonder keeps the face and the moustache but changes the gaze, MegaPotato and Gemini keep the face with a lighter moustache. ChatGPT makes him much younger. Crystal draws a different, thinner face and Upscayl loses the face.
Faces on statues follow the same statistics, it seems. This bust's face is only about 12 pixels tall: an extremely hard sample, so every model failed, each in its own way. MegaPotato and Topaz Wonder 3.5 seem the closest, at least a woman's face in the right place. Topaz Bloom 2 carves a different face, Upscayl and Recraft Creative lose it, and Magnific Creative turns the bust into a vase.
What the face numbers say. The core test has 67 faces on 9 photos, 10–290 pixels wide in the copy the tools got. For each one we measured the same-person score, the Qwen3.8 face judge's score, and whether the judge called it a different person:
- Face recognition and the AI judge disagree in an interesting way. A blurry plain resize gets a high "same person" score, because blur keeps the rough shapes. But the judge discounts such cases. A sharp face has to be guessed, and every guess moves it a little away from the original. That is a trade-off no model can outplay.
- Face quality can't tell the leaders apart. eDifFIQA scored the faces of Crystal, Wonder 3.5, Let's Enhance, MegaPotato and ChatGPT at 0.56–0.59, the same as the real faces (0.58). Distorted or blurry faces scored much lower (Upscayl 0.39, plain resize 0.27). But that is more of a looks metric: it rates how clean and recognisable a face is, not whether it is the same person.
Creative models are a different story. They don't try to keep the person's identity at all in most cases:
The woman in the café photo. MegaPotato and Crystal (and, in the full grid, Topaz Wonder 3.5 and Let's Enhance) keep her. Topaz Bloom 2, Recraft Creative, Krea and Magnific Creative each draw a different woman: the face-recognition models put them at 0.08 to 0.45, against 0.73 for MegaPotato and 0.79 for Crystal.
Text and numbers: the most confident mistakes#
Small text is where upscalers are the most dangerous. The result looks readable, so you believe it.
The runner from the top of the article. The real number is LUT 3029 TP. Topaz Wonder 3.5 and MegaPotato seem the closest in this case: Wonder got the digits right (with 7P for TP), MegaPotato wrote 2029. Crystal wrote 2020, Gemini 2022, and only Gemini read "trucks" on the red band. ChatGPT (strict prompt) wrote "182 XDA 17", and Recraft Creative replaces the bib and the shirt altogether.
Big text is easier than small, obviously:
A sign at the night market. The big characters survive in MegaPotato, Topaz Wonder 3.5 and Crystal. The phone number under them, 0981337668, cannot be read in the input, and no tool brings it back: Wonder 3.5 and Crystal draw Latin letters in its place, MegaPotato made-up characters. ChatGPT redraws the whole sign in a new style, Magnific Creative paints a house on it, and Recraft Creative writes other characters.
A café menu. The words are big enough to read in the small copy, so almost every tool kept them. MegaPotato, Crystal and Topaz Wonder 3.5 seem the closest in this case. Interesting that the colour tones were missed by many models. Krea makes the chalk grey, Magnific Creative rewrites two of the words, and Recraft Creative rewrites the menu as nonsense ("smme", "olwerlo", "Kinierl").
Colours: who kept the colours of the photo#
Ivy on a house in Istanbul. MegaPotato, Crystal and Topaz Wonder 3.5 keep the colours. ChatGPT (both prompts) makes the dark brown-red leaves bright green.
The whole race photo. MegaPotato and Topaz Wonder 3.5 keep the colours, like the other careful tools. ChatGPT with the simple prompt turns the warm light cool and adds a blue sky and green trees at the top. With the strict prompt it keeps more of the warmth but still shifts the colours (colour difference 11.1 and 7.8 against 2.3 for the two above).
Animal fur and AI-generated images#
Cat fur. MegaPotato and Crystal seem the closest in this case, Topaz Wonder 3.5 is a little softer. ChatGPT makes the fur more orange, Magnific Creative paints a spotted coat, and Recraft Creative long smooth hair.
An AI image from the full test (FLUX.1 [schnell], made by us), with 16 faces. All three leaders handle it well. MegaPotato's result scored best with the Opus 5.5 judge (8 of 10, against 7 for Crystal and 6.5 for Wonder 3.5), on Qwen3.8's zoomed areas and on closeness to the original (LPIPS), and its faces stayed the closest to the people in the original (same-person score 0.75, against 0.74 and 0.72).
Invented details: what the tools added that was not in the photo#
Every generative tool invented some detail that never existed in the original. General-purpose models did it more often, specialized ones more rarely, but none is immune.
- MegaPotato: made-up logos and characters where the text is too small to read.
- ChatGPT: new objects and decorations (curtains, pictures, company names) and a different sky and light.
- Topaz Wonder 3.5: turns statues, dolls and painted faces into living people and photographs. Wrong digits where the text is too small.
- Topaz Standard V2, Low Resolution V2 and Standard MAX: tend to remove accessories from small faces.
- Topaz Bloom 2: new clothes and objects on people, statues and tables.
- Recraft Creative: a new scene: new people, plants, windows and menus.
- Magnific Creative: a new scene too: new people and text, a bust turned into an urn.
Extremely hard cases: old prints, heavy JPEG, noise (57 pictures)#
The full test measures the average. So we also made a few tests with extreme degradation, to see how the models behave in the worst case: 57 pictures, made small (288 × 216 or less) and damaged on purpose, or just hard by nature. Print scans with halftone dots, heavy JPEG, low-light noise, old prints with dust and scratches, textured paper, tiny faces, sunglasses, statues, dolls, paintings and comics. The originals are public-domain or free-licence photos (Library of Congress, Wikimedia Commons, The Metropolitan Museum of Art, Pexels). Only the three leaders ran here, and blind AI judges picked the best result for every picture. For the pictures shown below the Opus 5.5 judge also scored every result in a separate blind pass, with the core test's rubric; its score and MUSIQ are under the panels. The changed faces you will see are the tools' output, not the people. We show them only to document what the tools do.
Musicians saved as a heavy JPEG (quality 12) (64 × 48 px of the 288 × 216 px input)
A train passenger in a heavy JPEG (quality 12) (56 × 42 px of the 288 × 216 px input)
Two faces under heavy JPEG damage. All tools worked quite normally, taking into account the extremeness of the task, but each invented or lost different details.
Photos: cottonbro studio, Pexels License; Syazani Zahari, Pexels License
An aged sepia print with dust, scratches and blur (148 × 111 px of the 288 × 216 px input)
An old faded print of Einstein.
Photo: Ferdinand Schmutzer, public domain
A 1943 photo saved as a heavy JPEG (quality 12) (90 × 68 px of the 288 × 216 px input)
The same photo with heavy low-light noise (90 × 68 px of the 288 × 216 px input)
Two kinds of heavy damage on the same 1943 photo. MegaPotato made the woman younger and lost her glasses.
Photos: Jack Delano, Library of Congress, public domain (U.S. government work)
Dark sunglasses after heavy JPEG (100 × 75 px of the 288 × 216 px input)
Runners' mirrored sport sunglasses after heavy JPEG (98 × 74 px of the 288 × 216 px input)
After heavy JPEG damage, Crystal often makes dark sunglasses see-through and draws eyes behind them. MegaPotato and Wonder 3.5 usually keep these lenses dark.
Photos: Karan Singh, Pexels License; RUN 4 FFWPU, Pexels License
A bisque doll in a toy museum, its face about 22 px wide in the input (56 × 42 px of the 288 × 216 px input)
A Roman marble bust of a man, mid-1st century (128 × 96 px of the 288 × 216 px input)
A few samples of non-human faces.
Images: Alf van Beem, Wikimedia Commons, CC0; The Metropolitan Museum of Art, Open Access, CC0
A watercolour by John Singer Sargent, 1912 (60 × 45 px of the 288 × 216 px input)
A painting. Wonder turns the painted face into a photograph, quite confidently. MegaPotato makes it younger and smoother, more like an illustration. Crystal keeps the loose brushwork, which seems the right thing here.
Image: John Singer Sargent, The Metropolitan Museum of Art, Open Access, CC0
A 1910s print scanned from textured paper (72 × 54 px of the 288 × 216 px input)
Only MegaPotato removes the paper grain. Wonder leaves some of it and makes the woman's eyes harder. Crystal leaves it all as it is.
Photo: Harris & Ewing, Library of Congress, no known restrictions on publication
Badly damaged faces are our weak spot: on 8 such pictures MegaPotato changed the person on 6 (a new age, a new face or opened eyes). On very small inputs nobody kept Einstein's face, and MegaPotato also left a band of streaked pixels along two edges of every result.
| Kind of picture | Pictures | Wonder 3.5 best | MegaPotato best | Crystal best |
|---|---|---|---|---|
| Newspaper and magazine dots (halftone scans) | 11 | 8 | 6 | 0 |
| Old prints: dust, scratches, blur, textured paper | 7 | 2 | 6 | 0 |
| Heavy JPEG and low-light noise on people | 16 | 9 | 6 | 3 |
| Sunglasses after heavy JPEG | 5 | 4 | 3 | 0 |
| Tiny faces and tiny inputs (128 × 96, 160 × 120) | 8 | 5 | 5 | 2 |
| Statues and dolls | 5 | 1 | 4 | 0 |
| Paintings and comics | 5 | 2 | 1 | 2 |
| All hard cases | 57 | 31 | 31 | 7 |
Ties count for every tool that tied, so a row can add up to more than its pictures. Groups are small, so one picture can change a row.
In short: Wonder 3.5 and MegaPotato split the hard cases exactly evenly, 31 first places each of 57, and Crystal took 7. Print scans, heavy JPEG and noisy photos: start with Wonder 3.5. Old prints, statues, dolls and textured paper: MegaPotato. Paintings: Crystal, it keeps the brushwork. With damaged faces nobody was safe.
Which AI upscaler should you use, by kind of photo#
- Real low-quality photos as they were taken (old phone photos, early digital cameras, party and stage shots): MegaPotato, and by a wide margin (67.2 against 62.8 for Wonder 3.5 and 46.1 for Crystal, 29 photos).
- Night, stage and low light: MegaPotato (70.1 against 64.8 and 55.2, 24 photos).
- Shared, compressed or small photos of people: MegaPotato for the sharpest, most natural faces. Topaz Wonder 3.5 or Crystal when the face must stay as close to the original as possible (higher same-person scores).
- Old faded prints and old family photos: Wonder 3.5 or MegaPotato: level on 19 old prints (74.0 and 73.9). MegaPotato gave the sharpest faces in the hard cases but sometimes turns heavy damage into patterns. No tool reliably removes dust and scratches.
- Scans of newspapers and magazines: Topaz Wonder 3.5 or MegaPotato.
- Statues, dolls, paintings and drawings: MegaPotato keeps stone eyes as stone. For paintings, Crystal keeps the brushwork. Wonder sometimes turns them into "living" ones.
- Landscapes, animals and buildings with no people: all three are close (Crystal 74.2, MegaPotato 72.8, Wonder 3.5 72.6).
- Photos with names, numbers or signs: don't trust any tool with small text. A word or number that suddenly became readable is a guess, not a recovery. Small text is what we are working on for the next version of MegaPotato.
- A big print from a small file: at 300 pixels per inch, 2016 × 1344 pixels prints at about 17 × 11 cm (6.7 × 4.5 in). MegaPotato goes to 8×, Let's Enhance to 16×, Topaz Gigapixel to 6×.
- Thousands of images through an API: MegaPotato ($0.091 a photo at 1 000 a month), Topaz ($0.26 through its own API from $50 a month, or $0.24 through fal.ai) or Crystal ($0.35) for photos. Recraft Crisp ($0.033) only for clean graphics. We did not test speed or reliability at volume.
AI upscaler prices: what they really cost#
Bar chart of 4 bars: MegaPotato $0.083, Let's Enhance $0.22, Topaz Wonder 3.5 · fal.ai $0.24, Crystal $0.35. Highest: Crystal; lowest: MegaPotato.
| value | |
|---|---|
| MegaPotato | $0.083 |
| Let's Enhance | $0.22 |
| Topaz Wonder 3.5 · fal.ai | $0.24 |
| Crystal | $0.35 |
The four tools within two points of the top total (80.8 to 82.6) and the price of one photo with each: 100 photos a month, three sizes averaged. The bars start at zero. MegaPotato costs 2.7 to 4.2 times less than the other three. Topaz's own API is not on the chart: its plan starts at $50 a month, so at 100 photos a month you mostly pay for the plan, $0.54 a photo. At 1 000 photos a month it comes to $0.26.
Scatter plot of 14 points: Total score against Price per photo, $ (log scale). Price per photo, $ from 0.033 to 2.051. Highest Total score: MegaPotato (82.6); lowest: Recraft Creative (33.3). Highlighted: MegaPotato (82.6 at 0.083). Hollow points are estimates.
| Price per photo, $ | Total score | Total score from | Total score to | series | estimate | |
|---|---|---|---|---|---|---|
| MegaPotato | 0.083 | 82.6 | MegaPotato | |||
| Topaz Wonder 3.5 | 0.24 | 81.9 | Topaz | |||
| Let's Enhance | 0.223 | 81.8 | Let's Enhance | |||
| Crystal | 0.35 | 80.8 | Crystal | |||
| ChatGPT | 0.162 | 73.2 | OpenAI | yes | ||
| Gemini | 0.113 | 70.9 | yes | |||
| Topaz Standard MAX | 0.453 | 69.9 | Topaz | |||
| Topaz Bloom 2 | 0.907 | 68.1 | Topaz | |||
| Topaz Precision, 3 models | 0.107 | 53.9 | 34.1 | 65.1 | Topaz | |
| Recraft Crisp | 0.033 | 63.9 | Recraft | yes | ||
| Krea Enhance | 0.21 | 53.7 | Krea | yes | ||
| Magnific Precision V2 | 1.130 | 53.5 | Magnific | |||
| Magnific Creative | 1.020 | 46.3 | Magnific | yes | ||
| Recraft Creative | 2.051 | 33.3 | Recraft | yes |
Total score against the price of one photo at 100 photos a month, three sizes averaged, one colour per vendor, Topaz through fal.ai. The price axis is logarithmic: the same distance means the same ratio, not the same number of dollars. Hollow dots are prices normalised per megapixel. Upscayl is not on the chart: the app itself is free, but you need your own graphics card and electricity for it, and we did not price those. How the prices were counted ↓
How the prices on the charts were counted
The price of one photo is averaged over three jobs, each made 4× bigger (0.17 → 2.7 MP, 1 → 16 MP, 3 → 48 MP), at 100 photos a month. A one-time pack, or credits that don't expire, is spread over the months it lasts at that volume, 12 at most, and for each volume we take the cheapest pack or plan. Topaz is priced through fal.ai (pay as you go). Through Topaz's own API, with its $50 monthly minimum, every Topaz dot moves right (Wonder 3.5 to $0.54). Topaz's three Precision models (Standard V2 62.6, Low Resolution V2 65.1, High Fidelity V3 34.1) cost the same and share one dot at their average, the bar running from the lowest to the highest. MegaPotato is priced in its web app, with its −20 % discount for 3 or more photos sent together. At 100 photos a month the cheapest packs are $25 for 600 chips for the small size and $50 for 1 300 chips for the two larger ones. Its API has no batch discount and comes to $0.104 a photo at this volume. Gemini and OpenAI are priced on their Batch APIs (half price, results within 24 hours). Where a tool can't make a size (ChatGPT above 8 MP, Gemini at 48 MP, Magnific Creative above 25 MP, Recraft at any set size) or is priced at one size only (Krea), its price is normalised from its price per megapixel, and those dots are hollow. The tables below give 10 and 1 000 photos a month. Prices before tax.
Prices for one photo hide two things: what you must buy first, and whether you can use the tool without writing code. So here is the cost of a whole month of the small job of the core test (a 504 × 336 photo made 4× bigger, 2.7 MP), which every tool can do. Prices are from each vendor's own website or API as of 8 October 2026 (fal.ai's Topaz prices, Topaz's app plans and Clarity AI's plans re-checked on 10 October, Topaz's API plans on 13 October, Krea's plans and MegaPotato's own prices on 14 October), before tax. The pages are in the sources.
| MegaPotato[26] | $0.50 | $3.33 | $31 | One-time chip packs from $5. Chips don't expire. 3 or more photos together: −20 % | Yes |
| Crystal API (Clarity AI)[27] | $0.50 | $5 | $50 | Pay as you go from $1 | No |
| Crystal website (Clarity AI)[27] | $13–19 | $13–19 | $199–299 | A monthly plan: Starter $19 ($13 billed yearly) for 1 200 credits, 5 credits a small photo. 1 000 a month needs Business, 30 000 credits. The cheapest plan lacks "small image support" | Yes |
| Topaz Wonder 3.5 (Topaz API)[28] | $50 | $50 | $100 | Topaz's own API, from $50 a month. 1 credit a photo | No |
| Topaz Standard V2, Low Res V2, High Fidelity V3 (Topaz API)[28] | $50 | $50 | $100 | The same API plan. 1 credit a photo | No |
| Topaz Standard MAX (Topaz API)[28] | $50 | $50 | $100 | The same API plan. 1 credit a photo | No |
| Topaz Bloom 2 (Topaz API)[28] | $50 | $50 | $200 | The same API plan. 2 credits a photo | No |
| Topaz Wonder 3.5 (fal.ai)[29] | $0.80 | $8 | $80 | Pay as you go. $0.08 per started 8 MP of output | No |
| Topaz Standard MAX (fal.ai)[29] | $0.80 | $8 | $80 | Pay as you go. $0.08 per started 4 MP of output | No |
| Topaz Standard V2, Low Res V2, High Fidelity V3 (fal.ai)[29] | $0.80 | $8 | $80 | Pay as you go. $0.08 per started 24 MP of output | No |
| Topaz Bloom 2 (fal.ai)[29] | $1.60 | $16 | $160 | Pay as you go. $0.08 per started 2 MP of output | No |
| Topaz for Web, Image (Wonder 3, not 3.5)[30] | $9–19 | $9–19 | $9–19 | A flat plan: $199 a year or $19 a month list, on sale at $109 and $12 on 10 October. Topaz calls the renders unlimited. The published limits are a 32 MP export cap, two images at a time and personal or small-business use | Yes |
| Topaz Gigapixel (desktop, Wonder 3)[30] | $12–29 | $12–29 | $12–29 | $149 a year or $29 a month. Local renders unlimited, cloud renders "unlimited" with two images at a time | Yes |
| Let's Enhance[31] | $3.25 | $9 | $72 | Plans or one-time packs. 1 credit a photo | Yes |
| Gemini (API)[32] | $0.50 | $5 | $50 | Batch API, pay as you go. Makes a 2K image (2528 × 1696). Without code, the free app gives 1264 px | No |
| ChatGPT (OpenAI's image API)[33] | $0.42 | $2.71 | $27 | Batch API at "high" quality. A $5 minimum prepay. Without code, the app gave 1536 × 1024 | No |
| Recraft Crisp (API)[34] | $0.08 | $0.40 | $4 | Pay as you go from $1 | No |
| Recraft Creative (API)[34] | $2.50 | $25 | $250 | Pay as you go from $1 | No |
| Magnific Creative (ComfyUI node)[35] | $3.40 | $34 | $340 | Prepaid Comfy credits, $10 minimum, valid a year. Magnific's own plans from €16 a month | No |
| Magnific Precision V2 (ComfyUI node)[35] | $3.40 | $34 | $340 | The same credits. Two 2× steps | No |
| Krea (Pro plan)[36] | $21–35 | $21–35 | $21–35 | Pro $35 a month, or $21 billed yearly: 20 000 compute units, listed as 2 500 Enhancer images a month (the size is not stated) | Yes |
| Upscayl | free | free | free | Your own graphics card | Yes |
What this means in practice. If you can write code, MegaPotato's API is the cheapest of the careful tools: $0.104 a photo (the average of three sizes at 100 photos a month, no batch discount through the API; the web app has it, and there the same photos cost $0.083), against $0.54 for Topaz Wonder 3.5 through Topaz's own API ($0.24 through fal.ai) and $0.35 for Crystal's API. Without code the choice is narrower. Crystal's website starts at $13 a month billed yearly ($19 monthly). Wonder 3.5 for photos exists only through an API, fal.ai pay as you go or Topaz's own from $50 a month (Topaz's own apps have Wonder 3, which we did not test). So MegaPotato and Let's Enhance are basically the only two top tools you pay for once, in a browser, no subscription, and MegaPotato is cheaper at every size we priced. For really heavy use, around 1 000 photos a month, Topaz's flat plans with Wonder 3 are hard to beat (Gigapixel $149 a year, Topaz for Web $199 a year list, $109 on sale in October): Topaz calls the renders unlimited and publishes no monthly cap, only a 32 MP export limit and two images at a time. Whether that holds at thousands of renders a month we could not test. At 100 photos a month MegaPotato is already cheaper.
Small print that changes the real price, and tools we did not test
- Minimum spend: Topaz's own API $50 a month (on 13 October 2026 its $0 "Starter" plan still says "coming soon", while Topaz's documentation already says "no subscriptions, no minimums"[37]), none on fal.ai. Crystal's website $13–19 a month. MegaPotato $5, once. Crystal's and Recraft's APIs pay as you go from $1. Gemini's and OpenAI's APIs a $5 prepay.
- Credits that expire: Let's Enhance plan credits end when you cancel (its one-time packs don't expire). Crystal's website credits don't roll over. Gemini and OpenAI API credits expire after 12 months. MegaPotato chips, Recraft units and Crystal API credits don't expire.
- Price jumps and size limits: Crystal doubles its price just above 16 MP ($0.20 to $0.40). Topaz Standard V2 doubles above 24 MP, and Wonder 3.5 already costs 2 credits at 16 MP in Topaz's API. On fal.ai Wonder 3.5 is $0.08 per started 8 MP of output ($0.16 at 16 MP, $0.48 at 48 MP). MegaPotato rises one chip at a time (0.06 chip per tile, rounded up). OpenAI's image API stops at about 8 MP. The free Gemini app at 1264 px. Let's Enhance's free plan at 8 MP, with a logo.
- Not tested: VanceAI[38], Pixelcut[39] and Remini[40]. Their prices are in the tool cards.
Every AI upscaler we tested, one by one#
Short notes on each tool: what it is, what it did well, where it broke. The scores are in the scoreboard and the prices in the price tables, no point repeating them here.
1. MegaPotato AI image upscaler: first on both tests and the cheapest of the leaders#
MegaPotato is our own tool: a web app and an API, one model that does 2×, 4×, 8× or Refine at the same size, chip packs instead of a subscription.
It is strongest on real low-quality photos, night shots and AI images, the faces come out natural, and it cleans old prints (paper grain, dust) better than the others. The weak side is small faces - they drift a bit more from the real person than with Crystal and Wonder 3.5, in dark damaged photos it changed ages and sometimes faces, and on very small inputs it leaves streaked edges.
2. Topaz Wonder 3.5: the most faithful faces, but only through an API#
Topaz Labs is probably the best-known name in upscaling (part of Adobe since September 2026), with three families of models that behave very differently: Precision, Generative and Creative. Wonder 3.5 is the one that matters, and it is API-only, Topaz's own API or fal.ai, where we ran it. The apps have Wonder 3.
The most faithful faces of all, the only tool that read the runner's number, the best on halftone scans and the most careful with damaged faces. The problems: it treats statues and dolls as people and paintings as photographs, changes people's ages, and leaves old faded prints soft. The other Topaz models are a different story: Standard V2, Low Resolution V2 and Standard MAX turn small faces to plastic and tend to remove accessories, High Fidelity V3 barely touches a small photo (it is made for big ones), Bloom 2 redraws faces.
3. Let's Enhance: almost as faithful, and easy to use#
Let's Enhance is one of the oldest web upscalers, web only (its API is sold separately as Claid, we did not test it), with a handful of modes; we used Prime, the default. You pay with credits, as packs or a plan.
Careful and faithful: the face judge liked its faces most of all, and it invented nothing big. Where it loses is sharpness: its results are the softest of the four leaders, both to the zoom judge and by the looks-good measures, and the faces stay a bit further from the real person than Wonder's and Crystal's.
4. Crystal Upscaler (Clarity AI): very faithful on normal photos, weak on noise and print#
Crystal is Clarity AI's closed model, tuned for faces and products: an API paid per image, and a website on a plan.
The closest to the originals by the image metrics - it keeps the person and the colours, adds nothing, and is the best when there are no people in the frame. But noise and JPEG blocks it keeps, only sharper, halftone dots stay dots, and in our hard cases it made dark sunglasses see-through and children in old photos look like adults. Not for scans, damaged prints or noisy photos.
5. ChatGPT as an upscaler: great at first sight, but it changes important details#
ChatGPT has no upscale button: you ask for a bigger version and the image model draws a new picture.
The best-looking results of all at first sight. But the well-known issue with redrawing is still there - it shifts colours, makes people younger and writes text with full confidence, and a strict "don't invent anything" prompt does not stop it. Fine for a nice picture, not for family photos, documents, products or anything with names and numbers.
6. Gemini app (Google Nano Banana): careful with faces, small files#
Gemini is not an upscaler either, it redraws the whole picture.
The most careful of the chat models: it kept faces and colours. The files are small and soft, though, and it writes clean, wrong numbers and made-up words.
7. Recraft (Crisp and Creative): cheap for graphics, not for small faces#
Recraft is a design tool with two upscalers: Crisp sharpens what is there, Creative redraws. You can't choose the output size.
Crisp is fine on AI art and clean edges, and it is the cheapest API in the test, but it distorts small faces. Creative simply draws another photo, new people and nonsense words included. Logos, graphics and AI art in bulk, not people.
8. Upscayl: free and offline, but not for small faces#
Upscayl is a free, open-source desktop app that runs Real-ESRGAN-type models on your own graphics card: no account, no watermark, the photos never leave your computer (three of the bundled models are marked non-commercial).
Free, private, decent on AI art and clean edges, and it invents no words. Small faces come out distorted and small text stays blurred. Free offline upscaling of clean images, that's it.
9. Krea: a big toolbox, we tested its own enhancer#
Krea is a creative platform; its Enhancer has Krea's own models and partner ones (Topaz, Magnific). We tested Krea's own.
A lot of tools in one place, if you already generate there. On photos its own Enhance drifted far from the real faces, drew black lines across the 1914 faces and made red chalk grey; it ended near the bottom of our test.
10. Magnific: the famous one draws a new picture. Its photo mode over-sharpens#
Magnific is the upscaler everyone names first, two modes, Creative and Precision. We ran both through ComfyUI's Magnific nodes at the nodes' defaults; the node returned 2× whatever we asked, so our 4× is two 2× passes.
Creative makes a rich new picture, good for concept art and illustrations. For a photo that is exactly the problem: it draws a new one, with other people and other words. Precision keeps the scene but piles sharp invented texture on everything. With the defaults neither came near the top; Precision at lower detail settings may do better than our run.
Three popular tools we did not test: VanceAI, Pixelcut, Remini
- VanceAI. An online toolbox (upscale, denoise, restore, colourise). Plans from $15 a month for 260 credits, a 4× upscale costs 2 credits. New users get 10 free credits.
- Pixelcut. A photo editor for online sellers. 3 free downloads a day at 2×, 4× needs Pro ($8–10 a month, "unlimited" upscales). API $0.10 per upscale, on plans from $10 a month.
- Remini. A face-focused phone app. You can't choose a size, so it is a face "enhancer" more than an upscaler. Sold as subscriptions, often weekly.
How to repeat this test#
What you need to run the test again is on this page and in four small files:
- The photos: each of the 137 photos of the two main tests, with its source, licence and how its small input was made, in photos.csv. How each kind of input was made is in the appendix. The hard cases are described in their section.
- The tools: where each tool ran, with its settings and prompts, in Settings, prompts and lining up.
- The scoring: the judges, the measurements and the formula, in How we tested. Every tool's numbers for both tests are in the full test's table and the appendix.
- Every score: each tool on each photo in scores.csv, each face in faces.csv. README.txt says what every column is and how they add up to the tables on this page. The data is free to use under CC BY 4.0, with a link to this page.
Version 1.0, 14 October 2026. The tools ran in early October 2026. Prices are as of 8 to 14 October 2026, each source carries its date. Changes to the numbers will be listed here.
We checked that the numbers repeat. Scoring the saved results of the core test a second time through the same code gave every number within 0.15 % of the first run, photo by photo. Asked again about 201 faces with the same prompts and crops, the Qwen3.8 judge gave the identical score 85 % of the time, and the same "same person?" answer for 99.5 % of the faces. Claude Opus 5.5 saw one result per photo twice under two letters. In the core test its two scores were identical on 9 of the 16 photos and half a point apart on the others. The upscalers themselves can give a different result on a second run.
How to cite this test
MegaPotato Research Team. The Best AI Image Upscalers of 2026–2027: Benchmark With Reproducible Metrics and Prices. megapotato.app, 14 October 2026, version 1.0. https://megapotato.app/blog/best-ai-image-upscalers-2026
@misc{megapotato2026upscalers,
title = {The Best AI Image Upscalers of 2026--2027: Benchmark With
Reproducible Metrics and Prices},
author = {{MegaPotato Research Team}},
year = {2026},
month = oct,
howpublished = {\url{https://megapotato.app/blog/best-ai-image-upscalers-2026}},
note = {Version 1.0, 14 October 2026}
}Appendix: metrics, settings, prompts and photo sources#
Every number of the core test (18 tools and settings)
The parts of the total, as averages over the 16 photos. "Different person" is the share of the 67 faces the Qwen3.8 judge called a different person. A-FINE, DreamSim, DINOv2 and TOPIQ-FR were computed on half-size copies (1008 × 672). A measure's name is explained on hover. All the definitions are in What each measure is.
| MegaPotato | 82.6 | 7.00 | 6.98 | 6.85 | 0.481 | 0.0 | 0.560 | 0.207 | 17.4 | 59.9 | 3.19 |
| Topaz Wonder 3.5 | 81.9 | 7.09 | 7.15 | 7.01 | 0.549 | 0.0 | 0.570 | 0.211 | 36.3 | 61.7 | 3.07 |
| Let's Enhance | 81.8 | 6.81 | 6.69 | 7.03 | 0.514 | 1.5 | 0.592 | 0.209 | 23.2 | 59.1 | 3.31 |
| Crystal | 80.8 | 6.78 | 6.85 | 6.76 | 0.545 | 1.5 | 0.583 | 0.193 | 37.1 | 59.7 | 2.98 |
| ChatGPT, strict prompt | 73.2 | 6.16 | 6.80 | 6.52 | 0.474 | 4.5 | 0.562 | 0.269 | 27.7 | 61.2 | 4.34 |
| ChatGPT, simple prompt | 73.2 | 5.81 | 6.75 | 6.46 | 0.455 | 6.0 | 0.565 | 0.287 | 23.5 | 63.6 | 4.08 |
| Gemini app | 70.9 | 6.66 | 6.48 | 6.51 | 0.519 | 1.5 | 0.540 | 0.242 | 35.2 | 50.4 | 4.63 |
| Topaz Standard MAX | 69.9 | 5.78 | 5.95 | 5.84 | 0.497 | 10.4 | 0.499 | 0.223 | 27.1 | 56.4 | 3.98 |
| Topaz Bloom 2 | 68.1 | 5.81 | 6.27 | 5.78 | 0.263 | 9.0 | 0.531 | 0.285 | 27.4 | 63.6 | 3.40 |
| Topaz Low Resolution V2 | 65.1 | 5.47 | 5.40 | 5.57 | 0.484 | 13.4 | 0.483 | 0.235 | 38.1 | 54.7 | 3.77 |
| Recraft Crisp | 63.9 | 5.42 | 5.24 | 5.16 | 0.490 | 7.5 | 0.405 | 0.222 | 30.1 | 53.6 | 4.01 |
| Topaz Standard V2 | 62.6 | 4.89 | 5.15 | 5.21 | 0.469 | 11.9 | 0.479 | 0.248 | 45.5 | 54.9 | 3.16 |
| Upscayl (Standard) | 59.7 | 5.12 | 4.66 | 4.28 | 0.476 | 19.4 | 0.385 | 0.240 | 35.2 | 55.7 | 3.65 |
| Krea Enhance | 53.7 | 4.12 | 5.02 | 4.70 | 0.281 | 31.3 | 0.501 | 0.317 | 47.5 | 58.2 | 3.04 |
| Magnific Precision V2 | 53.5 | 5.20 | 5.49 | 5.24 | 0.464 | 9.0 | 0.493 | 0.490 | 46.5 | 52.5 | 4.61 |
| Magnific Creative | 46.3 | 2.34 | 4.10 | 3.66 | 0.146 | 61.2 | 0.529 | 0.324 | 28.1 | 61.4 | 3.02 |
| Topaz High Fidelity V3 | 34.1 | 4.20 | 4.12 | 3.84 | 0.539 | 20.9 | 0.326 | 0.402 | 61.0 | 30.3 | 6.23 |
| Recraft Creative | 33.3 | 2.03 | 3.20 | 2.81 | 0.166 | 76.1 | 0.479 | 0.416 | 27.6 | 50.2 | 4.22 |
| Plain resize | – | 4.34 | 4.18 | 3.76 | 0.551 | 25.4 | 0.266 | 0.471 | 62.7 | 27.1 | 7.61 |
| Real photo | – | – | 9.09 | – | 1.000 | – | 0.577 | 0.000 | 39.8 | 53.3 | 3.58 |
More scores, not in the total. Closeness to the original:
| MegaPotato | 0.144 | 0.0125 | 0.969 | 0.697 | 2.49 |
| Topaz Wonder 3.5 | 0.128 | 0.0096 | 0.981 | 0.710 | 2.32 |
| Let's Enhance | 0.131 | 0.0172 | 0.973 | 0.664 | 2.29 |
| Crystal | 0.122 | 0.0076 | 0.983 | 0.707 | 2.12 |
| ChatGPT, strict prompt | 0.161 | 0.0233 | 0.980 | 0.621 | 4.82 |
| ChatGPT, simple prompt | 0.176 | 0.0315 | 0.975 | 0.605 | 6.19 |
| Gemini app | 0.136 | 0.0155 | 0.976 | 0.667 | 2.83 |
| Topaz Standard MAX | 0.149 | 0.0197 | 0.958 | 0.674 | 2.46 |
| Topaz Bloom 2 | 0.172 | 0.0265 | 0.966 | 0.571 | 4.60 |
| Topaz Low Resolution V2 | 0.159 | 0.0156 | 0.938 | 0.672 | 2.19 |
| Recraft Crisp | 0.154 | 0.0196 | 0.948 | 0.685 | 2.51 |
| Topaz Standard V2 | 0.153 | 0.0194 | 0.958 | 0.640 | 2.53 |
| Upscayl (Standard) | 0.163 | 0.0232 | 0.950 | 0.666 | 2.66 |
| Krea Enhance | 0.183 | 0.0347 | 0.933 | 0.489 | 4.27 |
| Magnific Precision V2 | 0.207 | 0.0102 | – | 0.663 | 3.20 |
| Magnific Creative | 0.191 | 0.0626 | – | 0.446 | 5.51 |
| Topaz High Fidelity V3 | 0.213 | 0.0389 | 0.973 | 0.595 | 2.88 |
| Recraft Creative | 0.228 | 0.0645 | 0.885 | 0.326 | 6.97 |
| Plain resize | 0.222 | 0.0271 | 0.972 | 0.608 | 2.57 |
| Real photo | 0.000 | 0.0000 | 1.000 | 0.818 | 0.00 |
– : not computed (the two Magnific rows).
"Looks good" scores, which don't use the original:
| MegaPotato | 0.394 | 0.602 | 0.532 |
| Topaz Wonder 3.5 | 0.422 | 0.624 | 0.570 |
| Let's Enhance | 0.420 | 0.591 | 0.524 |
| Crystal | 0.389 | 0.600 | 0.541 |
| ChatGPT, strict prompt | 0.374 | 0.622 | 0.483 |
| ChatGPT, simple prompt | 0.400 | 0.651 | 0.513 |
| Gemini app | 0.305 | 0.524 | 0.368 |
| Topaz Standard MAX | 0.362 | 0.579 | 0.478 |
| Topaz Bloom 2 | 0.435 | 0.616 | 0.579 |
| Topaz Low Resolution V2 | 0.345 | 0.545 | 0.458 |
| Recraft Crisp | 0.333 | 0.519 | 0.431 |
| Topaz Standard V2 | 0.324 | 0.535 | 0.465 |
| Upscayl (Standard) | 0.353 | 0.552 | 0.468 |
| Krea Enhance | 0.396 | 0.593 | 0.542 |
| Magnific Precision V2 | 0.373 | 0.539 | 0.491 |
| Magnific Creative | 0.415 | 0.637 | 0.552 |
| Topaz High Fidelity V3 | 0.219 | 0.285 | 0.222 |
| Recraft Creative | 0.329 | 0.513 | 0.431 |
| Plain resize | 0.254 | 0.418 | 0.222 |
| Real photo | 0.323 | 0.538 | 0.433 |
What a month costs for a 16 MP result
Same rules as the small-job table in What it costs: a 1224 × 816 photo made 4× bigger.
| MegaPotato | $1.00 | $6 | $53 | One-time chip packs from $5. 3 or more photos together: −20 % | Yes |
| Crystal API (Clarity AI) | $2 | $20 | $200 | Pay as you go from $1 | No |
| Crystal website (Clarity AI) | $13–19 | $33–49 | $199–299 | A monthly plan | Yes |
| Topaz Wonder 3.5 (Topaz API) | $50 | $50 | $200–360 | Topaz's own API, from $50 a month. 2 credits a photo (4 by another Topaz page) | No |
| Topaz Standard V2, Low Res V2, High Fidelity V3 (Topaz API) | $50 | $50 | $100 | The same API plan. 1 credit a photo | No |
| Topaz Standard MAX (Topaz API) | $50 | $50 | $360 | The same API plan. 4 credits a photo | No |
| Topaz Bloom 2 (Topaz API) | $50 | $88 | $660 | The same API plan. 8 credits a photo | No |
| Topaz Wonder 3.5 (fal.ai) | $1.60 | $16 | $160 | Pay as you go. Two started 8 MP blocks of output | No |
| Topaz Standard MAX (fal.ai) | $3.20 | $32 | $320 | Pay as you go. Four 4 MP blocks | No |
| Topaz Standard V2, Low Res V2, High Fidelity V3 (fal.ai) | $0.80 | $8 | $80 | Pay as you go. One 24 MP block | No |
| Topaz Bloom 2 (fal.ai) | $6.40 | $64 | $640 | Pay as you go. Eight 2 MP blocks | No |
| Topaz for Web, Image (Wonder 3, not 3.5) | $9–19 | $9–19 | $9–19 | A flat plan ($199 a year or $19 a month list. $109 and $12 on sale on 10 October). "unlimited" renders, 32 MP export cap, two images at a time | Yes |
| Topaz Gigapixel (desktop, Wonder 3) | $12–29 | $12–29 | $12–29 | $149 a year or $29 a month. "unlimited" renders, two cloud images at a time | Yes |
| Let's Enhance | $6.50 | $24 | $160 | Plans or one-time packs. 2 credits a photo at 16 MP | Yes |
| Magnific Creative and Precision V2 (ComfyUI node) | $6.80 | $68 | $680 | Prepaid Comfy credits. 143.6 credits a photo at 16 MP | No |
| Gemini (API) | $0.76 | $7.60 | $76 | Batch API. Redraws at a preset size (5056 × 3392) | No |
| ChatGPT (OpenAI's image API) | can't | can't | can't | Its largest image is 8.2 MP | n/a |
| Recraft Crisp and Creative (API) | can't | can't | can't | No size setting | n/a |
| Krea (Pro plan) | $21–35 | $21–35 | $21–35 | 20 000 compute units, listed as 2 500 Enhancer images a month (the size is not stated) | Yes |
| Upscayl | free | free | free | Your own graphics card | Yes |
Settings, prompts and lining up
Making the small input (core test). We cut a 3:2 area of each photo, made the truth image at 2016 × 1344, shrank it to 504 × 336 (area averaging), added a light blur (sigma 0.3 px) and a little noise (sigma 1.5 on a 0–255 scale), and saved it as a JPEG twice (quality 60, then 80). The AI image was only shrunk. The inputs of the full test are described with each photo in the photo list.
Where each tool ran. Default settings, except the size. The tools ran in early October 2026.
| Tool | Where it ran | Settings |
|---|---|---|
| MegaPotato | megapotato.app web app | 4× |
| Topaz Wonder 3.5, Standard MAX | fal.ai topaz/upscale/image/generative | model by name, upscale_factor 4, PNG |
| Topaz Bloom 2 | fal.ai topaz/upscale/image/creative | model by name, upscale_factor 4, PNG |
| Topaz Standard V2, Low Resolution V2, High Fidelity V3 | fal.ai topaz/upscale/image/precision | model by name, upscale_factor 4, PNG |
| Crystal | fal.ai clarityai/crystal-upscaler | scale_factor 4, creativity 0, PNG |
| Recraft Crisp, Recraft Creative | fal.ai fal-ai/recraft/upscale/crisp, fal-ai/recraft/upscale/creative | no size setting |
| Let's Enhance | letsenhance.io web app | Prime, 4× |
| Krea | krea.ai Enhance | 4× |
| Magnific Creative | ComfyUI partner node Magnific Image Upscale (Creative), prepaid Comfy credits | 4×, standard, creativity, HDR, resemblance and fractality 0, engine automatic |
| Magnific Precision V2 | ComfyUI partner node Magnific Image Upscale (Precise V2) | two 2× passes (the node returned 2× whatever scale we asked); flavor photo, sharpen 7, smart grain 7, ultra detail 30 |
| ChatGPT | ChatGPT Plus, image tool | the prompts below |
| Gemini | Gemini app (Nano Banana 2) | the simple prompt |
| Upscayl | Upscayl's command-line engine | Standard model, 4× |
On fal.ai the Topaz defaults switch on face enhancement. Let's Enhance's logo corner was left out of the scores.
Prompts. Simple, for ChatGPT and Gemini: "Upscale this photo 4x. Keep everything exactly the same." Strict, for ChatGPT: "Super-resolution only, 4x. Resolve the detail that is already in the pixels — do not restore, retouch or reinterpret. If you downscale your result back to the original size it must match the original pixel for pixel. Do not use any knowledge of who or what this is: import nothing from other versions of this image. Keep geometry, crop, identity, expression, lighting, colour, grain and lens character exactly as they are. Add only micro-texture implied by the input: pores, hair strands, fabric weave, edges. No retouching, no smoothing, no relighting, no grading, no new elements. Where a region is unresolvable, leave it soft instead of inventing detail."
Lining up. Every result was scaled to the 4× size of its input. A result shifted by more than 0.75 pixels (measured by phase correlation with the input enlarged by bicubic resizing) was moved back; closeness measures skip the few edge pixels this uncovers. ChatGPT and Gemini move and crop the picture, so we lined up their results by matching features.
The judges. Qwen3.8-27B-FP8 through vLLM, greedy decoding. Claude Opus 5.5 (claude-opus-5-5), each result under a random letter. Their instructions are below.
The judges' instructions, word for word
Claude Opus 5.5, core test. This rubric was used for every sheet. The lines about file paths and the output file are left out.
You are a blind judge of AI image upscaling quality. You will score anonymous upscaled images against the real photo. You do not know which tools made them, and you must not try to find out. Setup: for each photo there are 3 or 4 sheets named <photo>_<view>.jpg: one "overview" (the whole frame) and 2–3 zoomed views (faces, text, textures). In every sheet the first tile, labelled REAL PHOTO, is the real full-resolution photo. The other tiles, labelled with letters, are upscaled versions made from a small, damaged copy of that photo (504x336 pixels, with blur, noise and JPEG artifacts). Within one photo a letter always means the same image in every view. Letters are shuffled differently for each photo, so letter A of one photo has nothing to do with letter A of another photo. In the overview sheets, the bottom-left corner of every tile, including the real photo, is covered by the same grey box on purpose; ignore it. The grocery photo is an old 1943 black-and-white photo: its real photo is itself soft and grainy. Task: for each photo, look at all its views first, then give every letter one score from 0 to 10 (half points allowed) for overall quality, the way a careful person would judge it looking at the result next to the real photo: is it sharp, clean and natural, and is it true to the real photo? - 10: looks like the real photo, equally sharp and clean; no visible changes. - 8–9: very close; sharp and natural; only tiny differences in fine texture. - 6–7: good; clearly an upscale (a bit soft, over-sharpened or waxy) or small invented details, but the same people, text and colours. - 4–5: clear problems: blurry, plastic skin, garbled details, a noticeable colour change, or one important thing changed. - 2–3: serious problems: faces turned into other people or broken, invented or missing objects or text, the scene redrawn. - 0–1: unusable. Judge the whole image: the overview shows colours, the whole scene and overall sharpness; the zoomed views show faces, text and textures. A serious error in a zoomed view (a broken or replaced face, a new object, wrong readable text) must pull the score down even if the rest is good. Blurry but faithful results should not get high scores either. Be consistent across photos. Score each letter on its own merits.
Claude Opus 5.5, full test (the AI images, the photos with no people, the real low-quality photos and the old prints): the brief the judge read. The output format is left out. On the natively small photos the judge used the core test's rubric, with the input enlarged by plain resizing in the place of the real photo.
You are a blind judge. Three image upscalers (anonymous, letters A, B and C) each enlarged the same small photo 4 times. You do not know which tool is which, and the letters are shuffled on every sheet. Please judge each sheet on its own. What a sheet looks like. Each sheet is split into image files. Read every part of a sheet before you judge it. Part 1 is the whole image. The later parts are zooms. A red box under "Where this zoom is" shows the zoom's place. Top row: "What every tool got": the small input that all three tools were given, enlarged with plain bicubic (soft on purpose). "Original (answer)": only on some sheets. It is the real photo before it was damaged and shrunk. When it is there, it is the answer: the best result is the one closest to it. "Where this zoom is": the location of the zoom. Bottom row: A, B, C, the three results. How to judge. 1. Fidelity, 0 to 10. With an original: how close is the result to the original? Same people (face shape, identity, age, expression, skin tone, hair, glasses, beard), same objects, same text, same colours, same textures. Without an original: is the result a believable sharper version of the input, without changing what is there? Fidelity errors include inventing content (new objects, jewellery, glasses, a different face, eyes opened or closed, text or letters that are not there, fake texture) and losing real content (glasses, moustache, text, patterns, people). A statue or doll must stay a statue or doll. A painting must stay a painting. An old print may stay an old print. 2. Naturalness, 0 to 10. Does it look like a good, natural photo? Look for waxy or plastic skin, a painted look, halos, oversharpening, leftover noise or JPEG blocks, smears, garbled text, repeating patterns, seams and bands at the edges. 3. Rank A, B and C overall. Fidelity matters most, then naturalness. Use "=" only when you truly cannot separate two results. 4. Invented or lost content. For each letter, list concrete changes you can see. Write "none seen" if you saw none. Rules. Judge by eye only. Do not run code, do not measure pixels, do not compute statistics, do not compare file sizes or metadata. Do not try to guess which tool is which, and do not use names of tools. Some sheets may look alike. Judge every sheet fresh from its own images. Look closely at faces, hands, text and fine textures in the zooms.
Qwen3.8, zoomed areas. The system prompt, then the request for every area of every result ({what} names what to look at in that area; its "overall" is the score in the total):
System: You are a meticulous photo-restoration evaluator. You compare an AI upscaler's output with the real high-resolution photo. Be strict: invented, removed or changed content (objects, letters, digits, faces, textures) is a serious fault even when the result looks sharp. Answer ONLY with the requested JSON.
Image 1 is the REFERENCE: a crop of the real high-resolution photo. Image 2 is the SAME crop taken from an AI upscaler's output; the upscaler only received a small, degraded version of the photo. What to look at in this region: {what}. Rate Image 2 against the reference and return JSON with keys: fidelity (0-10, 10 = same content as the reference, nothing invented, removed or changed), quality (0-10, sharpness and naturalness of Image 2 on its own: 10 = looks like a real high-resolution photo; blur, plastic skin, oversharpening, halos or painterly texture lower it), overall (0-10, how good a restoration of the reference this is), identity (only if the region shows a human face: 'same' | 'changed' | 'different' | 'destroyed'; otherwise 'n/a'), text (only if the reference contains readable letters or digits: 'correct' | 'partly' | 'wrong' | 'illegible'; otherwise 'n/a'), issues (a list of at most 4 short phrases naming concrete differences from the reference, or []). JSON only.Where no original exists, the system prompt says "with the small input photo it received" instead of "with the real high-resolution photo", and the request begins: "Image 1 is the INPUT: a crop of the small photo that an AI upscaler received, enlarged by plain resizing, so it is blurry by nature (no better original exists). Image 2 is the SAME crop taken from the upscaler's output." The keys are the same, with "the input" in place of "the reference".
Qwen3.8, faces. For every face of every result (its "overall" is the face score in the total; "same_person" = 'no' is a changed face):
Three tiles of the SAME face. Image 1: the REAL face (crop of the real high-resolution photo). Image 2: the degraded small input that the upscaler received, enlarged (blurry by nature). Image 3: the AI upscaler's result for the same tile. Compare Image 3 with Image 1 and answer as JSON with keys: same_person ('yes' | 'probably' | 'no' - is it still the same person as in Image 1?), expression ('kept' | 'changed' - eyes open/shut, mouth, smile, gaze), accessories ('kept' | 'changed' | 'none' - glasses, moustache/beard, mask, hat, badge, earrings), artefacts (list from: 'none', 'melted', 'painted', 'plastic_skin', 'extra_features', 'distorted', 'blurred', 'oversharpened'), overall (0-10: how faithful and natural a reconstruction of the real face Image 3 is; 10 = indistinguishable from Image 1, 0 = a different or destroyed face), note (one short sentence). JSON only.Where no original exists the face prompt has two tiles, the input enlarged by plain resizing and the result, and asks the same questions against the input.
The full test. Photos with no original were judged against the input, enlarged by bicubic resizing, and the prompts said so. The Opus score on the AI images, the photos with no people, the real low-quality photos and the old prints is the mean of its two 0–10 scores, for faithfulness and for naturalness. On the natively small photos it is one 0–10 score against the input. Qwen3.8's zoomed areas on these photos: the four most detailed squares (a third of the shorter side each) and the 8 largest faces. The Opus 5.5 judge saw each result whole and in zoomed areas, as in the core test.
Faces. Found once by SCRFD on the original at the 4× size (on the input enlarged 4× where there is no original). Every face at least 10 pixels wide in the input. The same aligned 112 × 112 crop from every result. Face-recognition models with flip averaging. The same-person score averages AdaFace (IR-101, WebFace12M), ArcFace (R100, Glint360K), AuraFace v1 and MagFace (R100). In the core test MagFace ran on the race photo's 14 faces only, in the full test on every face.
Metrics. LPIPS (AlexNet) and the CIEDE2000 colour difference (after a 2-px Gaussian blur) at full size; DISTS on 512-px tiles; A-FINE, DreamSim, DINOv2 (ViT-L) and TOPIQ-FR on copies at half size; MUSIQ, CLIP-IQA+ and TOPIQ as the mean of 5 fixed 512-px tiles; MANIQA and NIQE on the whole image; eDifFIQA (L) on the face crops.
Limits of this test
- 16 photos is a small sample for 18 tools. 135 photos is a larger one, for three.
- One run per photo and setting. Generative tools can give a different result each time.
- Default settings. Many tools have sliders that make them more careful or more creative.
- ChatGPT and Gemini could not make exactly 4×.
- Photos with no original can only be judged against the input, which is softer. The judges were told so.
- The total's weights are a choice. A-FINE, one of its ten parts, prefers results that look more natural than the original, which favours bold upscalers. Every part is published so you can reweigh it.
- Topaz, Crystal and Recraft ran through fal.ai and Magnific through ComfyUI's nodes, not the vendors' own apps. Their own apps may behave differently.
- The face-recognition models only compared a result with its own original. No identities were looked up and no face data is published.
- Prices and models change often. Everything here is as of early October 2026, and each price source carries its date.
What each measure is
Every column of the tables above, in one place. On the page, a column name with a dotted underline shows its entry when you point at it.
- Total
- the score out of 100: 28 % the Opus 5.5 judge and 8 % each of nine other parts (the two Qwen3.8 scores, the same-person score, the share of changed faces, face quality, LPIPS, A-FINE, MUSIQ and NIQE). The judges' 0–10 scores are multiplied by 10. Every other part is scaled so that the best of the 18 tools of the core test gets 100 and the worst 0. See How we tested.
- Opus 5.5 judge
- Claude Opus 5.5, a multimodal LLM from Anthropic, saw every result under a random letter, whole and in zoomed areas, next to the original (or the input where no original exists), and gave it 0–10. 28 % of the total.
- Qwen3.8, zoomed areas
- Qwen3.8-27B, an open multimodal LLM run on a rented H100 GPU, scored the most detailed zoomed areas of every result next to the original, 0–10.
- Qwen3.8, faces
- the same model scored every face crop next to the original face, 0–10, and answered whether it is still the same person.
- Same-person score
- the mean similarity between a face in the result and the same face in the original, by four face-recognition networks: ArcFace (CVPR 2019, trained on Glint360K), MagFace (CVPR 2021), AdaFace (CVPR 2022, trained on WebFace12M) and AuraFace (2024). 1 is the same face, different people score about 0–0.3.
- Different person, %
- the share of faces the Qwen3.8 judge called a different person.
- Face quality (eDifFIQA)
- eDifFIQA (IEEE T-BIOM 2024), a diffusion-based face image quality score: how clean and recognisable a face looks, without the original. Higher is better.
- LPIPS
- Learned Perceptual Image Patch Similarity (CVPR 2018): the distance between a result and the original on the features of an AlexNet network. Lower is closer.
- A-FINE
- Adaptive Fidelity-Naturalness Evaluator (CVPR 2025): judges how close a result is to the original and how natural it looks, and gives naturalness more weight when a result looks more natural than the original. Lower is better.
- MUSIQ
- Multi-Scale Image Quality transformer (ICCV 2021): a "looks good" score that needs no original. Higher is better.
- NIQE
- Natural Image Quality Evaluator (IEEE Signal Processing Letters 2013): how far an image's statistics are from those of natural photos, with no original. Lower is more natural.
- DISTS
- Deep Image Structure and Texture Similarity (IEEE TPAMI 2022): closeness to the original in structure and texture. Lower is closer.
- DreamSim
- an image similarity trained on human judgements (NeurIPS 2023). Lower is closer.
- DINOv2
- the similarity of DINOv2 ViT-L features (TMLR 2024) between the result and the original. Higher is closer.
- TOPIQ-FR
- a top-down image quality network (IEEE TIP 2024), from the meaning of the image down to its distortions; TOPIQ-FR compares with the original, TOPIQ judges without it. Higher is better.
- Colour ΔE
- the CIEDE2000 colour difference between the result and the original, after a 2 px blur, so that it measures colour and not sharpness. Lower is closer.
- MANIQA
- Multi-dimension Attention Network for image quality, no original needed (CVPR Workshops 2022). Higher is better.
- CLIP-IQA+
- the look and feel of an image as the CLIP model sees it (AAAI 2023), no original needed. Higher is better.
- Price per photo
- the average price of a 2.7, a 16 and a 48 MP result at 100 photos a month, before tax. See What it costs.
The 137 photos: sources, licences and inputs
Every photo, with its source, licence and the exact crop, window or seed, is in photos.csv. How each kind of input was made:
- The core test (16 photos). The crop of the full-size file was made 2016 × 1344 (the original we compare with) and, by area averaging, 504 × 336. Then a Gaussian blur (sigma 0.3 px), Gaussian noise (sigma 1.5 of 255, from the photo's seed) and JPEG twice (quality 60, then 80; 4:2:0). The full test uses 14 of these photos (not the price tags or the Midjourney image).
- AI images (16). FLUX.1 [schnell] on fal.ai (
fal-ai/flux/schnell, 4 steps, 1536 × 1152) from the photo's prompt and seed; that image is the original. Input: area averaging to 384 × 288, then the same blur, noise (the same seed) and JPEG as the core test. - Photos with no people (13). The window of the source file was made 1536 × 1152 (the original) and 384 × 288 by area averaging, then the same blur, noise and JPEG as the core test.
- Real low-quality photos (29), no high-resolution original. Input: the crop of the file as published, at its own pixels, nothing else.
- Old prints and film (19), no clean original. Input: the file as downloaded, shrunk by area averaging (OpenCV INTER_AREA) to 480 px on the long side, nothing else.
- Natively small photos (44), no high-resolution original. Input: the file exactly as published (37 Flickr photos, 2001–2007) or a frame of the video (7 frames of web videos, 2005–2009). Files under NC or ND licences and the video frames are linked, not redistributed, and their results are not shown on this page.
Sources
- [1]Du Chen et al. Toward Generalized Image Quality Assessment: Relaxing the Perfect Reference Quality Assumption. CVPR, 2025.
- [2]Dongping Chen et al. MLLM-as-a-Judge: Assessing Multimodal LLM-as-a-Judge with Vision-Language Benchmark. ICML, 2024.
- [3]Lianmin Zheng et al. Judging LLM-as-a-Judge with MT-Bench and Chatbot Arena. NeurIPS Datasets and Benchmarks Track, 2023.
- [4]Anthropic. Introducing Claude Opus 5.5. Anthropic announcement page, 2026.
- [5]Qwen Team. Qwen3.8-27B-FP8 (model card). Hugging Face model card (no paper), 2026.
- [6]Jia Guo et al. Sample and Computation Redistribution for Efficient Face Detection. ICLR (poster), 2022.
- [7]Jiankang Deng et al. ArcFace: Additive Angular Margin Loss for Deep Face Recognition. CVPR, 2019.
- [8]Xiang An et al. Partial FC: Training 10 Million Identities on a Single Machine. ICCV Workshops (MFR), 2021.
- [9]Qiang Meng et al. MagFace: A Universal Representation for Face Recognition and Quality Assessment. CVPR (oral), 2021.
- [10]Minchul Kim, Anil K. Jain, Xiaoming Liu. AdaFace: Quality Adaptive Margin for Face Recognition. CVPR (oral), 2022.
- [11]Zheng Zhu et al. WebFace260M: A Benchmark Unveiling the Power of Million-Scale Deep Face Recognition. CVPR, 2021.
- [12]fal. AuraFace (AuraFace-v1 model card). Hugging Face model card (no paper), 2024.
- [13]Žiga Babnik, Peter Peer, Vitomir Štruc. eDifFIQA: Towards Efficient Face Image Quality Assessment based on Denoising Diffusion Probabilistic Models. IEEE Transactions on Biometrics, Behavior, and Identity Science (T-BIOM), vol. 6, no. 4, pp. 458–474, 2024.
- [14]Žiga Babnik, Peter Peer, Vitomir Štruc. DifFIQA: Face Image Quality Assessment Using Denoising Diffusion Probabilistic Models. IJCB (IEEE International Joint Conference on Biometrics), 2023.
- [15]Richard Zhang et al. The Unreasonable Effectiveness of Deep Features as a Perceptual Metric. CVPR, 2018.
- [16]Keyan Ding et al. Image Quality Assessment: Unifying Structure and Texture Similarity. IEEE TPAMI, vol. 44, no. 5, pp. 2567–2581, 2022.
- [17]Stephanie Fu et al. DreamSim: Learning New Dimensions of Human Visual Similarity using Synthetic Data. NeurIPS (spotlight), 2023.
- [18]Maxime Oquab et al. DINOv2: Learning Robust Visual Features without Supervision. Transactions on Machine Learning Research (TMLR), 2024.
- [19]Chaofeng Chen et al. TOPIQ: A Top-down Approach from Semantics to Distortions for Image Quality Assessment. IEEE Transactions on Image Processing, vol. 33, pp. 2404–2418, 2024.
- [20]Gaurav Sharma, Wencheng Wu, Edul N. Dalal. The CIEDE2000 color-difference formula: Implementation notes, supplementary test data, and mathematical observations. Color Research & Application, vol. 30, no. 1, pp. 21–30, 2005.
- [21]Junjie Ke et al. MUSIQ: Multi-scale Image Quality Transformer. ICCV, 2021.
- [22]A. Mittal, R. Soundararajan, A. C. Bovik. Making a “Completely Blind” Image Quality Analyzer. IEEE Signal Processing Letters, vol. 20, no. 3, pp. 209–212, 2013.
- [23]Sidi Yang et al. MANIQA: Multi-dimension Attention Network for No-Reference Image Quality Assessment. CVPR Workshops (NTIRE), 2022.
- [24]Jianyi Wang, Kelvin C. K. Chan, Chen Change Loy. Exploring CLIP for Assessing the Look and Feel of Images. AAAI, vol. 37, no. 2, pp. 2555–2563, 2023.
- [25]Chaofeng Chen, Jiadi Mo. IQA-PyTorch: PyTorch Toolbox for Image Quality Assessment. GitHub software (pyiqa), 2022.
- [26]MegaPotato. Pricing. Our own page, accessed 14 October 2026.
- [27]Clarity AI. Pricing. Vendor page, accessed 8 and 10 October 2026.
- [28]Topaz Labs. API plans and credits. Vendor page, accessed 8 October 2026 and again on 13 October 2026.
- [29]fal.ai. Topaz Image Upscale: Generative, Precision, Creative. Vendor pages, accessed 10 October 2026.
- [30]Topaz Labs. Pricing: Gigapixel, Topaz for Web. Vendor page, accessed 8 October 2026; the sale prices and the plan limits as shown on 10 October 2026.
- [31]Let's Enhance. Pricing. Vendor page, accessed 8 October 2026.
- [32]Google. Gemini API pricing. Vendor page, accessed 8 October 2026.
- [33]OpenAI. API pricing. Vendor page, accessed 8 October 2026.
- [34]Recraft. API pricing. Vendor page, accessed 8 October 2026.
- [35]Magnific through ComfyUI's partner nodes: API node pricing (35.91 credits per 2× step on an input up to 1.3 MP, 107.73 up to 6.4 MP; $1 = 211 credits), accessed 8 October 2026. Magnific's own plans: Pricing, vendor page, accessed 8 October 2026.
- [36]Krea. Pricing. Vendor page, accessed 8, 10 and 14 October 2026.
- [37]Topaz Labs. Model Pricing. Developer documentation, accessed 13 October 2026.
- [38]VanceAI. Pricing. Vendor page, accessed 8 October 2026.
- [39]Pixelcut. Pricing and API pricing. Vendor pages, accessed 8 October 2026.
- [40]Remini. remini.ai: the subscriptions are shown inside the app. Vendor page, accessed 8 October 2026.
