Skip to content
Upload Nothing runs in your browser

Repair PDF files that still parse, then save the rewrite

Repair PDF files that still parse. The file is loaded with invalid objects tolerated, then saved, which rewrites the cross-reference. That fixes many broken tables inside a file the parser can still read. It cannot recover a truncated download. Bytes that were never in the file are not invented. qpdf is not used.

Repair PDF illustration, a file that will not open beside the same document after a rewrite

Loading tool…

or drop / paste

How to repair PDF files

  1. Add one PDF. If it is encrypted, you still need the password you already know. Repair does not remove encryption and does not guess the password.
  2. There is no preset and no quality slider. The repair is one rewrite.
  3. Press Repair PDF. The library loads the file with invalid objects tolerated, then saves a new PDF.
  4. If the file does not parse at all, the job stops with a corrupt-file error. The original stays in the list. A truncated download fails this way, because the missing end of the file is not reconstructed.
  5. Download the rewritten PDF when the load succeeds. Check that the page count matches what you expected. The producer line is Upload Nothing (uploadnothing.com).

Repair PDF options explained

The rewrite is a pdf-lib load and save. Invalid objects are tolerated on the load so a broken cross-reference can still yield the objects the parser understands. The save writes a fresh structure. That is the repair.

qpdf is not used. There is no second engine waiting to reconstruct xref streams another way. If this load fails, the page has no further trick. The corrupt-file error is the end of the job.

An encrypted file still needs the password. Ignore-and-save is not offered for a password you do not know. Unlock PDF is the same rule: the password you already know, then a copy. Repair is for structure, not for access.

What a successful repair changes

You get a new PDF that opens when the original failed because its cross-reference was wrong and the objects were still present. Page content that the parser could read is what lands in the new file. An object that was actually missing is still missing.

The warning on success says the file was rebuilt and that this repairs many broken tables inside the file, and that it cannot recover bytes that were never in the download. Read that warning. A shorter page count than you remember is a sign the parser never saw the rest.

The producer string becomes Upload Nothing (uploadnothing.com), as on other saves. Edit PDF metadata if you need a different producer afterwards. Repair does not offer a metadata form of its own.

What cannot be repaired

A download that stopped halfway has no later pages to recover. Tolerating invalid objects does not synthesize the missing half. The same is true of a file that is not a PDF at all. The corrupt-file error means the load did not produce a document.

Repair does not recompress images, flatten forms, or clear a password. Run Compress PDF, Flatten PDF, or Unlock PDF after you have a file that opens. XFA forms are not repaired into AcroForm fields. They remain whatever the parser kept, and Flatten PDF will still reject XFA.

Limits, formats and output

Accepted input PDF
Files per batch 1
Soft size warning 200 MB or 1,000 pages
Hard stop 500 MB total in memory
Output PDF, or a ZIP when there is more than one file
Account None. The tool runs in this tab.

Your file never leaves your device

Your PDF is rewritten by a script running in this tab. The work runs in a Web Worker in this tab, using WebAssembly for the heavy parts, and the result comes back as a local blob. This site does not upload the file, store it, or log its name.

To verify: load the page, turn on airplane mode, and drop the file again. It still finishes. Or open DevTools, choose Network, and watch the run: there is no upload. The architecture is described on How it works.

Frequently asked questions

Will this fix a file that stopped downloading?

No. A truncated download is missing bytes. Repair can rewrite a cross-reference when the file still parses. It cannot recover bytes that were never in the download. If the load fails, you get a corrupt-file error and the same incomplete file you started with.

Do you use qpdf?

No. qpdf is not used. The repair is a pdf-lib rewrite: load with invalid objects tolerated, then save. If that load cannot build a document, there is no second attempt with another program. The error is the result.

The file has a password. Can repair open it?

Only with the password you already know. Encrypted files still need that password. There is no cracking and no empty-password guess beyond what the opener already tries for an empty user password. Unlock PDF is the page that removes encryption after the password works.

What should I check after the download?

The page count, and a page in the middle, not only page one. A rewrite can succeed and still have dropped an object the parser could not read. If the count is short, the missing pages were not in the objects this load could see. Keep the original.

Does repair make the file smaller?

It can change the size because the file is rewritten, including a new cross-reference. It does not run the compress presets. Lossless, Balanced, Strong, and Extreme are on Compress PDF. Use those after the file opens, if size is the actual problem.

Is the repaired file uploaded anywhere?

No. The load and the save run in this tab. The download is the rewritten PDF. A corrupt file that fails the load never leaves the list as a successful result. Starting over clears the list in the tab.

Last updated 2026-09-26. By Tam.