Remove Metadata From a Photo Before Posting It on a GitHub Profile

A developer audience will check. Profile avatars, README screenshots, and project images get cloned, mirrored, and saved. Strip the header before the JPEG is in the repo.

Ready to clean a photo? MetadataWipe processes JPEG and PNG files locally — no account and no server upload.

Open MetadataWipe tool

GitHub profiles are resumes that other engineers inspect. The avatar is a JPEG. The README is a page of images: screenshots of the TUI, architecture diagrams exported from a whiteboard photo, a headshot in an “about me” section. That audience knows metadata exists. Some of them will look. Forks and mirrors copy blobs as-is. A geotagged living-room headshot or a PNG that still names your screenshot tool and capture time is a small, durable leak in a place built to duplicate files forever.

This page is the GitHub still wipe. LinkedIn profile photos are a different professional surface — see remove metadata before a LinkedIn profile. Job-application stills are another packet: remove metadata from a photo for a job application. MetadataWipe rebuilds a JPEG or PNG in your browser so typical GPS, timestamps, camera tags, and common IPTC/XMP are not copied into the cleaned download. Processing stays on this device.

Technical audiences check; forks copy

You do not need a hostile reader. A recruiter who saves your avatar, a student who vendors your docs images, or a mirror that clones the repo will get the bytes you committed. Git does not strip EXIF as a feature. If the blob had GPS on commit, history has GPS until you rewrite (and even then, clones that already pulled still have it). Wipe before the first commit of that file.

Profile photos are served from GitHub’s avatar CDN. README images are raw files in the tree. Treat both as public, long-lived attachments. Open-source screenshots that show a desktop can also leak username chrome in pixels — that is a crop job. The header is this job.

What a profile or README still typically still contains

Phone headshots: GPS to the apartment if location was on, DateTimeOriginal, Make/Model. DSLR portraits: camera and lens tags, sometimes IPTC from a photographer preset. Screenshots: Software and a clock. A “terminal screenshot” PNG is still a metadata file even when the pixels are only text.

MetadataWipe does not remove your face from an avatar or a username from a screenshot. Crop first if needed, then strip so the last save is clean.

How to strip GitHub stills in MetadataWipe

  1. Collect the exact JPEG or PNG you will set as the avatar or commit to the repo. Convert HEIC if needed.
  2. Open the MetadataWipe tool. Drop the file. Note GPS, timestamps, Make/Model, and Software.
  3. Strip locally and download the cleaned file (the name includes -metadatawipe).
  4. Re-open the download in the panel to confirm tags are gone.
  5. Set the avatar or commit only that file. Do not drag the original from Downloads because it sorted next to the cleaned copy. If you already committed an unclean image, replace the file with a cleaned version in a new commit (history may still contain the old blob; for high-stakes leaks, treat history as already copied).

For a docs folder with many screenshots, wipe each PNG. A script that copies camera originals into /docs is how GPS lands in a public repo.

Who this is for

Developers setting a personal photo on GitHub instead of an identicon.

Maintainers whose README and docs include photos or phone screenshots.

OSS authors whose project images get mirrored to other forges.

Common mistakes

Wiping the avatar and committing an unmarked selfie in the README. Every still is a file.

Assuming GitHub strips EXIF on avatar process. Do not rely on a CDN pipeline. Strip the copy you control.

Treating this as a LinkedIn clone. LinkedIn is a network profile. GitHub stills live in git and get forked. Wipe with that duplication in mind.

Replacing a file in git without noticing old blobs remain in history. Wipe before the first push when you can.

Leaving IPTC photographer contact on a portrait you set as a public avatar.

Related guides

See also:

Frequently asked questions

Why is GitHub different from posting a photo on mainstream social media?

The audience includes people who open files in hex editors, run exiftool for fun, and clone repositories. A profile JPEG is not a throwaway Stories frame. README images and docs screenshots get forked onto other GitHub accounts and GitLab mirrors. Headers travel with the blob. LinkedIn is a professional network with a different download culture; this page is the git-hosted still.

Should I wipe a README screenshot the same way as a profile avatar?

Yes, if it is a JPEG or PNG you control. Avatars are one file on your profile. README and docs images live in the repo and are copied whenever someone forks or vendors the project. Wipe each still before you commit. A cleaned avatar does not clean an unmarked screenshot in /docs.

What metadata typically rides on a GitHub-bound photo?

GPS from a home-office headshot, DateTimeOriginal, camera or phone Make/Model, and Software from an editor or a screenshot tool. Screenshot PNGs often carry a capture clock and OEM Software. None of that is required for an identicon replacement or a docs figure.

Does MetadataWipe send my GitHub photo to a server?

No. JPEG and PNG are read into browser memory on this device. Typical EXIF, IPTC, and XMP blocks are not copied into the cleaned download. The original is not sent to MetadataWipe for processing.

Remove EXIF data, GPS location, and common photo metadata in your browser.

Try MetadataWipe free