Remove a watermark from a Snapchat video: which overlay is Snapchat's, and which is yours

Measured on this machine Every number reproducible No upload, no account

Snapchat's own overlay cannot be removed, and Snapchat says so itself: its help centre article for the “Media Upload” label states that it is not possible to remove that label from Snaps where it appears. So the first job on a Snap is not removal but triage — deciding which of the overlays is Snapchat's, which is a caption you burned in yourself, and which is a container record that comes off losslessly.

On a 1080x1920 frame the label is a wide, short bar in the upper-left corner: measured here at 292 x 44 px, 4,872 px of ink, 0.235% of the frame. Cropping it off means a full-width strip of 64 rows, 3.33% of the height, and the frame stops being 9:16 afterwards. The three routes into that corner read 6.34 dB (untouched), 38.43 dB (interpolated) and 22.92 dB (carried from another moment), against the 53.57 dB the surrounding picture reads.

A WIDE, SHORT BAR IN THE UPPER-LEFT CORNER 1080x1920 frame. The bar is 292 x 44 px and 0.235% of the picture. the label: 292 x 44 px 4,872 px of ink · 0.235% of the frame to crop it off: the top 64 rows 3.33% of the height, or 29.07% from the left a square box of side 146 px = 17.5 x the label's ink the box to draw is the bar, not a square the three routes into the label's box, in decibels from a clean file untouched 6.34 dB carried from another moment 22.92 dB interpolated 38.43 dB the picture around it 53.57 dB 40 dB and up is where a box stops being distinguishable from the picture around it

What Snapchat's own label is, in Snapchat's own words

There is a real advantage to writing about this one: the platform documents it. Snapchat's help centre has an article titled “Can I remove the ‘Media Upload’ label from my Snaps?” (read on 16 October 2026), and it is short enough to quote in full:

“It is not possible to remove the ‘Media Upload’ label from Snaps where the label appears. When viewing the Snap, you may see ‘Media Upload’ in the upper left corner. This means that the Snap contains media (like an image or video) that was previously taken, on Snapchat or another platform. For example, you might see this if you view a Snap made with a Lens that uses an image from Camera Roll.”

Three things follow from that paragraph, and they decide the rest of this page. The label is Snapchat's, not the sender's. It is in the upper left corner, which is the opposite corner from every other platform mark measured on this site. And it is explicitly not removable — which means that if this is the overlay you are looking at, the question you searched for has already been answered by the platform, and no tool is going to change it.

One thing the article does not say is whether the label is drawn on screen while the Snap is viewed or written into the exported file, and this page does not guess. It measures the harder case — the overlay that is in the picture — because that is the case any tool would have to solve. A reader can settle which case they have without any tool at all: compare a screenshot of the Snap against the exported file, since an overlay drawn on screen is not in the export.

Three owners of an overlay on a Snap

Before opening a tool, it is worth working out who put the overlay there, because only one of the three owners can be dealt with on the pixel layer at all, and only one of them can be dealt with losslessly.

The three layers are constantly confused with each other, and the confusion is expensive in one direction only: people pay for pixel work when the thing they wanted gone was a text record, or they run a metadata cleaner and conclude it is broken when the label they can see is still there. The two layers are measured separately below.

The label, measured

The fixture is a 540x960 clip at 30 fps — exactly half of 1080x1920, so every percentage here is also the percentage on a full-size Snap. The label is rendered by ffmpeg's own text renderer and its ink is read back from those pixels, so the geometry below is measured rather than estimated from font metrics.

At 540x960ValueAt 1080x1920
bounding box146 x 22 px at (11,10)292 x 44 px at (22,20)
ink1,218 px4,872 px
ink as a share of the frame0.235%0.235%
box as a share of the frame0.620%0.620%
ink inside its own box37.9%37.9%

Two of those rows are worth keeping in mind. The label's ink is 0.235% of the picture, which is small — smaller than the 0.60% solid mark measured on the Facebook page and about twice the 0.12% line-art mark on the same fixture. And the ink fills only 37.9% of the rectangle around it, because text is mostly gap: a bar with twelve characters in it is a wide, thin object with a lot of air in it, and that shape is what decides everything below.

The bill for cropping it off

The label sits in the upper-left corner, so the crop that removes it is a full-width strip off the top of the frame. There is no tighter option: a crop is a rectangle taken from an edge, and a bar that touches the top edge and starts eleven pixels from the left edge cannot be removed by any crop that keeps the rest of the top of the picture.

RouteWhat it costsAgainst the label's own ink
crop the top strip (64 rows at 1080x1920)3.33% of the height14.2 times the ink
crop the left strip (314 columns at 1080x1920)29.07% of the width124 times the ink
a square selection box, side 146 px17.5 times the ink17.5 times the ink

The top strip and the left strip are the same label, and one costs 8.7 times the other. That is the label's aspect ratio talking, not the frame's: a bar 146 px wide and 22 px tall is cheap to remove from the edge it is thin against and expensive from the edge it is long against. It is the opposite conclusion from the phone page, where a roughly square logo on a vertical clip made the side crop the cheaper one — the deciding number is the shape of the mark, not the shape of the frame.

The third row is a warning about tooling. Most selection tools default to a square or a freehand box, and a square drawn around this bar covers 17.5 times its ink — so a square-box tool that repaints everything inside the selection is being asked to invent seventeen times more picture than the label destroyed. Drawing the bar instead of a square is free, and it is the difference between a repair and a smear.

What no crop can give back is the picture: the strip is gone, the frame is no longer 9:16 (it becomes 0.5819 against 0.5625), and any player or feed that letterboxes will now show bars. Cropping invents nothing, which is its whole virtue, and it deletes real content, which is its whole cost.

Opaque or translucent: the same pixels either way

A platform overlay can be drawn solid or blended, and it is worth knowing which one you have, because the answer is not the intuitive one. The same label was rendered twice on the same fixture, and both files were compared against a clean clip of the same generation so the encoder's damage to the rest of the frame cancels out.

Label drawnMean |dY| inside the boxPixels at least 20 gray levels off
opaque76.3537.4%
60% blend46.1737.4%

The two numbers that differ are the loudness. The two that do not are the important ones: the share of the box that is still more than 20 gray levels away from clean is identical at 37.4%, because the ink footprint is the same 1,218 px either way. A translucent label is quieter, not smaller — the pixels under it are still partly overwritten, and the removal problem is the same size. That is the opposite of the usual intuition, which is that a faint mark must be nearly gone already.

The three routes into that corner, priced

Three things can be done about the label, and they are easy to price on the same fixture. The first is nothing. The second is to interpolate the box from the ring of picture around it, which is what a “remove logo” tool does, and which ffmpeg does with delogo. The third is to carry real pixels back from another moment in the clip, which only works if the background behind the label comes back.

RouteInside the label's box, vs clean
untouched6.34 dB
carried from 30 frames away22.92 dB
interpolated (delogo)38.43 dB
the same file outside the box53.57 dB

Read the last row first: it is the level at which a region stops being distinguishable from the picture around it, and it is 53.57 dB here. The interpolated box reaches 38.43 dB, which is closer than any route measured elsewhere on this site, and the reason is the label's shape rather than its size: a bar 22 pixels tall has picture on both sides only a few pixels away, so interpolation has good material to work from. It is still about 15 dB below the surrounding picture, which is a patch you can see, and it is the honest ceiling of the pixel layer for this mark.

The carry route is the interesting failure, and it is a failure of arithmetic rather than of implementation. It replaces the box with the real, untouched pixels of the same rectangle from 30 frames earlier. Those pixels are genuinely clean — nothing was invented — and the result still reads 22.92 dB, because the clean clip compared against itself 30 frames later reads 22.86 dB in that box. In other words the carry restores the picture of the wrong moment exactly, and contributes nothing else. A label pinned to a fixed corner has no frame anywhere in the clip where the corner is uncovered, so there is no right moment to borrow from. That is precisely the opposite of the TikTok case, where the mark moves and the movement is the way out.

The one layer that is a file, not a picture

A video file carries two separate things: the encoded frames, and a set of text records in the container beside them. The records are not the picture, so they can be rewritten in place, and that is the one operation on this page that is lossless rather than a repair. A tagged copy of the stamped fixture was put through this site's own cleaner:

before: (c)nam = snap-export, (c)ART = someone,
        (c)too = Lavf63.1.101, (c)cmt = repost
after:  no records found
file:   58,491 bytes before, 58,491 bytes after
mdat:   47b809843038 before, 47b809843038 after

Four records freed, the file the same length, and the video payload's MD5 unchanged — which is the proof that no frame was touched. This is the layer a browser can handle with nothing uploaded and no account. It is also the layer that has nothing to do with the label, and it is worth being blunt about that: if the overlay you can see is Snapchat's Media Upload label, running this cleaner will not change what you see, and that is the correct behaviour rather than a failure.

Check your own file

Two commands answer the two halves of the question on the file you are holding. The first lists what the container carries. A label will not appear in this list, because a container has no field for a visible overlay:

ffprobe -v error -show_entries format_tags -of default=noprint_wrappers=1 your.mp4

The second measures the overlay itself. It compares a stamped file against a clean one and prints how far the label's box still is from clean, which is the number this page has been quoting — single digits means fully there, 50 dB and up means indistinguishable from the picture around it:

ffmpeg -hide_banner -i stamped.mp4 -i clean.mp4 -lavfi "[0:v][1:v]blend=all_mode=difference,crop=146:22:11:10,signalstats,metadata=print:key=lavfi.signalstats.YAVG" -f null -

Change the crop to wherever the overlay sits — the rectangle is written as width, height, x, y — and read the YAVG line: it is the mean luma difference inside that rectangle, averaged over the clip. It is the same measurement used for every number on this page, and it needs nothing beyond ffmpeg.

What this page does not claim

No Snapchat account exists on this machine, no Snap was downloaded, and no third-party downloader or app was used or tested. The fixture is built here, the label on it is synthesised, and every figure comes from a real run of ffmpeg on that fixture, reproducible with the script named below. So the numbers describe the frames and the container, not Snapchat's encoder and not any product.

Nothing here claims that Snapchat's export writes a mark, or that it does not. Its help centre documents one overlay, the Media Upload label, and says that label cannot be removed; what its export writes beyond that is not stated in the articles that could be read from this machine, so this page leaves it open. What is claimed is narrower and checkable: if an overlay is in the frames, the routes above are what is available, and the cheapest of them is a crop that costs 3.33% of the height.

Removing an overlay does not change who owns the video, so a copy you were not allowed to use does not become usable because a label is gone. Which marks are required and when is a separate question, and the page on AI watermark law goes through it. Nothing on this page is legal advice.

If the overlay turns out to be a record rather than paint, the arithmetic is different and simpler, and the page on what survives a removal checks the rest of the file — audio track, subtitles, duration and frame rate — so that a repair on one layer does not quietly cost you another.

Frequently asked questions

Can you remove the watermark from a Snapchat video?

Two of the three layers can be dealt with, and the one that cannot is Snapchat's own. Snapchat's help centre says of its Media Upload label that it is not possible to remove it from Snaps where it appears. Text you added yourself is paint on the frames, so a tool has to invent pixels to take it off: measured here on a 1080x1920 frame, interpolating over the label's box reaches 38.43 dB against a clean file while the surrounding picture reads 53.57 dB, so the patch is real but visible. The container records are the layer that does come off cleanly, and they are not the label.

What is the Media Upload label on a Snap?

Snapchat's own words, from its help centre article on the subject, read on 16 October 2026: the label means the Snap contains media, like an image or video, that was previously taken, on Snapchat or another platform. Snapchat's example is a Snap made with a Lens that uses an image from Camera Roll. So it is a marker about where the picture came from, not a decoration and not something you drew.

Can I remove the Media Upload label from my Snaps?

Snapchat answers this one directly, and the answer is no. Its help centre article says it is not possible to remove the Media Upload label from Snaps where the label appears. Nothing on this page changes that, and no tool on this site claims to. The label is worth recognising for a different reason: if the overlay on your Snap is that one, no removal route applies at all, and the only choices left are to keep it, to crop the corner away, or to avoid importing the media in the first place.

Why is the Snapchat label in the top left corner?

Snapchat puts it in the upper left corner, which is the opposite corner from every other platform mark measured on this site: the TikTok and Instagram stamps sit bottom left, the Facebook one bottom right, and a YouTube corner mark sits top right. The corner decides the crop arithmetic. Measured here, the label is 146 px wide and 22 px tall on a 540x960 fixture, so taking it off with a top strip costs 3.33% of the height, while taking it off with a left strip costs 29.07% of the width, 8.7 times more. It is the shape of the bar, not the shape of the frame, that decides which edge to cut.

Does Snapchat add a watermark when you save a Snap?

Snapchat's help centre does not say what its own export writes, and this page does not guess. The only overlay its help centre documents is the Media Upload label, and its article does not say whether that label is drawn while the Snap is being viewed or written into the exported file. What can be measured is the harder case, in which the overlay is in the picture, and that is what the numbers here describe. A reader can settle the question for their own file without any tool: compare a screenshot of the Snap against the exported file, because an overlay drawn on screen will not be in the export.

Can the tool on this site remove a Snapchat watermark?

It removes the container records and nothing else, which is deliberate rather than a limit of effort. Measured on a tagged copy of the stamped fixture, it freed four records, left the file the same length at 58,491 bytes, and left the video payload's MD5 unchanged at 47b809843038, which is the proof that no frame was touched. If the label you can see is still there after you run it, that is the correct result: you removed one layer and looked at another. The tool is on the free video watermark remover page.