How to Watermark Images and Build GIFs: Frames, Ghosting, Size
A watermark proves where an image came from, it does not stop anyone taking it. This guide covers the opacity and position values that hold up, why GIF frames ghost when you pull them apart, and which setting to cut first when an animation will not upload.
- A watermark proves ownership but prevents nothing: a corner mark disappears with one crop, while tiling resists removal and flattens the look of the whole image
- Extracted GIF frames ghost because most frames store only the rectangle that changed and must be composited onto the previous canvas
- Disposal method 2 clears the frame rectangle to the background colour and method 3 restores the earlier canvas; ignoring both leaves the old frame visible
- GIF size is roughly frame count times pixels per frame times colour complexity, so shrink the output size first because halving the edge cuts size to about a quarter
- Delay changes playback speed and not file size; the GIF delay field counts hundredths of a second and anything under 20 ms is clamped to 20 ms
- A single GIF build is capped at 7,000,000 total pixels (width x height x frames) and each frame is quantised to 255 colours plus one transparent slot
#A watermark proves ownership, it does not prevent copying
A watermark makes an image traceable; it does not make it untouchable. Cropping a few pixels or running a healing brush removes a corner mark in seconds. Tiling survives that, but you pay for it with the way the whole picture looks.
| What you want | What to do | How it gets bypassed |
|---|---|---|
| Credit on a blog or post | Small corner text at 40%-60% opacity | Crop the corner off |
| Product photos, portfolio | Tiling at 20%-35% opacity | Slow, but repairable block by block |
| Marking internal documents | Large centred text at 15%-25% | Covers the subject |
| Drafts you do not want reused | Tiling plus a 30° rotation | Costliest to remove, worst to look at |
Protection and looks trade off directly, and no setting wins both. The test is simple: how much is this image worth once the watermark is gone? A lot, and tiling earns its cost. Very little, and a light corner mark is enough.
#Choosing position, opacity and rotation
The 9-position grid keeps a watermark off your subject; tiling makes it impossible to crop away. Decide which problem you actually have. Image Watermark calculates the offset from the image dimensions and exports a PNG at the full original resolution, with no lossy pass in between.
#Opacity runs from 5% to 100%, default 60%
Below roughly 15%, a watermark disappears against light backgrounds and one contrast curve erases it. The useful band is 20%-50%: take the low end for tiling, the high end for a corner credit.
#Rotation runs from -45° to +45°
Straight horizontal text hides behind the image's own lines and can be painted out row by row. At 30°-45° the mark crosses many rows of pixels, so removing it without damaging the picture gets much harder.
#Tiling spacing follows the font size
In tiling mode the mark repeats across the whole canvas with a gap of about 0.8 times the current font size, and there is no separate spacing control. Raising the font size therefore enlarges the mark and the gap together — fewer, larger marks.
Watermark first, resize second. Doing it the other way round leaves the mark soft and jagged, because scaling interpolation smears it into the freshly compressed noise. Use Image Compressor once the mark is on.
#Why extracted GIF frames ghost
Ghosting comes from how GIF stores frames: most frames record only the rectangle that changed, so a decoder must composite them onto the previous canvas. A decoder that draws each frame as a complete standalone image leaves the earlier frame showing through underneath.
| Disposal method | Value | What happens after the frame | What you see if ignored |
|---|---|---|---|
| Unspecified | 0 | Decoder decides, usually keep | Leftovers from the previous frame |
| Do not dispose | 1 | Keep this frame, next draws on top | Correct, but depends on earlier frames |
| Restore to background | 2 | Clear the frame rectangle to the background colour | Ghost of the previous frame |
| Restore to previous | 3 | Restore the canvas from before this frame | Several frames stacked together |
GIF Frame Extractor rebuilds every frame to spec in your browser: it reads the background colour from the logical screen descriptor, then honours disposal methods 2 and 3 frame by frame, so the stills match what you see playing.
If you write your own extractor and only call the decoder's per-frame RGBA routine without handling disposal, the output will ghost almost every time. The GIF is not broken — your compositing step is missing.
Two cases still catch people out:
- Sprite-style GIFs with transparency: browsers clear the rectangle to transparent rather than restoring the background colour
- Frames whose rectangle is smaller than the canvas: everything outside it carries over from the previous frame
#Keeping an animated GIF small
Animated GIF size is roughly frame count × pixels per frame × colour complexity, and the tuning order is output size, then frame count, then colours, then delay. Edge length is a squared effect, which is why it comes first.
| Lever | How to change it | Size gain | Cost |
|---|---|---|---|
| Output size | Auto / first frame / custom | Edge halved, size to about 1/4 | Smaller picture |
| Frame count | Delete duplicate frames | Linear | Choppier motion |
| Colour count | Quantise to 255 colours | Moderate, then flattens | Banding in gradients |
| Delay | Raise the milliseconds | Almost none | Slower playback |
To get an 8 MB animation under a 5 MB upload limit, shrink the output size first and delete frames second. Leave delay alone. Delay only changes playback speed and does almost nothing for file size, which makes it the most common wasted edit.
A sequence that works:
- In GIF Maker, switch output size from Auto (largest frame) to a fixed width — 480 px is a good first cut
- Delete duplicate and transition frames; a 24-frame animation usually holds up at 15-18
- Still too big? Drop the size again. GIF tops out at 256 colours and the maker quantises to 255 plus one transparent slot
- Build again and compare the downloaded file size
One build is capped at 7,000,000 total pixels (width × height × frames) and fails outright above that. At 600×400 that is 29 frames; at 800×600 it is 14. Many frames means lowering the output resolution first.
The delay field inside a GIF counts hundredths of a second, and the maker clamps anything faster than 20 ms:
You set 100 ms -> field value 10 (hundredths of a second)
You set 10 ms -> clamped to 20 ms -> field value 2A hundredth-of-a-second field puts the theoretical ceiling at 50 frames per second, and the 20 ms floor means smaller values stop making playback any faster.
#Which tool for which job
| What you need | Tool | Notes |
|---|---|---|
| Add a credit or anti-reuse watermark | Image Watermark | Text or logo, grid, tiling, rotation, PNG out |
| Turn a GIF into still frames | GIF Frame Extractor | PNG/WebP/JPEG, single or ZIP download |
| Build an animation from images | GIF Maker | Reorder, replace, insert, per-frame delay, looping |
| Shrink an animation that will not upload | GIF Maker | Change output size first, delete frames second |
| Reduce file size after watermarking | Image Compressor | Quality, dimensions, format |
| Trim a logo before using it as a mark | Image Cropper | 1:1 / 4:3 / 16:9 presets |
| Keep transparency in the watermark logo | Image Converter | PNG and WebP keep the alpha channel |
#Frequently asked questions
#Does a watermark stop people stealing my image?
No. It proves where the image came from and nothing more. A corner mark is gone after one crop; tiling has to be repaired block by block, which raises the cost but never removes it. Publishing at a lower resolution does more than any watermark setting.
#Why do my extracted GIF frames show a ghost of the previous frame?
Because the frame disposal method was ignored. Most GIF frames store only the changed rectangle and must be composited onto the previous canvas, with method 2 clearing that rectangle to the background colour and method 3 restoring the earlier canvas. GIF Frame Extractor hands back the fully composited frame instead.
#My GIF is over 5 MB. Which setting do I change first?
Output size. Halving the edge length cuts the file to roughly a quarter, which makes it by far the biggest lever. Deleting frames is a straight linear gain and comes second. Delay changes playback speed only and is effectively useless for size.
#The watermark PNG is bigger than the original JPEG. Did something go wrong?
No. The tool exports a lossless PNG at the full original resolution, so it usually outweighs the source JPEG. For publishing, run it through Image Compressor and save as JPEG or WebP.
#Why do the extracted frames look less colourful than the GIF?
GIF allows at most 256 colours per frame and the stills reproduce exactly those 256, so gradients show visible banding. That is a limit of the format, not of the extraction. The only real fix is rebuilding from source material with more colours.
#How many frames can one GIF hold?
The maker caps a single build at 7,000,000 total pixels, calculated as width × height × frames. That is 29 frames at 600×400 or 14 at 800×600. For more frames, lower the output resolution first.