Loading...
Loading...
Stamp a text caption or logo onto a batch of photos — pick from nine corner positions or a tiled repeat, dial in size and opacity, and export at full resolution.
A watermark adder stamps a small caption, copyright line, or logo onto a photo so the image stays attributable when it gets shared, downloaded, or scraped. Photographers use them on portfolios and proofs, designers use them on draft renders, real-estate agents use them to brand listing photos, and bloggers use them to claim hero images. Unlike a full editor, a watermark adder is laser-focused on one job: render the same mark in the same position across an entire batch of images, in seconds. This tool supports both text watermarks (with color, size, and rotation) and image watermarks (a logo PNG). You get nine corner positions plus a tile mode that repeats the mark diagonally across the photo, opacity from subtle to bold, padding to keep it off the edge, and per-image format and quality controls. Everything happens in your browser through the Canvas API.
Drag up to 25 JPG, PNG, or WebP files onto the upload area, or click to pick from your device. Each row shows the source dimensions and file size.
Type a caption, copyright line, or your name — pick a color and the watermark renders with a thin black outline so it stays readable on any background. Or switch to Logo image and upload a PNG (transparent background recommended).
Pick one of nine corner or center positions, or click Tile across image to repeat the mark diagonally across the photo. Tile mode is the standard for hard-to-strip portfolio watermarks.
Size is a percentage of the photo's longer edge, so it scales sensibly across portrait and landscape. Opacity ranges from a barely-there 5% all the way to a fully opaque 100%. Padding keeps the mark off the edge. Rotation gives you the classic 30-degree slant for tile mode.
Click Apply watermark to process the queue. Each row updates with the result and a Download button. Use Download all to grab the whole batch with a small delay between files so the browser doesn't block them.
1. Decode each input file with createImageBitmap() — native, no library. 2. Allocate a 2D canvas at the source's exact width and height. 3. Draw the source image to the canvas at full resolution. 4. Compute the watermark size as a percentage of the longer edge. 5. Set ctx.globalAlpha to the chosen opacity (5%–100%). 6. For text: render with fill + thin stroke for an auto-outline. 7. For logo: drawImage at the computed size, preserving aspect ratio. 8. For tile mode: rotate the context, then loop drawing across the canvas. 9. Re-encode with canvas.toBlob(format, quality) and offer it as a download.
Using globalAlpha for opacity rather than baking transparency into the source means the watermark composites correctly against the photo's actual pixels — a 30% opacity stamp on a white sky and on a dark wood floor both look right. Sizing the watermark relative to the image's longer edge (rather than a fixed pixel size) means a 4032-pixel phone photo and a 1280-pixel screenshot end up with a similarly sized mark, instead of one being a tiny dot and the other taking up half the frame. Tile mode rotates the canvas around its center, then repeats the watermark across a grid that extends past the canvas bounds — that way the corners get filled even when the rotation cuts diagonally.
Reference: MDN — CanvasRenderingContext2D.globalAlpha
| Source | Suggested settings |
|---|---|
Photographer's portfolio proofs | Tile mode + text '© Your Name' at 18% opacity, rotated -30°, white text. Hard to crop out, easy to remove on the licensed export. Tile makes the mark survive any single corner-crop attempt. |
Real-estate listing photos | Bottom-right logo at 12% size, 70% opacity, 3% padding. Brand-consistent without distracting from the room. Bottom-right is the convention for property branding. |
Blog hero images and social cards | Bottom-left text 'yourblog.com' at 50% opacity, 4% size. Subtle attribution that survives Twitter or Facebook re-shares. Smaller and more transparent reads as 'attribution', not 'ad'. |
Design draft renders sent to a client | Center text 'DRAFT' at 80% opacity, white with black outline, 35% size. Loud enough that no one mistakes it for the final. Center + high opacity is the standard 'do not use' marker. |
Cut out the subject from any photo with on-device AI — no upload required.
Shrink JPG, PNG, or WebP files in your browser with an interactive quality slider.
Adjust, filter, rotate and crop photos in the browser — no uploads, no watermark.
Compose memes and screenshot collages with real layers — paste, drag, crop, caption, export.
Last updated