Practical guide
Export image metadata as JSON or CSV without losing repeated fields
A metadata handoff needs more than the text visible in a table. Use a known three-record PNG to check repeated values, Unicode, multiline text and spreadsheet formula protection before exporting a private photo's fields.
18 October 2026 · Check AI Free
Load the three-record export example
Open the EXIF viewer and click Try synthetic metadata sample, or download export.png below and choose it as a local file. It is a self-authored 1 × 1 PNG with exactly three stored records. Author appears twice, and Description uses PNG iTXt for Unicode. None of these strings came from a real person's photo.
This export is an inventory of one actual reading. It includes stable field IDs, each occurrence's typed raw value and source location, read_status, warnings and coverage. It is not a signed certificate or a backup of every possible vendor-specific metadata structure.
- Open the local metadata viewer and exporter — The export controls appear after a successful or partial reading.
- Download export.png — The same deterministic three-record sample is used by the button.
Inspect the values before creating a report
The first Author value is harmless test text chosen to resemble a spreadsheet formula. The Description contains an actual line break, quotation marks and a comma. These are deliberate export checks; do not replace them with a single flattened Author string or a shortened display preview.
| Stable ID | Occurrence | Exact stored value |
|---|---|---|
| PNG:Author | 1 | =1+1 |
| PNG:Author | 2 | Synthetic second author |
| PNG:Description | 1 | Synthetic café / 相機 A "quoted", multiline value. |
Choose the groups and download JSON
Step 1
Keep only the groups you need
Under Field groups to include, leave PNG checked for this sample. Deselect the other groups if you want to practice a narrow handoff. A real JPEG may need EXIF or GPS instead. Group selection affects the report, not the source image.
Step 2
Leave filename inclusion off
Keep Include the input filename in this report unchecked. The source filename is omitted by default. This does not redact names or paths that are themselves stored in selected metadata values; inspect those values separately.
Step 3
Preview the complete JSON
Click Preview JSON and inspect records. Expect three objects: two with id PNG:Author and one with id PNG:Description. The two Author values remain separate. The JSON newline is escaped as \n in the file and becomes a real newline when parsed.
Step 4
Save and reopen the report
Click Download JSON, then open image-metadata.json in a text editor or JSON viewer. Confirm read_status is read, all three records remain, and no top-level filename exists. JSON is the preferred handoff when you need exact rational pairs, raw bytes or duplicate values.
Inspect what CSV changes for spreadsheet safety
Click Preview CSV, then Download CSV. The download is UTF-8 text with quoted cells and CRLF row endings. Embedded quotation marks are doubled, and a quoted cell can contain a newline; counting physical text lines is therefore not a reliable record count. There are three data records for this sample, not one row per unique keyword.
Formula-like cells receive a leading apostrophe. In the CSV, the first Author display_value and raw_value are represented as '=1+1, while JSON preserves =1+1 exactly. This protective prefix is an intentional difference, not a change to the image. The same protection applies to selected filename and other text columns. When opening CSV, use your spreadsheet's UTF-8 import and review text columns rather than enabling formulas or external content.
JSON raw value: "=1+1"
CSV cell text: '=1+1
Description after JSON parsing:
Synthetic café / 相機
A "quoted", multiline value.Empty selections and partial reads still carry context
If you deselect PNG for this example, the report contains no selected field records. It still carries the actual reading status and coverage; this is not evidence that the original image lacks metadata. If a real input has a partial reading, keep its warnings rather than forwarding the exported values as a complete inventory.
Before sharing a report, inspect values as well as the optional filename. GPS, authors, captions, prompts and paths can be sensitive. For a report intended only to describe potential privacy categories, use the privacy checker with stored values omitted instead of publishing a full metadata export.
Sources and reproducible inputs
- Self-authored metadata export fixture v1 — Three records; duplicate Author, formula-like text and Unicode/multiline Description. Generated from a deterministic source definition.
Continue with your file
- Create a privacy report with values omitted — Keep the field categories and limitations without including stored content by default.
- Read source containers and raw values — Distinguish a typed value from its formatted display.
- Compare a source and an output — Check repeated field values and actual missing records after an export.