How to batch-clean gps, device, and date tags before you upload
- Step 1Gather the clips you're about to upload — Collect the source files headed for YouTube, a Drive folder, Patreon, or a stock marketplace. The tool accepts MP4, MOV, MKV, and WebM, and a single batch can mix containers — there's no need to convert first.
- Step 2Check what a sample is leaking (optional) — Open one clip in a media-info viewer or
ffprobeto see the GPSlocation, device make/model, andcreation_timethe scrub will remove. For a JPEG thumbnail or poster frame, exif-map-previewer plots its GPS on a map so you can see the leak. - Step 3Drop the whole batch — Upload all the clips at once (up to your tier's file count). Each file is processed independently, the container inferred from its extension and preserved on output — an MP4 stays MP4, a MOV stays MOV. No format conversion happens.
- Step 4Pick the strip mode for the batch — The only control is a Mode select and it applies to the whole batch. default removes all GPS / device / date / encoder metadata but keeps any title and chapter markers. all additionally runs
-map_chapters -1 -fflags +bitexactto wipe chapters and title and emit deterministic files. For uploads where you want to keep chapter navigation, usedefault. - Step 5Run and download the cleaned set — FFmpeg runs
-i input -map_metadata -1 -c copy outputon each file (plus the chapter/bitexact flags inallmode). Because it's a stream-copy, no codec runs per file — only each container's metadata block is rewritten. Save the cleaned set, ready to upload. - Step 6Verify and hash before publishing (optional) — Spot-check that scrubbing changed only metadata by running a source and its output through file-integrity-monitor, and record SHA-256 digests of the cleaned set with multi-hash-fingerprinter if you keep a published-files log.
What platforms do — and don't — strip from your source
A practical view of why pre-upload scrubbing matters. Streaming re-encodes are not the same as cleaning the source file you hand over or make downloadable. This tool removes container metadata losslessly before upload.
| Concern | Streaming re-encode | This tool (pre-upload) | Notes |
|---|---|---|---|
| GPS coordinates in the source | Not guaranteed; downloadable originals keep them | Removed | -map_metadata -1 clears the GPS location tag wholesale |
| Device make / model | Often retained in the source you upload | Removed | Vendor/device tags dropped along with everything else |
| Capture date / time | May survive in the source container | Removed | creation_time goes with the metadata block |
| Encoder / software stamp | Left in place on the source | Removed (suppressed in all) | Mode: all adds +bitexact to suppress FFmpeg's own stamp |
| Visible content (faces, signs) | Unchanged | Not removed — it's in the picture | Use a video face-blur tool, not a metadata stripper |
Mode option contract
The tool exposes exactly one control — a Mode select that applies to the whole batch. There are no presets and no per-file toggles. These are the only two values and the exact FFmpeg arguments each produces.
| Mode | FFmpeg arguments (per file) | Keeps title / chapters? | When to use |
|---|---|---|---|
default (default) | -map_metadata -1 -c copy | Yes — title and chapter markers preserved | Standard pre-upload scrub that keeps chapter navigation for viewers |
all | -map_metadata -1 -map_chapters -1 -fflags +bitexact -c copy | No — title and chapters wiped | Maximum cleanup across the batch: removes chapters, title, and encoder strings |
Batch limits by tier
Real per-file size and batch-count limits. This security entry requires a Pro plan; processing runs through the Video Metadata Scrubber, so video-family streaming limits apply once files are being scrubbed.
| Tier | Per-file size | Files per batch | Notes |
|---|---|---|---|
| Free | — | — | Not available; this tool requires Pro |
| Pro | Up to 10 GB | Up to 5 | Good for cleaning a handful of clips before an upload |
| Pro-media | Up to 100 GB | Up to 50 | Best fit for a full folder of source clips |
| Developer | Up to 100 GB | Unlimited | Whole-library batch cleaning |
Cookbook
Concrete recipes for cleaning a set of clips before they go up. The ffprobe-style listings show the metadata before and after the scrub; the footage itself is unchanged.
Clean a folder of clips before a Drive share
You're handing collaborators a Drive folder of originals, each carrying GPS and capture dates. On a Pro-media plan you can drop the batch and scrub all of them at once. Each output keeps its own container and quality.
Inputs (Pro-media, up to 50 files): shoot-01.mp4, shoot-02.mov, broll.webm, interview.mkv ... Each processed: -map_metadata -1 -c copy shoot-01.mp4 -> GPS + device + date removed shoot-02.mov -> Apple make/model + GPS removed broll.webm -> creation_time + software tag removed interview.mkv -> WRITING_APP + DATE_RECORDED removed All outputs: same container each, same encode, fingerprints gone
Keep chapters for a long-form upload (default)
A long video has chapter markers you want viewers to keep, but you still want GPS and capture date gone from the source. Mode: default removes the privacy tags and leaves chapters and title intact.
Before: location : +51.5074-000.1278/ creation_time : 2026-06-01T09:00:00.000000Z Chapter #0: 00:00 'Intro' Chapter #1: 03:40 'Demo' Scrub: Mode = default ffmpeg -i episode.mp4 -map_metadata -1 -c copy episode-out.mp4 After: (no location, no creation_time) Chapters and title preserved for viewer navigation
Maximum cleanup across the batch (all)
For a set of clips where nothing identifying should survive — including chapters named after locations and the encoder stamp — Mode: all applies the full wipe to every file in the batch.
Scrub: Mode = all (applied to all dropped files)
per file:
ffmpeg -i clipN.mp4 -map_metadata -1 -map_chapters -1 \
-fflags +bitexact -c copy clipN-out.mp4
Result across the batch:
no title, no chapters, no encoder/Lavf stamp on any file
deterministic: each clip re-runs to byte-identical outputMixed-format batch in one pass
Your set is a mix of phone .MOV, screen-recorded .webm, and exported .mp4. There's no need to convert first — drop them together; each keeps its own container.
Batch (mixed): phone.mov, screencast.webm, export.mp4 Each -map_metadata -1 -c copy: phone.mov -> stays .MOV, Apple GPS/make/model removed screencast.webm-> stays .WebM, creation_time + software removed export.mp4 -> stays .MP4, encoder stamp + date removed No forced conversion; output container == input container
Log SHA-256 digests of what you published
If you keep a record of exactly which files you uploaded, hash the cleaned set so each published file has a verifiable fingerprint. multi-hash-fingerprinter computes the digest of a clean file.
After scrubbing the batch: for each clean file -> multi-hash-fingerprinter -> SHA-256 shoot-01-clean.mp4 : 9f2c... (recorded in published-files log) shoot-02-clean.mov : a17b... Use file-integrity-monitor to spot-check that a clean file differs from its source only inside the container header.
Edge cases and what actually happens
Batch count over your tier limit
rejectedPro allows up to 5 files per batch, Pro-media up to 50, Developer unlimited. Dropping more files than your tier permits is rejected before processing — upgrade or split the batch into smaller groups. There's no Free-tier access to this tool.
One file in the batch is over the size limit
rejectedEach file is checked against the per-file ceiling (10 GB Pro, 100 GB Pro-media/Developer). An oversized clip in an otherwise-fine batch is rejected — split or re-encode that file separately. The size check happens before processing.
Platform re-encode is not the same as cleaning the source
Why this mattersYouTube/TikTok re-encode for streaming, but that doesn't guarantee your uploaded source — or any downloadable original you offer — has had its GPS and device tags removed. This tool strips them from the file before you upload, so the original you hand over is clean regardless of what the platform does.
Faces and locations visible in the footage stay
Not removedThis tool clears metadata, not pixels. A recognisable face, a house number, or a landmark visible in the footage is part of the picture and survives. To blur faces in video you need a redaction tool — see /video-tools/face-pixelate — not a metadata stripper.
MKV / WebM are fully supported in the batch
SupportedThe underlying Video Metadata Scrubber accepts MP4, MOV, MKV, and WebM, so a mixed batch is fine. -map_metadata -1 clears Matroska/WebM tags (WRITING_APP, DATE_RECORDED, creation_time) just like MP4-family atoms, and each output keeps its own container.
Audio and video streams are never altered
PreservedBecause the command is -c copy, the encoded picture and audio of every file are copied byte-for-byte. The tool cannot transcode or re-compress — it only rewrites each container's metadata block. If you need to change an encode, that's a different video tool.
Title and chapters survive in default mode
By designMode: default keeps the title and chapter markers across the batch, useful for long-form uploads with chapter navigation. If chapters or titles name locations, switch to Mode: all, which adds -map_chapters -1. The mode applies to the whole batch, not per file.
A corrupt file in the batch
errorIf FFmpeg cannot demux a particular input — a truncated download or a renamed non-video — that file's scrub exits non-zero and fails with an error rather than producing a half-written output. Repair or remove the bad file and re-run the rest.
Containers are preserved, not unified
By designA mixed batch stays mixed on output — the tool never converts everything to one container. If a destination needs a single format, scrub first, then run a separate batch conversion; combining the two would change each encode.
Re-running 'all' mode is deterministic
ExpectedMode: all adds -fflags +bitexact, suppressing FFmpeg's own version/encoder strings and timestamps. Scrubbing the same clip twice yields byte-identical output, which keeps a recorded hash valid in a published-files log.
Frequently asked questions
Doesn't YouTube already strip metadata when I upload?
It re-encodes for streaming, but that's not a guarantee your uploaded source file — or any downloadable original you offer — has had its GPS, device, and date tags removed. This tool strips them from the file before upload, so the original you hand over is clean regardless of what the platform does with its stream.
Can I clean a whole folder of clips at once?
Yes. Pro allows up to 5 files per batch, Pro-media up to 50, and Developer is unlimited. Each file is scrubbed independently and each output keeps its own container and quality.
Can I mix MP4, MOV, MKV, and WebM in one batch?
Yes. The engine accepts all four containers in a single pass and preserves each file's own container on output — there's no forced conversion to a common format.
Is each video re-encoded or compressed?
No. Each file is processed with -c copy, a stream-copy. The encoded picture and audio are copied straight through; only each container's metadata block is rewritten. There's no quality loss on top of whatever the platform later does.
What metadata does the batch remove?
Everything in each file's metadata block: GPS coordinates, device make/model, capture date, encoder software stamp, copyright, author, and comment fields. -map_metadata -1 is a wholesale wipe, not a curated subset.
Does it blur faces or hide what's on screen?
No. It removes metadata, not pixels. Faces, house numbers, and landmarks visible in the footage survive. For face blurring you need a video redaction tool such as /video-tools/face-pixelate, not a metadata stripper.
Does the mode apply per file or to the whole batch?
To the whole batch. The single Mode select applies the same arguments to every file you drop. There's no per-file toggle — choose default to keep chapters across the set, or all to wipe them everywhere.
Do my files get uploaded to a server to be cleaned?
No. FFmpeg runs as WebAssembly inside your browser tab, so cleaning happens locally before anything is uploaded anywhere. Your originals never reach a server.
What if one file in the batch is corrupt or too big?
An oversized file is rejected against the per-file ceiling before processing. A corrupt file that FFmpeg can't demux fails with an error rather than producing a half-written output. Remove or fix that file and re-run the rest.
Will the cleaned files still upload and play normally?
Yes. The container structure stays valid and standard — only the metadata fields are emptied. Platform uploaders, players, and editors open the cleaned files normally, and the footage is bit-identical to the source.
How do I keep a record of what I published?
Hash each cleaned file with multi-hash-fingerprinter (SHA-256) for your published-files log, and spot-check with file-integrity-monitor that a clean file differs from its source only inside the container header.
What file sizes and counts are allowed?
This tool requires Pro: up to 10 GB per file and 5 files per batch. Pro-media allows up to 100 GB per file and 50 files; Developer allows up to 100 GB per file with unlimited batch. It's not on the Free tier, and files or batches over the limit are rejected before processing.
Privacy first
Every JAD Security operation runs entirely in your browser. Files, passwords, and PGP private keys never leave your device — verified by zero outbound network requests during processing.