Face Obfuscator
Hide faces in photos before sharing. Detection runs in your browser.
Drop a photo here
or click to browse
Max 25 MB. Processed locally.
We never overwrite your original. The obfuscated copy is a new file.
Auto-detection can miss faces in group photos — you'll need to verify the result before saving.
Your original photo is never modified. The obfuscated copy is generated as a new file — if anything goes wrong, your original is still intact on your device.
Faces detected: 0
Tip: click and drag on the image to add a manual box.
Auto-detection can miss faces, especially in group photos. Before downloading, check that every face you want hidden is marked. Click on the photo to add a manual box; click an existing box to select it, then press ⌫ to remove it.
Why face obfuscation matters
Photos from protests, public spaces, group events, and even casual selfies frequently contain the faces of people who didn't consent to being identifiable online. Modern face recognition is fast and freely available — a single uploaded photo of a stranger can plausibly be matched against public-facing social profiles in seconds.
Obfuscating faces before sharing isn't paranoia. For some groups, it's basic operational security. Journalists protecting sources, activists documenting events, parents posting kid photos online, anyone sharing a candid group shot — all benefit from a fast, local way to blur faces.
What this tool detects
Face detection runs entirely in your browser using face-api.js, an open-source library built on TensorFlow.js. The model used here is "Tiny Face Detector" — about 190 KB of weights, optimized for speed. It runs in a few hundred milliseconds even on a phone.
The model identifies frontal and slightly-rotated faces. It will miss:
- Faces in extreme profile
- Heavily occluded faces (masks, large sunglasses across half the face)
- Very small faces in distant group photos
- Faces with unusual lighting (silhouettes, deep shadow)
That's why we let you add manual boxes by clicking and dragging on the image. The detector is a head start; the final review is yours.
The three obfuscation styles
- Pixelate — downscales the face region to a coarse pixel grid, then upscales back. The pixel size we use (~1/8 of the face dimension) is large enough that reconstruction is not practical. Visually obvious that something was obfuscated.
- Black box — paints a solid black rectangle. No pixel information remains. Most secure, most aggressive looking.
- Emoji — covers the face region with a 😎 emoji over a black background. Same security as black box (no pixel information remains underneath), but playful tone. Good for casual posts where you want to hide a face without making the photo feel ominous.
All three are effectively unreversible at the settings we use. Black box and emoji leave zero information; pixelate at strong settings leaves visual context (you can still tell there was a face there) but the features themselves cannot be reconstructed.
What happens to your original
Your original photo is never modified. The obfuscated copy is generated entirely in browser memory and downloaded as a new file (yourphoto-obfuscated.jpg). The original on your disk is untouched.
We also strip EXIF metadata from the obfuscated copy by default — because canvas re-encoding doesn't preserve EXIF, and because if you're hiding faces, you probably also don't want the photo's GPS coordinates and device serial number in the output.
What this tool is NOT for
This isn't a substitute for thoughtful redaction. For images that may face forensic analysis (legal discovery, sensitive journalism), consult a redaction professional. Software-applied obfuscation is robust for casual sharing but cannot prevent every possible reverse-engineering attempt for high-value targets.