ByteScope

Remove PDF Metadata

Open a PDF, see every Info dict field and the XMP stream, then strip what you don't want to keep — in this tab, nothing uploaded.

Your files never leave your browser — all processing is local.

Drop a PDF here

or click to browse — processed in this tab, nothing uploaded

About this tool

A PDF you email, upload to a portal, or drop in a chat usually still carries who wrote it, which program produced it, and when. That lives in the Document Information Dictionary — Title, Author, Subject, Keywords, Creator, Producer, CreationDate, ModDate — and often again in an XMP metadata stream hanging off the catalog. This page reads those eight fields and whether an XMP stream is present, then lets you clear any combination of them. The file never leaves this tab.

Info dict and XMP are two copies

Clearing Author in the Info dict does not touch XMP, and dropping XMP does not empty the Info dict. PDF writers duplicate the same facts in both places, so a tool that only blanks one of them leaves the author sitting in the other. The plan above the button lists which Info fields will be cleared, which you chose to keep, which were already empty, and whether the XMP stream will be dropped. If that plan would change nothing, the button stays disabled.

The cleaned file is loaded again before you get it

Some PDF libraries rewrite Producer and ModDate as they load or save, which would hand you a file with more metadata than you started with. After stripping, this page loads the output a second time, with that rewrite turned off, and checks the cleared fields are actually empty. If they are not, you get an error instead of a download. Password-protected PDFs cannot be opened here yet — you will see that said plainly, not a fake success.

Contracts, ID scans and tax returns are the files people most want to strip, and the files they least want to send to an unknown server. This page is a static file with no API behind it: the PDF is opened with the File API, parsed in JavaScript, and the cleaned bytes are a download your browser generated. Turn the network off and it still works.

Frequently asked questions

Is my PDF uploaded anywhere?

No. The file is opened locally with the File API, parsed in this tab, and the cleaned PDF is a download the browser built from memory. There is no API behind this page, so there is nowhere to upload to even in principle. For the PDFs you actually want to strip — a contract, a scanned ID, a tax return — that is the whole point.

What is the difference between the Info dictionary and XMP?

The Info dictionary is the eight classic keys (Title, Author, Subject, Keywords, Creator, Producer, CreationDate, ModDate) stored on the trailer. XMP is a separate XML packet referenced from the catalog as /Metadata. Writers usually fill both. Clearing one copy leaves the other intact, which is why the plan lets you drop XMP independently of the Info fields.

The PDF has a password. Can this tool unlock it?

No. An encrypted PDF makes the loader throw, and this page catches that and tells you so. It does not ignore encryption, does not guess a password, and does not offer a cleaned file that it never actually read. Unlocking is a later tool; pretending to have stripped a file we could not open would be worse than refusing.

Will stripping metadata break the PDF, or a digital signature?

Page content is left alone: this tool only deletes Info-dict keys and, if you asked, the catalog /Metadata stream. A digitally signed PDF is a different story — changing the file bytes invalidates the signature, and that is true of any metadata stripper. If you need the signature to still verify, do not strip; if you need the author gone, the signature was already binding the metadata you wanted removed.

How do I know the metadata is actually gone?

Before the download is offered, the output is loaded a second time and the cleared fields are checked. If Producer or ModDate came back, you see an error, not a file. You can also drop the download on this page again, or compare original and cleaned bytes in the binary diff tool. Dates that this page cannot parse are shown as the raw string with a note, never silently rewritten.