Short answer

Switch on Batch Upscayl, click Select Folder and pick a folder that holds only PNG, JPG, JPEG or WEBP images. Upscayl writes the results into a new subfolder such as upscayl_png_upscayl-standard-4x_4x inside the output folder, which defaults to the folder you picked. Try a copy of five images before a whole collection.

Upscayl project banner with the 2.9.0 main window, showing Step 3 Defaults to Image's path and Step 4 Upscayl from 368x366 to 1472x1464.
Upscayl's GitHub banner, showing version 2.9.0. The four steps and the "Defaults to Image's path" output rule are unchanged in 2.15.0. Upscayl / upscayl.org / upscayl/upscayl (AGPL-3.0).

How do I batch upscale images in Upscayl?

  1. Make a test folder. Copy five representative images into a new folder, with nothing else in it.
  2. Turn on batch mode. Click the Batch Upscayl switch at the top of the sidebar; Step 1 changes to Select Folder.
  3. Select the folder. Click Select Folder and choose the test folder. Step 3 now reads Defaults to Folder's path.
  4. Choose the model that worked. In Step 2 pick the model that gave the best single-image result.
  5. Start the batch. Click Upscayl and wait until the app shows All done, even if the progress bar looked finished earlier.
  6. Check the results folder. Click Open Upscayled Folder and compare several outputs with their originals at 100% zoom.

Why test a batch on a small copy first?

A batch repeats one decision hundreds of times, so a wrong model or scale multiplies. A test folder of five images, mixed the same way as the real collection, shows within minutes whether one model suits them all. It also proves the output folder has room: a 4x PNG has sixteen times the pixels of the original and is often much larger on disk. If photos and drawings are mixed, split them into two folders and use a different model for each.

Where does Upscayl put batch results?

Upscayl never overwrites the originals in batch mode. It creates a subfolder named from the format, model and scale, for example upscayl_png_upscayl-standard-4x_4x, inside the output folder (batch-upscayl.ts). The output folder defaults to the folder you selected, so results appear inside it (index.tsx). Running the same folder with another model creates a second subfolder, which makes side-by-side comparison easy.

Why did the batch look finished before it was?

Post-processing happens after every image is upscaled, not file by file. The README FAQ says that when a model does not support the chosen scale or setting, Upscayl upscales all images first and then post-processes them, so you should wait. Until the app shows All done!, some files may still be at the model’s native size. Check the count of output files against the input folder before you rely on the batch.

What if a batch fails partway through?

A batch failure is usually the same GPU or memory problem a single image would hit. Open Settings, copy the log and look for a vk… error, then use the Vulkan GPU check. Very large images in the folder are the common cause of out-of-memory errors; move them to a separate run.

What Upscayl batch mode does
QuestionBehaviour in Upscayl
Which files are processedThe images in the selected folder; the app asks for a folder with only PNG, JPG, JPEG and WEBP files
Where results goA new subfolder in the output folder, named upscayl_<format>_<model>_<scale>x
Default output folderThe selected folder itself, unless Save Output Folder remembers another one
OriginalsLeft unchanged; results are separate files
Scale or format that the model does not produce nativelyAll images are upscaled first, then resized or converted at the end
Stopping earlyThe STOP button ends the run; images still waiting for post-processing stay at the model's native size

Read from Upscayl 2.15.0: electron/commands/batch-upscayl.ts, renderer/pages/index.tsx, renderer/locales/en.json and the README FAQ.

Frequently asked questions

Why are some batch images the wrong size or format?

When the model does not natively produce the scale or format you chose, Upscayl upscales every image first and post-processes them all at the end, as the README FAQ explains. If you stop the batch before that finishes, the remaining files keep the model's native 4x size. Let it run to All done.

Can Upscayl batch process subfolders?

Select one folder per run. The app's own instructions ask for a folder that contains nothing except PNG, JPG, JPEG and WEBP images, so move other files and subfolders out first.

How long does an Upscayl batch take?

It depends on image size, model, scale and GPU. Time one image first; the right-hand panel shows the last upscale's duration and your average. Multiply by the number of files, and remember that TTA mode makes each image about 8x slower.