Add a Watermark to Photos in Bulk

Text or your own logo, on as many photos as you like. Nothing is uploaded.

🖼️ → 💧
Drop images here, or click to choose JPG, PNG or WebP — as many as you like, nothing is uploaded

Every image is watermarked on your own machine. Nothing is uploaded.

At a glance

InputAny image; a logo may be PNG, SVG, WebP or JPG
WatermarkText, or your own logo file
Size2 to 15 percent of the image, default 5
Opacity10 to 100, default 50
Files at onceMany; download them together as a ZIP
Where it runsEntirely in your browser — no file is uploaded to a server
PriceFree, with no account and no sign-up
OfflineWorks with no connection after the first visit

One setting, any mix of sizes

The size you choose is a percentage of each image’s own width, not a number of pixels. So a 5% mark looks the same on a 600px thumbnail and on a 6000px photograph, and a batch straight off a camera alongside a few web exports comes out consistent. Position and padding scale the same way.

The preview shows the first image in the batch. Everything else gets exactly those settings — previewing fifty images would cost more than doing the job.

A watermark that deters without ruining the picture

A mark in a corner is easy to crop off. Tiled covers the whole frame at an angle, which is what you want for proofs and previews — it survives cropping and screenshotting, and it comes off cleanly when you deliver the finals.

Somewhere around 40–60% opacity is the usual balance: readable enough to claim the image, faint enough that a client can still judge the photograph. The shadow helps a white mark stay legible over a bright sky.

What comes out

Each file keeps its own name with -watermarked added, and its original format — a JPG stays a JPG, a PNG keeps its transparency. Two files that would end up with the same name are numbered apart rather than one quietly replacing the other.

Take them one at a time from the list, or the whole batch as a single zip.

Using a logo instead of text

A PNG or SVG with a transparent background is what you want. A logo on a white rectangle will be stamped complete with its rectangle, which is the commonest disappointment here and is a property of the file rather than the tool.

The size slider means the same thing in both modes — a share of the image width — so a batch of differently sized photographs gets a mark of the same relative size on each, rather than one that is enormous on a thumbnail and invisible on a full-resolution shot. The aspect ratio is never altered.

Colour and shadow apply to text only and are hidden in logo mode, since neither can change what is already in your file.

Frequently asked questions

Are my images uploaded anywhere?

No. Every image is decoded, watermarked and saved by JavaScript on your own machine. Nothing is sent to a server, which matters rather more for unreleased client work than for a holiday snap.

How many images can I do at once?

There is no fixed limit. They are processed one at a time and each is released as soon as it is done, so a long batch takes longer but does not run the tab out of memory. You can cancel part way through and keep whatever finished.

Can I use my logo instead of text?

Yes. Switch to logo mode and choose a PNG, SVG or WebP — a PNG with a transparent background gives the cleanest result. It is placed and sized exactly like the text mark, including the tiled option.

Why is one of my files listed as unreadable?

The browser could not decode it — usually a format it does not support, or a damaged file. The rest of the batch carries on regardless; only that one is skipped.

Does it change the image quality?

JPGs and WebPs are re-encoded at high quality, so there is a small generational loss as with any edit. PNGs are lossless and lose nothing.

Something wrong with this tool, or an idea for it? Tell us