Remove EXIF & Metadata from Images and Videos – Bulk Privacy avatar

Remove EXIF & Metadata from Images and Videos – Bulk Privacy

Pricing

from $1.00 / 1,000 image cleaneds

Go to Apify Store
Remove EXIF & Metadata from Images and Videos – Bulk Privacy

Remove EXIF & Metadata from Images and Videos – Bulk Privacy

Strip GPS location, camera model, EXIF, IPTC, XMP and C2PA from photos (JPEG, PNG, WebP, HEIC, AVIF, TIFF, GIF) and videos (MP4, MOV, MKV, WebM) in bulk, losslessly. Before/after privacy report, download links, ZIP. $1 per 1,000 images.

Pricing

from $1.00 / 1,000 image cleaneds

Rating

0.0

(0)

Developer

Cemal Atakli

Cemal Atakli

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

7 days ago

Last modified

Categories

Share

Remove EXIF & Metadata from Images and Videos (Bulk, Lossless)

Strip GPS location, camera model, serial numbers, dates, EXIF, IPTC, XMP and C2PA from photos and videos in bulk before you publish them. Paste file URLs (or point at an Apify dataset / key-value store), click Start, and download clean copies plus a before/after privacy report for every file.

  • Photos: JPEG, PNG, WebP, GIF are cleaned losslessly: the compressed pixel data is copied byte for byte; only metadata blocks are dropped. TIFF is re-saved pixel-identical. HEIC and AVIF are re-encoded at high quality.
  • Videos: MP4, MOV, M4V, 3GP, MKV, WebM, AVI are remuxed with FFmpeg stream copy (no re-encoding, no quality loss). The Actor drops global and per-stream tags, chapters, the Apple/Android location and make/model tags, and GoPro/telemetry data streams.
  • Before/after report: whether GPS was present (with the coordinates that were exposed), the camera or phone model, the serial number, the date taken, software, XMP/IPTC/C2PA, AI prompts in PNG files, and appended data. Each output file is then re-read to confirm it is clean (verifiedClean).
  • Download links for every cleaned file, plus an optional ZIP of everything.
  • Options: keep the Orientation tag so photos stay upright, or rotate the pixels instead. You can also keep copyright/artist and the ICC colour profile.

Who uses it

  • Marketplaces, real-estate and e-commerce teams: remove sellers' and agents' home GPS from listing photos before they go live.
  • UGC platforms, newsrooms and NGOs: sanitise uploads so they don't reveal where or with which device a photo was taken.
  • Privacy- and OSINT-aware users: check what your photos give away, then clean them in one run.
  • Pipelines: run it after our Image Downloader, Bulk File Downloader or any scraper (dataset input) and before you publish or share.

What gets removed

MetadataPhotosVideos
GPS latitude/longitude/altitude✅ EXIF GPS + XMP GPS✅ location, com.apple.quicktime.location.ISO6709, Android location
Camera/phone make, model, lens, serial number, owner✅✅ (com.apple.quicktime.make/model, com.android.*)
Date taken / creation time✅✅ (zeroed)
Software, maker notes, user comments, thumbnails✅✅ encoder tags
XMP, IPTC (Photoshop APP13), C2PA / JUMBF Content Credentials✅✅ (uuid/udta boxes are not copied)
PNG text chunks (incl. Stable Diffusion/ComfyUI prompts), tIME, caBX✅–
JPEG MPF previews and data appended after the image✅–
Chapters, data/telemetry streams (GoPro GPMF, camm)–✅
Orientationkept by default (one tag), or applied to the pixelsrotation flag kept, or cleared with orientation: remove
ICC colour profilekept by default (keepColorProfile)–

Input example

{
"mediaUrls": [
"https://raw.githubusercontent.com/ianare/exif-samples/master/jpg/gps/DSCN0010.jpg",
"https://example-bucket.s3.amazonaws.com/listing-123/kitchen.heic",
"https://example-bucket.s3.amazonaws.com/listing-123/walkthrough.mov"
],
"orientation": "keep",
"keepCopyright": false,
"keepColorProfile": true,
"createZip": true
}

Other ways to give it files:

  • bulkText: paste a list or a CSV with a url column.
  • sourceFileUrl: a public .txt/.csv file.
  • datasetId + datasetField: the file URLs from another Actor's dataset.
  • keyValueStoreId: every image or video stored in an Apify key-value store, for example files you uploaded through the API. Use keyValueStorePrefix to filter by key.

Links to YouTube, TikTok, Instagram, Facebook, X, Vimeo, Pinterest and other platforms are refused for free. This is a cleaner for files you own or are allowed to process, not a downloader.

Output example

One dataset row per file, and the cleaned file in the run's key-value store:

{
"sourceUrl": "https://raw.githubusercontent.com/ianare/exif-samples/master/jpg/gps/DSCN0010.jpg",
"status": "ok",
"mediaType": "image",
"format": "jpeg",
"method": "metadata-segments-removed",
"lossless": true,
"hadGps": true,
"camera": "NIKON COOLPIX P6000",
"removed": ["GPS location", "Camera make/model", "Date/time taken", "Software", "Maker notes", "User comment", "EXIF block", "XMP"],
"kept": [],
"verifiedClean": true,
"before": {"gps": true, "gpsLatitude": 43.467448, "gpsLongitude": 11.885127, "camera": "NIKON COOLPIX P6000",
"software": "Nikon Transfer 1.1 W", "dateTaken": "2008:10:22 16:28:39", "exifTagCount": 48, "xmp": true},
"after": {"width": 640, "height": 480, "hasExif": false},
"sizeBefore": 161713,
"sizeAfter": 146420,
"fileName": "DSCN0010.jpg",
"fileUrl": "https://api.apify.com/v2/key-value-stores/<storeId>/records/DSCN0010.jpg",
"billedEvents": {"image-cleaned": 1}
}

The SUMMARY record holds the run totals and the ZIP link (zipUrl). Failed files get a row with errorCode (HTTP_404, NOT_MEDIA, FILE_TOO_LARGE, UNSUPPORTED_PLATFORM, INVALID_URL, MEMORY_TOO_LOW, ...) and are never charged.

Pricing (pay per event)

EventPrice
Actor start$0.00005
Image cleaned (image-cleaned)$0.001 ($1 per 1,000 photos)
Video cleaned (video-cleaned)$0.003 per started 50 MB of video (e.g. a 120 MB clip = $0.009)
Errors, invalid links, skipped files, ZIPfree

Set a maximum total charge on the run and the Actor stops cleanly when the budget is used up. Files it doesn't process are not charged.

ActorPrice for 1,000 photos
This Actor$1.00 (+$0.00005 start)
perryay/image-metadata-analyzer$0.02 start + $0.005 per strip = $5.02

(Store prices checked 2026-10-21.)

FAQ

Does it reduce quality? No, for JPEG, PNG, WebP, GIF and all videos: the compressed image or video data is copied unchanged. TIFF is re-saved with lossless LZW. HEIC/AVIF have to be re-encoded (quality 92/90), and lossless: false in the row tells you when that happened. With orientation: apply, JPEGs are rotated with lossless jpegtran when the dimensions allow it. Otherwise they are re-encoded at quality 95.

Why do my photos still have an Orientation tag? With the default orientation: keep, the only tag left is the one that tells viewers to rotate a phone photo upright. It reveals nothing about you. Choose apply to rotate the pixels and have zero EXIF, or remove to drop it.

How do I know it worked? Each output file is parsed again after cleaning. verifiedClean: true means no GPS, camera, date, software, XMP, IPTC, C2PA, comment or prompt metadata was found. We also checked the test outputs with ExifTool.

Are HDR gain maps / Live Photo data kept? No. Secondary images in JPEG MPF data and bytes appended after the image (where phones put depth maps, gain maps and preview copies that carry their own EXIF) are removed. The photo still looks the same, but it loses HDR gain-map rendering.

Video size limit? 500 MB by default (maxVideoSizeMb, up to 2 GB). The run needs about 2.5× the video size in memory: 1 GB of memory handles about 400 MB per video.

Is C2PA removal OK? Content Credentials are metadata you are allowed to remove from your own files. Only remove them when you don't need to prove the file's origin.

Use with AI agents / Apify MCP

The Actor works as a tool through the Apify MCP server (gazidev/media-metadata-remover). An agent can pass mediaUrls and read fileUrl, removed and verifiedClean from the dataset, for example: "strip location data from these listing photos and give me the clean links". It is a deterministic tool with small JSON output, so agents can call it cheaply in publishing pipelines.

  • Image Metadata & EXIF Extractor: reads the metadata without changing the file (GPS with nearest city, AI-generation signals, hashes).
  • Video Converter & Compressor: converts and compresses videos (MP4/WebM/GIF/MP3).
  • Bulk File Downloader: downloads files from URL lists or datasets into a ZIP.