Does a PNG have GPS or EXIF in it?
It can. It usually does not. And the reason it usually does not is not the one you will be told.
A PNG can carry GPS coordinates, and in practice it almost never does. For the first twenty years of the format there was no way to put EXIF in a PNG at all; the eXIf chunk that holds it was registered in 2017 and is now part of the specification. But cameras and phones do not take photographs as PNG, so a PNG only acquires coordinates if some piece of software deliberately copies them in, and most do not bother. That is a statement about habit rather than about the format, which is why "convert it to PNG to strip the location" works most of the time and is not something to rely on. CLOAK reads a PNG's chunks in the page and shows you what is in yours.
PNG does not have segments. It has chunks
A JPEG is a stream of segments, and the metadata rides in one called APP1. A PNG is a stream of chunks, each with a length, a four-letter name, its data and a checksum. The picture itself is in IHDR and IDAT; everything else is optional, and this is where the answers live:
| Chunk | What it holds |
|---|---|
| tEXt | A keyword and a value, in Latin-1, uncompressed. Software, Author, Comment, Copyright. The oldest and commonest way a PNG says something about itself |
| zTXt | The same thing, compressed. Used when the value is long |
| iTXt | Text in UTF-8, so it can hold any language — and it is where XMP arrives, under the keyword XML:com.adobe.xmp. XMP can itself carry a location, a creator and an edit history |
| eXIf | A complete EXIF block: the same TIFF structure a JPEG keeps in APP1, minus the six-byte Exif wrapper. GPS, camera make and model, serial numbers, timestamps, even a thumbnail. Registered in 2017 and folded into the third edition of the specification |
| tIME | When the image was last changed, to the second |
| iCCP | An embedded colour profile. It describes a class of device, not your device |
So "does a PNG store GPS" has a precise answer rather than a vague one. There are exactly two places it can be: inside an eXIf chunk as ordinary EXIF, or inside XMP in an iTXt chunk. Nowhere else in the format has anywhere to put it.
Why yours probably has none
Because nothing put it there. A phone writes JPEG or HEIC, and both of those carry EXIF as a matter of course, because the camera software writes it at the moment of capture. To end up with a PNG you have gone through a conversion — a screenshot, an export, a "save as", a paste into an editor — and at that point the metadata is only preserved if the converting program chose to preserve it.
Most do not, and the reason is dull: eXIf is recent, and a great deal of image software predates it or has simply never been updated to write it. Twenty years of tools learned to handle PNG as a format without EXIF, and that is still how most of them behave.
Which is the whole of the "convert to PNG to remove the location" advice. It usually works. It works by accident of tooling rather than by a property of the format, it will quietly stop working as software catches up with the 2017 chunk, and it never touched an iTXt chunk full of XMP in the first place. If the object is to remove the metadata, remove the metadata.
Screenshots are PNG, and the metadata is not the problem
Most PNGs people worry about are screenshots, and a screenshot has no GPS in it for the plain reason that no camera was involved. What it may carry is a tEXt or tIME chunk naming the software and the moment, which is mild.
The risk in a screenshot is in the pixels. The open tabs, the notification that slid in as you pressed the key, the email address in the corner of the toolbar, the session token in the address bar. What a screenshot gives away goes through that properly, including why blurring text is not enough to remove it.
How to see what is in yours
Open the file in CLOAK. It walks the chunks, names each one it finds, shows the value of every readable text chunk, and if there is an eXIf chunk it reads the EXIF inside it exactly as it would from a JPEG — including raising the location warning, with the coordinates, if there are any. A compressed zTXt chunk is named but not decoded, and the page says so rather than passing over it in silence.
Exporting a cleaned copy re-encodes the pixels, which produces a file with no chunks but the ones the picture needs. That is certain for the same structural reason it is certain with a JPEG: the new file is built from the decoded image, so nothing that was wrapped around the old one has a path into it.
What this is and is not
CLOAK reads PNG and JPEG in your browser and shows what each one carries. Nothing is uploaded, and the page works with your connection off.
It does not parse the XMP inside an iTXt chunk into fields, so if XMP is present the page names it and leaves reading it to you. It does not decode compressed text chunks. And it is not a claim about what a website does to your file after you have sent it — that is the one thing no tool on your own machine can tell you, which is the argument for cleaning the file before it leaves.
Questions people ask about Does a PNG have GPS or EXIF in it?
Can a PNG hold GPS coordinates at all?
Yes, in exactly two places. Inside an eXIf chunk, which carries the same TIFF block a JPEG keeps in its APP1 segment, or inside XMP in an iTXt chunk. Nowhere else in the format has anywhere to put a coordinate.
Then why does mine have none?
Because nothing put it there. Phones photograph as JPEG or HEIC, and both carry EXIF from the moment of capture. A PNG is the result of a conversion — a screenshot, an export, a save-as — and the metadata only survives that if the converting program chose to carry it across. Most do not.
Has PNG always been able to carry EXIF?
No, and this is the part usually left out. For the first twenty years of the format there was no way to put EXIF in a PNG. The eXIf chunk was registered in 2017 and is now in the third edition of the specification. A great deal of image software is older than that or has never been updated for it, which is why so few PNGs carry any.
So does converting a photo to PNG remove the location?
Usually, and not as a rule you should lean on. It works because most converters do not write an eXIf chunk, which is a fact about tooling rather than about the format; as software catches up with the 2017 chunk it will work less often. It also never touched XMP in an iTXt chunk. If the object is to remove the metadata, remove the metadata.
What is in a PNG besides the picture?
tEXt holds a keyword and a value in Latin-1, zTXt holds the same compressed, and iTXt holds UTF-8 text and is where XMP arrives. eXIf holds a full EXIF block. tIME records when the image was last changed, to the second, and iCCP carries a colour profile, which describes a class of device rather than yours.
Does a screenshot have GPS in it?
No. No camera was involved, so there is no location to record. A screenshot may carry a tEXt or tIME chunk naming the software and the moment, which is mild. The risk in a screenshot is in the pixels — the tabs, the notification, the address bar — which what a screenshot gives away goes through.
How do I check my own PNG?
Open it in CLOAK. It walks the chunks, names each one, shows the value of every readable text chunk, and if there is an eXIf chunk it reads the EXIF inside it exactly as it would from a JPEG, coordinates included. A compressed zTXt chunk is named but not decoded, and the page says so rather than passing over it.
What removes it for certain?
Re-encoding the pixels. Exporting a cleaned copy from CLOAK builds a new file from the decoded image, so it has no chunks beyond the ones the picture itself needs. Renaming the file or changing its extension does nothing; the bytes are untouched.