Do Discord images have metadata?
Discord image metadata depends on the upload path. Take a photo with known EXIF, post it to a private test channel, download the attachment, and compare size, hash, and metadata. If location is sensitive, remove it before you send. A downloaded copy shows what another user gets.
Do Discord images have metadata?
Discord image metadata depends on the upload path. On 2026-10-23 ExifTool 12.76 read GPS from a synthetic JPEG, PNG, and WebP on this machine. That fixture was not uploaded to Discord. Remove sensitive fields before you send, then compare the downloaded file.
C2PA: Coalition for Content Provenance and Authenticity; C2PA specification 2.4
Last updated
There are two different questions: what Discord receives, and what another user can download. A downloaded copy only answers the second one.
Use one file and follow it
Take a photo whose metadata you already know. Record its byte size, dimensions, SHA-256 hash, and a metadata dump. Then post it to a private test channel and download the resulting attachment.
Now compare the two files. This is more useful than repeating a platform-wide rule because it tells you what happened in the route you actually use.
- Choose a source image with known metadata. If you are testing GPS handling, use a throwaway image rather than a sensitive real location.
- Record the source SHA-256, dimensions, file size, EXIF, XMP, IPTC, and ICC profile.
- Upload it through the normal image flow in the Discord client you care about.
- Download the attachment as another user would receive it.
- Run the same measurements on the downloaded file and save the diff.
What ExifTool 12.76 recorded on 2026-10-23
This fixture was not uploaded to Discord. Pillow 10.2.0 drew a 640×480 picture. ExifTool 12.76 wrote the tags. With -n, GPS latitude was 35.681236, longitude 139.767125, and altitude 10 m. The same ExifTool printed 35 deg 40' 52.45" N, 139 deg 46' 1.65" E. The coordinate was typed in. It is not a camera photo of a private place. The JPEG was 12782 bytes, SHA-256 0953e605a0f9d3cbc8c726fbfa0fda45a1918dc0a82cc84184e7fa2d296b9249, with Make CPKFixture, Model Synthetic-20261023, DateTimeOriginal 2026:10:23 09:00:00, IPTC Keywords and Credit, and an XMP description. The PNG was 2979 bytes and also held the comment synthetic png comment plus the same GPS. The WebP was 5158 bytes with the same GPS and an XMP description.
| File and command | Bytes after | What ExifTool 12.76 still printed |
|---|---|---|
JPEG -GPS:all= | 12624 | No GPS. DateTimeOriginal, Make, Model, Artist, IPTC, and the XMP description remained. |
JPEG -EXIF:all= | 12262 | No GPS and no DateTimeOriginal. IPTC and the XMP description remained. |
JPEG -all= | 9244 | Those GPS, EXIF, IPTC, and XMP fields were absent. Dimensions stayed 640×480. |
JPEG mat2 0.13.4 --inplace | 12293 | Those GPS, DateTimeOriginal, IPTC, and XMP fields were absent. Dimensions stayed 640×480. |
PNG -all= | 2505 | The PNG comment and GPS were absent. |
| PNG mat2 0.13.4 | 2523 | The PNG comment and GPS were absent. |
WebP -all= | 1872 | GPS and the XMP description were absent. |
| WebP mat2 0.13.4 | 5158 | Exit 255. mat2 said image/webp is not supported. GPS was still present. SHA-256 stayed 644f1dd945106810e8c067ace704eb4e507eb5d103979b848696220c1e5a591d. |
Record bytes, SHA-256, dimensions, and these fields on the file you send and on the file you download. A changed hash does not by itself mean that only metadata was removed. On 2026-10-23, curl to the Discord File Attachments FAQ returned HTTP 403 from this machine, so this update does not add a new size quote from that page. The numbers are in docs/evidence/runs/2026-10-23-line-discord-zalo.json.
Does Discord strip EXIF?
This page does not publish a yes or no for Discord’s servers. The 2026-10-23 run is local. On that fixture, mat2 0.13.4 cleaned the JPEG and the PNG and refused the WebP, which kept its GPS.
How to read the result
| Observation | Reasonable conclusion | Do not jump to |
|---|---|---|
| SHA-256 changed | The delivered bytes are not identical to your source. | “Discord removed only metadata.” Pixels or encoding may also have changed. |
| Dimensions changed | The delivered image was resized somewhere in the path. | A conclusion about internal storage. |
| EXIF disappeared | The copy you downloaded no longer contains those EXIF fields. | “Discord never received the EXIF.” |
| Hash stayed identical | That test route delivered the exact same bytes back. | A permanent guarantee across clients, formats, or future versions. |
The privacy rule that does not depend on Discord
If a field is sensitive, remove it before upload. That turns a server-side question into a local one you control. You can verify the clean copy on your own machine and then reuse it across Discord, forums, social networks, or email.
When Discord updates, re-run the same test
Handling can vary by file type, client, upload route, size, and app version. According to Discord’s official File Attachments FAQ, media handling and attachment constraints are frequently tuned across desktop and mobile clients. If GPS or device fields are sensitive, remove them before upload. The five-minute comparison still works after Discord changes a compressor.
We document repeatable platform tests in our Discord image metadata lab following our empirical testing methodology. If your Discord challenge is video upload size rather than image GPS, see our field note on compressing Discord video clips under the 20 MB limit, or review the Discord platform overview.
Make the sharing copy first
CreatorPrivacyKit can inspect common metadata locally and export a cleaner image before you upload it.
Open the sanitizer →