PDF Info vs XMP: Where Document Metadata Lives
Learn how PDFs store metadata in an Info dictionary and catalog XMP, why both matter, and what verified document-property removal does not sanitize.
Last updated: 2026-08-08
A PDF can carry document metadata in two principal locations covered by this product: an Info dictionary referenced from the file trailer, and an XMP metadata stream referenced from the document catalog. A viewer may prefer one source, merge both, or show conflicting values. Removing only one location can leave a name, software version, or timestamp visible in the other.
The Info dictionary
The PDF trailer can contain an /Info reference that points to a dictionary of simple PDF string and date values. Common entries include:
- Title, Author, Subject, Keywords: descriptive document properties.
- Creator: the application that authored the source content, such as a word processor or layout tool.
- Producer: the component that converted or rendered the source into PDF, such as a print driver or PDF library.
- CreationDate and ModDate: timestamps for creation and modification.
- Additional entries written by a particular producer.
The PDF Metadata Viewer reads supported entries from this dictionary and displays them separately from catalog XMP.
Page count and PDF version may appear beside the findings. They describe the document's structure and length. They are not automatically personal metadata.
The catalog XMP stream
The document catalog can also contain a /Metadata reference to an XMP stream. XMP is XML-based and can represent familiar title, author, rights, date, and software properties. It can also carry namespaces and workflow history that have no direct equivalent in the Info dictionary.
The XMP stream is a separate PDF object and may be compressed. A tool that clears the Info dictionary but leaves this catalog reference intact can leave the same values visible in XMP. The reverse is also true.
Duplicate and conflicting values
PDF software often tries to synchronize Info and XMP, but the format does not guarantee that every save operation keeps them aligned. A document created in one application, exported by another, and edited by a third may carry:
- One author in Info and a different creator sequence in XMP.
- Old timestamps in one location and newer timestamps in the other.
- A neutral title in Info but a project name in XMP.
Different readers may resolve those conflicts differently. That is why a useful verification report must inspect both locations rather than treating “Document Properties” as a single field list.
Creator versus Producer
These fields answer different questions:
- Creator usually names the application used to author the source content.
- Producer usually names the software that generated the PDF bytes.
A document drafted in a word processor and exported through a PDF library can reveal both tools. Those values may expose a software stack or workflow even when Author is empty.
The PDF Metadata Editor exposes Creator and Producer among its six supported fields. A blank field is omitted from the new Info dictionary. The editor does not silently keep the old value.
Dates can exist in both locations
Info commonly stores CreationDate and ModDate. XMP may mirror them as xmp:CreateDate, xmp:ModifyDate, or related fields. Timestamps can reveal work patterns or time-zone information.
The PDF Remover removes the Info and catalog Metadata references. The PDF Editor removes old dates and every other old Info entry outside its six non-empty form values, then removes catalog XMP without creating a replacement XMP stream.
How PDF metadata removal works here
The PDF Metadata Remover processes one PDF at a time, up to 25 MB. qpdf WebAssembly runs locally in a reusable browser Web Worker. The workflow is:
- Inspect the trailer Info reference and catalog Metadata reference.
- Report supported Info and XMP findings, page count, PDF version, and conservative signature markers.
- Delete the Info and catalog Metadata references from the working object graph.
- Let qpdf write a new PDF copy.
- Re-scan the new copy for Info and catalog XMP and verify that page count is unchanged.
The original is never overwritten. Encrypted or password-protected PDFs, malformed files, and PDFs that require structural recovery fail closed.
This is a full qpdf rewrite rather than an incremental metadata update. ExifTool's PDF notes explain that PDF writing uses incremental updates, which can leave old information recoverable in the file. A qpdf rewrite reconstructs a new file from the current object graph, but it still must not be described as universal forensic erasure. Content outside the two document-property locations remains outside this promise.
How PDF metadata editing works here
The PDF Metadata Editor replaces the old Info record with only the non-empty values entered for:
- Title
- Author
- Subject
- Keywords
- Creator
- Producer
It removes old dates, other old Info entries, and catalog XMP. It does not create new XMP. After qpdf writes the new copy, the tool verifies exact readback of the six supported fields, checks that catalog XMP is no longer detected, and confirms page count.
This is replacement, not an in-place patch. Leaving a field blank omits it instead of preserving a stale value.
Independent verification
The output can be opened again in the PDF Metadata Viewer. Check these results independently:
- The Info dictionary contains no old values, or only the six values intentionally written by the editor.
- Catalog XMP is not detected.
- Page count matches the original.
- Any signature consequence is understood.
ExifTool is also useful as an independent reader:
exiftool -G1 -a -s cleaned-document.pdf
Compare the result with the original, but remember that different readers expose different subsets of PDF structures.
Searching raw PDF bytes for a known old author or project name is another useful test signal. It is not a universal method. Streams may be compressed or encoded, so an absent plain-text string can still exist in encoded content. A matching string can also belong to visible page text or an unrelated embedded object. Treat byte search as one test alongside structural re-scan, not proof on its own. The project's repeatable approach is summarized in the test evidence.
Digital signatures
A PDF digital signature covers specific file bytes and revision state. Rewriting the document invalidates the existing signature.
The browser tool looks only for conservative signature structures. If a possible signature is detected, the Remover and Editor require explicit consent before rewriting. They do not validate the signer, certificate, trust chain, revocation status, or signature validity. The marker is a warning, not a cryptographic verdict.
If the signature matters, preserve the original signed file and do not treat a rewritten copy as signed evidence.
Document properties are not PDF sanitization
This workflow handles the Info dictionary and catalog-level XMP. It does not claim to inspect or remove:
- JavaScript, actions, or external links.
- Attachments and embedded files.
- Form fields and annotations.
- Hidden text, layers, or redaction remnants.
- Metadata inside embedded images, fonts, or other content.
If your threat model includes active content, concealed text, attachments, or forensic recovery, use a dedicated PDF sanitization or hardening workflow. Removing document properties is narrower by design.
Pre-share checklist
- Inspect the original in the PDF Metadata Viewer and note Info, XMP, and signature findings.
- Choose removal or replacement. Use the Remover for an empty document-property result, or the Editor for a narrow six-field Info record.
- Keep the original. The new copy does not replace it.
- Review the output re-scan. Confirm Info, catalog XMP, exact editor readback, and page count as applicable.
- Cross-check with an independent reader if the document is sensitive.
- Respect signatures. Rewriting invalidates an existing signature.
- Consider the wider PDF. Attachments, scripts, forms, annotations, hidden content, and embedded-file metadata remain separate concerns.
- Use the share-safe report when you need a result record without the file name or metadata values.
Addressing both Info and XMP avoids a common half-cleaned result. It does not turn document-property removal into full PDF sanitization. Browse more scope-conscious references in the guides hub.