How Unsparkle works
A small, focused tool: it finds the visible Gemini mark in the corner of your image or video and calculates the pixels that were underneath it. All of it runs on your device.
Last updated
Why it exists
Gemini adds a small sparkle logo to the bottom-right corner of the images it generates, and Veo adds a similar mark to its videos. That makes sense on a public feed. It gets in the way when the image is going into your own slide deck, mockup, storyboard or product shot.
Most "watermark removers" blur or paint over the corner. Because Gemini's mark is blended in a predictable way, we can do better and recover the original pixels instead.
How the removal works
Gemini draws a white logo over the image with a fixed opacity pattern, called an alpha map. For each pixel the result iswatermarked = α × 255 + (1 - α) × original. Solving for the original givesoriginal = (watermarked - α × 255) / (1 - α). With an accurate alpha map, that recovers the image exactly, apart from rounding.
Finding the mark
The logo's size and distance from the corner depend on the image's resolution and aspect ratio, and Google has adjusted them over time. So the engine doesn't assume a position. It tests the known size and margin candidates, scores how well each one matches the logo's shape in the actual pixels, and only removes the mark when the match passes its quality checks. If nothing matches, your file is left exactly as it was.
Videos
Veo videos exported from Gemini carry one of two marks: the same sparkle, placed further from the corner and blended more lightly, or, on newer exports, a small "Veo" wordmark tucked into the corner. We measured the sparkle from Google's own export of a plain black video, and the wordmark across every frame of real exports. To find the mark in your file, a dozen frames are averaged (moving content blurs away, the fixed mark stays sharp) and matched against both designs at every plausible scale, so 720p, 1080p, 4K and vertical videos all work.
The logo isn't identical in every export, so it is measured from your video itself: its exact opacity, size (to a fraction of a pixel), edge softness and effect on colour. The engine only proceeds if a real logo signal was there to begin with.
Each frame is then decoded with your browser's built-in video decoder and edited in its native YUV form, so only the logo's own pixels change and the rest of the picture keeps its exact brightness and colour. The thin outline where video compression smeared the logo's edges is rebuilt from the pixels around it, and where the background is smooth (a sky, a plain wall) the covered pixels lean on their surroundings, which hides the faint trace compression noise would otherwise leave. Frames are encoded back to MP4 at a high bitrate, and the original audio track is copied across untouched.
What it does not do
Gemini and Veo also embed SynthID, an invisible watermark spread across the whole image that identifies it as AI-generated. Unsparkle does not touch it and is not designed to. Your cleaned file can still be recognised as AI-generated by SynthID detectors, and it should be.
- Only process images and videos you created or have the rights to use.
- Follow the rules of the places you publish to, including any requirement to label AI-generated content.
- Don't use cleaned media to mislead people about where it came from.
Built on open source
The detection and removal engine is not ours alone. Unsparkle builds on:
- Gemini Watermark Tool by Allen Kuo, who worked out the reverse alpha blending approach and calibrated the original alpha maps (MIT License).
- gemini-watermark-remover by GargantuaX, the JavaScript port and detection pipeline used for images, tested against real Gemini samples in every aspect ratio (MIT License).
- Mediabunny, which reads and writes video files in the browser (Mozilla Public License 2.0).
Not affiliated with Google
Unsparkle is an independent project. Gemini and Veo are trademarks of Google LLC, used here only to describe which files the tool works with.
Contact
Found a file it doesn't handle? Email hello@unsparkle.app. Please describe the file rather than attaching it.