Inspect, rewrite, verify
PDFClean runs the same three stages on every file. The third one is the reason the tool exists: the cleaned file is read a second time, from its saved bytes, before you can download it.
1. Inspect
The file is read with the browser's File API and parsed in memory. PDFClean looks at the places a PDF keeps document metadata:
- The Info dictionary. The classic document properties: Title, Author, Subject, Keywords, Creator, Producer, CreationDate and ModDate. It can also hold custom keys such as
Company, which is common in PDFs exported from office suites. - The XMP packet. A newer metadata format, stored as an XML stream that often duplicates the Info fields and adds editing history, tool versions and timestamps.
- The trailer file identifier. An
/IDvalue that identifies the file itself, independent of its content.
Every field found is listed on the card for that file, including custom keys you might not expect. If a file has no metadata at all, the tool says so instead of inventing fields.
2. Rewrite
Removal is not a text search. The Info entries you asked to remove are deleted from the document structure, the XMP reference is removed from the catalog, and the file identifier is dropped from the trailer. Then the whole PDF is rebuilt from its objects.
Pages, text, images and structure are preserved; the metadata is not. Because the file is rebuilt, its byte size may change — usually it shrinks, and very small files can grow by a few bytes. The pages look the same when opened in any reader.
If you choose Keep selected fields, only the fields you tick are retained. Custom keys, the XMP packet and the file identifier are removed either way, because they are not part of the selection.
3. Verify
This is the part most tools skip. PDFClean takes the bytes it just produced, parses them again as a fresh document, and reads the metadata locations a second time. For every field that should be gone it checks that the entry is absent. For every field you chose to keep, it checks the value is unchanged. It also confirms that the XMP reference and the file identifier no longer exist.
The check list is visible next to each result. It is not a summary written in advance — it is generated from the re-opened file, one line per claim.
What is removed
| Location | What goes |
|---|---|
| Info dictionary | Title, Author, Subject, Keywords, Creator, Producer, CreationDate, ModDate and any custom keys |
| XMP | The metadata packet referenced from the catalog |
| Trailer | The file identifier (/ID) |
What is not removed
Being precise about limits matters more than claiming completeness. This version does not touch:
- Annotation and comment authors. If a PDF contains comments, their author names are stored on the annotations, not in the document Info dictionary.
- Embedded files and their metadata. Attachments are carried through as they are.
- Page content. Text, images and anything a reader can see are preserved — including an author name typed into the page itself.
- Digital signatures. Rewriting the file invalidates existing signatures. If a signature matters, keep a copy of the original and do not clean the signed version.
Encrypted PDFs
An encrypted or password-protected PDF is detected and refused with a clear message. No cracking is attempted and no output is produced. If you own the file and know its password, unlock it in a PDF application first, then clean the unlocked copy.
Batches and the report
Multiple files can be dropped at once. Each file is inspected, cleaned and verified on its own, and the batch download is a ZIP that contains the cleaned PDFs pluspdfclean-report.txt: per file, the byte sizes, the fields removed, the fields kept and the verification result. A file that fails verification is left out of the ZIP.
Why there is no upload
There is no server-side PDF code on this site, no API endpoint that accepts files and no storage bucket. The page is static; the cleaning runs in the tab. You can prove it: load the page, switch off your network connection and clean a file.