Last month I had a client send me 340 product photos that all needed the same treatment: resize to 1200x1200px, sharpen slightly, convert to sRGB, export as JPEG at 85% quality. I know, thrilling stuff. The old version of me would have cracked my knuckles, opened the first image, and started manually grinding through them like some kind of artisanal photo monk. The new version of me had it done before my second coffee arrived.

That’s batch processing. And if you’re still editing repetitive work by hand, I genuinely feel bad for you, because you’re trading hours of your life for nothing.

What Photoshop Is Actually Doing When You Batch

Before you set anything up, it helps to understand the machinery. Photoshop’s batch system runs on top of Actions, which are basically macros. You record yourself doing something once, and Photoshop memorizes every step at the command level, not just the pixel level. When you batch, you’re telling Photoshop to open each file in a folder, run that action, and either save the result or drop it somewhere new.

The reason this is fast isn’t magic. It’s that Photoshop skips the human latency between every click. You and I take two or three seconds between steps. The software takes milliseconds. On 340 files, that gap compounds into hours.

The whole system lives under File > Automate > Batch. But before you go there, you need an Action, because the Batch dialog is just a delivery vehicle. The Action is the actual payload.

Recording an Action That Won’t Embarrass You Later

Open Window > Actions and click the little page icon at the bottom to create a new Action. Name it something useful, not “Action 1.” I use a naming convention like CLIENT_task_date, so Acme_resize-sharpen_Jan25. Hit Record.

Now do the work, exactly as you want it done every time. For the example above, that’s:

  1. Image > Image Size: 1200x1200px, Resolution 72ppi, Resample set to “Bicubic Sharper” for downsizing.
  2. Filter > Sharpen > Unsharp Mask: Amount 60%, Radius 0.8px, Threshold 3. That’s my go-to for product photos. Subtle but present.
  3. Edit > Convert to Profile: sRGB IEC61966-2.1. Don’t skip this. Web images displayed in the wrong color profile look wrong and your client will blame you, not their monitor.
  4. Hit Stop.

Do not include Save or Close in your Action. Let the Batch dialog handle that. If you record a Save step, you’ll create conflicts and potentially overwrite originals. Ask me how I know. (I know because I did it.)

Setting Up the Batch Dialog Without Losing Your Mind

Go to File > Automate > Batch. Here’s how I fill it out:

  • Set and Action: Pick the set and the action you just recorded.
  • Source: Folder. Click Choose and point it at your input folder.
  • Check “Override Action ‘Open’ Commands” if your action recorded an Open step, which you should avoid but sometimes happens.
  • Destination: Folder. Point it somewhere that is NOT your source folder. Create a folder called output or processed first. Seriously, use a different folder.
  • Check “Override Action ‘Save As’ Commands” if you want Photoshop to handle the file naming.
  • File Naming: I use Document Name + 2 Digit Serial Number + extension. This keeps your files organized if you’re running multiple batches.

For the export format, I handle this by recording a File > Export > Export As step in my action, set to JPEG, quality 85. At quality 85, a typical 1200x1200 product photo lands around 180-250KB, which is a good balance for web performance without visible compression artifacts.

Hit OK and go outside. Touch grass. You’ve earned it.

The One Time I Did This Wrong (A Cautionary Tale)

Early in my freelancing career, a client needed about 200 banner ads resized across four dimensions. I built the action on a file that had a specific layer structure, ran the batch, and came back to find 200 perfectly processed… blank white rectangles. The action had recorded a layer visibility toggle that only made sense for that original file. On every other file, it just hid everything.

The fix is simple but easy to forget: always record your actions on the most generic, plain version of the file type you’re processing. No weird layer comps, no special states, no open adjustment panels. If you’re processing flat JPEGs, record on a flat JPEG. If something can vary between files, it will bite you.

I also now always do a test run on three to five files before committing the full batch. Takes 30 seconds and has saved me probably a dozen face-palm moments.

When Batch Isn’t Enough: Meet Image Processor

For pure export jobs, resize-and-convert type work, File > Scripts > Image Processor is actually faster to set up than a full Batch run. It doesn’t need a pre-recorded Action. You point it at a folder, choose your output formats (it can export JPEG, PSD, and TIFF simultaneously), set your resize dimensions and JPEG quality, and go.

Image Processor won’t do complex edits, no filters, no color corrections, but for “I just need these 400 photos as JPEGs at 1000px wide,” it’s the fastest tool in the shed. I use it probably twice a week.

The one setting people miss: “Include ICC Profile” at the bottom. Check it. Always. It embeds the color profile in the file so what you see is what everyone else gets.

Batch processing won’t make you a better designer, but it will make you a faster one, and in freelance, time and money are the same thing.