Watermark Image

Add a text watermark to a photo, with a live preview on the actual image so you can see exactly how size, opacity, angle, and position will look.

Click to choose an image, or drag and drop it here

JPG, PNG, WebP. Stays on your device, nothing is uploaded.

Your watermarked image will appear here once generated.

The preview above shows your watermark live on the actual image as you adjust size, opacity, angle, color, and position. The final download matches what you see, scaled up to your image's full resolution.

How it works

The live preview is a positioned DOM element layered over your photo, but the final image is real pixel work on a <canvas>. When you hit apply, the original image is drawn at full resolution, then the canvas context is translated to one of nine anchor points (corners, edge midpoints, center, each inset by a 6% margin), rotated by your angle, and the text is drawn with fillText() using your color and opacity via globalAlpha. Text alignment and baseline are set per anchor so "bottom-right" in the preview lands in the same relative spot in the output.

The subtle part is scale. Your on-screen preview might be 500 pixels wide while the actual photo is 4,000, so a naive tool renders a watermark that looked right in preview but comes out microscopic. This one measures the ratio between the displayed preview width and the image's natural width and multiplies the font size by it, so 48px in the preview means the same proportional size in the full-resolution file. The result is re-encoded in the original format: JPEG at 0.95 quality, PNG losslessly (pick PNG if you want the crispest possible text edges).

Worth understanding about what a watermark is: this text is baked into the pixels, not stored as a layer or metadata, so nobody can strip it the way EXIF data gets stripped. That cuts both ways. A small, low-opacity mark in a corner is easy prey for crop tools and AI inpainting; a watermark that actually protects an image overlaps the subject, at an angle, at moderate opacity, which is exactly what the position, angle, and opacity controls are for.

Both preview and final render run in your tab. Check DevTools' Network panel while you work: the photo is never uploaded, so client proofs and unreleased shots stay on your machine.

Common questions

Does the preview match the final download exactly?

Yes, the live preview is drawn directly on your actual uploaded image, not an approximation. The font size scales up proportionally to your image's full resolution when you download, so what you see is what you get.

Can I watermark a batch of photos at once?

Not yet, this tool handles one image at a time. If you need the same watermark on many photos, you'll need to repeat the process for each one.

Will this protect my photos from being stolen?

A visible watermark discourages casual reuse and makes attribution clear, but it can be cropped or edited out by someone determined to remove it. It's a deterrent, not an unbreakable protection.