How to batch convert thousands of images on a Mac
You can do this with B64 in a single pass. Here is what a run of that size behaves like, and what to set before you start it.
A few dozen files is a batch. A few thousand is a different question: how long, how much memory, can I use my Mac while it runs, and can I stop it.
This guide covers large runs in B64.
A batch run happens entirely on your Mac. A thousand files are read from your disk, converted in the app and written back to your disk — nothing is uploaded, and the run works with the network switched off.
What a large run behaves like
- It streams. Scanning and converting happen as it goes, and rows appear as they are ready. Nothing waits for the whole folder to be read first.
- The window stays responsive. You can scroll the list, select rows, open the Inspector and read details while the run continues.
- You can stop it. Cancel ends the run where it is, and everything already converted stays in the list.
- Progress is a running count. An indicator and a count of files converted, updated as the run goes.
Before you start
Set the output format and wrapping
Every result in the run uses the current settings. Fix them in B64 ▸ Settings… ▸ General before you start rather than re-running a thousand files because you wanted data URIs.
Decide about the checksum manifest
One line per file, written alongside the results. On a large run it is how you verify a thousand conversions later. How to create a checksum manifest.
Try a small slice
Drop in twenty files first and export them. Look at one result. If the format is wrong you have lost twenty seconds rather than twenty minutes.
Give the results their own folder
Export All as Base64… creates the folder you name. Somewhere like
/Users/you/Documents/exports/2026-09-15-payloads/keeps a big run away from everything else.
How long it takes, roughly
Encoding itself is fast — the work is dominated by reading files from disk and writing results back. The constraints are the total size of your sources and the speed of the disk they are on.
| Factor | Effect |
|---|---|
| Total bytes of source | The dominant cost — 3 GB takes longer than 3 000 files |
| Files on an external or network volume | Much slower than a local disk |
| Very large individual files | Handled, but each one takes proportional time |
| Number of files | Matters less than you would expect |
Three thousand icons is a smaller job than thirty camera originals. If a run is slower than you expected, look at the total size rather than the file count.
Memory
Results stream to disk rather than accumulating a thousand multi-megabyte strings in memory. The list holds thumbnails and metadata, not the payloads themselves — which is why a very large run does not steadily eat your Mac while it works.
Checking a large run afterwards
- Read the skipped list first. The count is on an orange pill; clicking it says exactly which files and why. On a thousand-file run this is the single most useful thing on screen.
- Spot-check a few results. Double-click a row to open it properly, and check the format is the one you meant.
- Keep the manifest. It is what lets you verify the run in six months, when nobody remembers what was in the folder.
Troubleshooting
It is slower than I expected
Check where the files live. An external drive or a network share is often the whole explanation. Copy them locally first if it matters.
I started it with the wrong format selected
Cancel, fix the setting, and start again. Cancelling is immediate and everything already converted stays listed.
The skipped count is enormous
Click the pill. On a mixed folder that is usually correct behaviour — system files and documents being refused — but it is also how you discover you dropped in the wrong directory.
I need it in several chunks
Add sources in groups and export each group to its own folder. Batch accepts any number of sources, so you can also add more to a run in progress.
Frequently asked questions
How many files can Batch handle?
Thousands in a single pass. Results stream as they go rather than being accumulated in memory, which is why a very large run stays responsive.
Can I use my Mac while it runs?
Yes. The window stays usable and the rest of the system is unaffected — you can scroll the list, select rows and read details while conversion continues.
Can I stop a run part-way?
Yes. Cancel ends it where it is, and everything already converted stays in the list.
Why is my run slow?
Total bytes, not file count, is what costs time — and files on an external or network volume are much slower than local ones.