Stamp images the moment they arrive, not the night before proofs go out.
A watermark applied by hand protects exactly the images you remembered to run the batch on. The gallery exported at 1am, the listing photos an assistant uploaded straight from the card, the one client folder that skipped the Lightroom preset: those go out clean, and the clean ones are what end up cropped into someone else's feed. Automatic watermarking fixes the category of mistake instead of the instance: the mark is applied server-side at the moment of upload, so nothing you serve was ever missing it. There are three ways to get there: a compositing script on your own backend, on-request overlays from a transformation CDN, or a hosted upload endpoint that stamps during ingest, which is what Tonta does starting at $9 a month.
Script it, overlay it, or stamp it on the way in.
If you already run your own upload backend, watermarking is one compositing step: ImageMagick on the command line, or sharp's composite() if the pipeline is Node. The software is free and the control is total: any placement, any opacity, tiled or single, a different mark per output size. What you're paying with is everything around that step. You own the upload endpoint itself, a queue so 400 wedding photos arriving at once don't stall the web process, EXIF orientation handling so portrait shots don't get stamped sideways, and HEIC conversion for whatever an iPhone decides to send. If that pipeline already exists, adding the watermark is an afternoon. If it doesn't, the watermark is the easy five percent of the project.
Transformation CDNs like Cloudinary treat the watermark as a URL parameter: you store the original once, and an overlay layer in the delivery URL applies the mark per request. It's the most flexible model, because one original can serve a heavily marked proof and a clean print file from two different URLs. It's also the model where protection depends on configuration discipline: the clean original lives on the CDN, and any URL without the overlay parameters serves it, unless you've also enabled strict transformations or signed URLs. Plenty of teams get that right. Some find out they didn't when a client notices that deleting half the URL removes the watermark.
Ingest-time watermarking flips the order of operations: the mark is burned in while the file is being processed at upload, and what lands in storage is already stamped. Nothing to remember per shoot, and no URL variant that serves the file clean. The tradeoff is that burned-in means burned-in: when you need an unmarked copy later, you upload it through an endpoint that doesn't watermark; you don't peel the mark off. That's the model Tonta runs, and it's the working example for the rest of this guide.
Four things change when the watermark is part of the upload itself.
No gap between upload and protection
The stamp goes on during server-side processing, before anyone gets handed a link. There's no export session scheduled for later, which means there's no window where the plan was "watermark it before the client sees it" and the client saw it first.
One setting, not a workflow
Watermarking is configured on the uploader, so every image through that endpoint gets the same treatment. The setting applies whether the upload came from you, an assistant, or a client on a phone, on any device, at any hour.
The same pass handles the boring parts
Resize, WebP conversion, and compression run in the same ingest pipeline as the watermark, so a 4MB camera original also comes out light enough to browse on a weak phone signal. One upload, one processing pass, proof-ready output.
Copyright inside the file too
Tonta can embed XMP metadata, creator, copyright, title, into the image file itself at upload (you enable it in the dashboard). It travels with the file when it's downloaded and re-shared, which covers cases a visible mark can't.
The only watermark that shows up on every image is the one nobody has to remember to apply.
From logo file to stamped uploads in about ten minutes.
- Design a mark that survives a crop. Semi-transparent, large enough that removing it costs real effort, and placed across the subject rather than tucked in a corner. A corner mark disappears in one crop; that's why every proofing service you've ever seen puts it across the middle.
- Create an uploader and turn watermarking on. In the Tonta dashboard, each uploader is its own endpoint with its own settings. Enable the watermark on the one that handles proofs or previews. Watermarking is available from the Starter plan at $9 a month.
- Embed the uploader where images come in. One script tag pointed at a target element, shown below. If the surrounding form doesn't exist yet, the walkthrough on how to add file upload to your website covers that end to end.
- Test with a real photo. Upload a full-resolution shot and inspect the versions in the JSON response. The stamped, resized, WebP output is what you serve; if the mark is too faint at web size, adjust it now, not after a gallery ships.
- Turn on XMP if attribution matters. Creator and copyright fields get written into the file itself. It needs enabling in the dashboard; it isn't on by default.
The embed is the whole integration. It renders the upload UI and posts the file to Tonta's hardened endpoint, so there's no backend to write and no processing queue to run:
<script src="https://tonta.io/uploader/uploader.js"
data-backend="https://tonta.io/uploader/upload.php"
data-target=".proof-uploader"
data-api-key="YOUR_API_KEY"
data-callback="handleUpload"></script>
If you're weighing this style of drop-in embed against building your own front end, the file upload widget comparison goes through that fork properly. And for photographers, the useful next move is that any Tonta uploader can be flipped into a shareable gallery: proofs go in watermarked, clients browse them from a link, nobody installs anything. The reverse direction, getting raw files from clients in the first place, is a different setup with its own pitfalls, covered in the guide to collecting files from clients.
What automatic watermarking costs, and which tier you actually need.
Every Tonta plan includes processing, the CDN, and the full upload API. Watermarking specifically starts at Starter. Prices are USD, monthly, from tonta.io/pricing as of July 2026.
| Plan | Price | Storage | Uploaders | Watermarking |
|---|---|---|---|---|
| Free | $0/mo | 5 GB | 1 | Not included (resize, WebP, and compression are) |
| Starter | $9/mo | 100 GB | 5 | Included, and Tonta branding comes off the uploader |
| Professional | $29/mo | 500 GB | 25 | Included, adds webhooks and video compression and streaming |
| Business | $79/mo | 2 TB | 100 | Included, storage add-ons at $20/TB |
| Agency | $249/mo | 5 TB | Unlimited | Included, plus white-label tools and 30 TB monthly egress |
The free tier is a real one, 5 GB and one uploader with no card required, and it's the right place to prove the pipeline before paying: uploads, resize, WebP, the JSON response, all of it works at $0. The watermark itself is a Starter feature, and $9 a month buys a sensible bundle for a working photographer or a small product team: 100 GB, the mark applied automatically, and the uploader wearing your branding instead of Tonta's. Five uploaders also map cleanly onto a proofing workflow: one watermarked endpoint for previews, one clean endpoint for final delivery after payment, and room left over.
Two limits worth stating plainly. Watermarking on Tonta is an image feature; video upload with GPU transcoding exists from Professional up, but a burned-in video watermark isn't a documented capability, so ask before you build a plan around it. And there's no official SDK: integration is the script tag plus plain HTTP, which covers most sites fine, but a team that wants a first-class Python or Ruby client won't find one today.
The cases where a batch job is honestly the right tool.
If images only ever leave your machine through Lightroom exports, Lightroom's built-in watermark on an export preset is automatic enough, and you already paid for it. It stops working the moment uploads start happening from other people and other devices, but a solo shooter with one laptop and one workflow doesn't need an upload pipeline to solve a problem they don't have.
If you need many different marks from one original, a partner logo for one channel, a heavy proof stamp for another, a clean file for print, Cloudinary's on-request overlays genuinely win: one stored original, every variant a URL. You take on a bigger platform, metered transformations, and the strict-transformations homework from earlier, but for multi-variant delivery at scale that's the better fit.
And if you already operate an upload backend you're happy with, bolting a composite step onto it is a small, honest job. The at-upload model earns its keep the moment more than one person, device, or workflow feeds images into the same place. That's the point where "remember the preset" stops being a plan.
Automatic watermarking, asked the way people ask it.
Can I automatically watermark images on upload for free?
Not on Tonta: the free tier (5 GB, one uploader) includes resize, WebP, and compression but not watermarks, which start at Starter, $9 a month. The genuinely free routes are ImageMagick or sharp on a server you already run, or Lightroom's export watermark if you own it. Both are free the way self-hosting is free: the software costs nothing and the maintenance is yours.
Does automatic watermarking work on video too?
Treat Tonta's watermarking as an image feature. Video upload with GPU transcoding to multiple resolutions is available from the Professional plan ($29/mo), but a burned-in video watermark isn't documented, so confirm with support before planning a workflow around it. The DIY equivalent is ffmpeg's overlay filter, which works but costs real compute time per clip.
Will a watermark actually stop image theft?
It stops casual reuse and keeps attribution attached, which is most of the real-world problem. It won't stop someone determined: marks get cropped, cloned out, or screenshotted around. The practical posture is layered: a visible mark across the subject on proofs, XMP copyright metadata inside the file, and clean originals that only go out once the invoice is paid.
Does watermarking slow the upload down?
The compositing runs server-side on Tonta's infrastructure, in the same ingest processing as resize and compression, so the person uploading isn't waiting on their own machine to do the work. Upload time is still dominated by file size and connection speed, same as an unwatermarked upload.
Can I run watermarked and clean endpoints side by side?
Yes. Each Tonta uploader is configured independently, with its own API key, allowed domains, and settings, so a watermarked proofing endpoint and a clean final-delivery endpoint can live in the same account. Starter includes five uploaders, which is enough for that split with room to spare.
Stamp them on the way in, then stop thinking about it.
Prove the pipeline on the free tier, no card needed. Flip on watermarks for $9 a month when proofs start going out.