Incomplete ZIP Download: How to Recover an Interrupted Archive
Incomplete ZIP Download: How to Recover an Interrupted Archive
A ZIP file that arrived partially is one of the more common archive failures. The download stopped before the file finished, the file system saved what arrived, and now your archive tool refuses to open it. Most of the time the fix is to download the file again — but when that isn’t possible, partial recovery is often workable.
Quick fix
If you can re-download the file, do that first. ZIP truncation is rarely worth spending time repairing when a fresh copy is available.
- Compare the local file size to the expected size. Right-click the file and check Properties (Windows) or Get Info (macOS).
- If the file is smaller than expected, it’s truncated. Re-download from the original source.
- If your browser supports resumable downloads, use the resume option rather than starting over. If it doesn’t, switch to a download manager that does — Free Download Manager, JDownloader, or
wget -cfrom the command line.
If re-downloading isn’t possible — the source has been removed, you’ve used your bandwidth quota, or the file is uniquely available — proceed to repair.
If that didn’t work
The Info-ZIP zip utility ships with a fix mode that scans a damaged ZIP for intact local file headers and rebuilds a working archive from what it finds. This is the most reliable command-line recovery for truncated ZIPs.
Open a terminal and run:
zip -FF broken.zip --out fixed.zip
-FF is the “fixfix” mode — the more aggressive variant that scans from the start of the file rather than trusting any directory information. Use it for truncated downloads. If zip prompts whether the archive is single-disk or multi-disk, answer single-disk (y) for a normal ZIP.
The output fixed.zip will contain whatever entries zip could recover. Open it with your usual archive tool to see what survived. Some files may be incomplete or missing entirely if their data was in the truncated portion of the original.
Info-ZIP zip ships with most Linux distributions and with macOS by default. On Windows, install it via Cygwin, MSYS2, or run it inside Windows Subsystem for Linux. Note that Info-ZIP unzip does not have an equivalent recovery mode — the fix capability lives in zip, not unzip.
Advanced recovery
7-Zip can sometimes extract usable files from a damaged ZIP that other tools refuse outright.
In 7-Zip’s File Manager interface, navigate to the damaged archive. Instead of double-clicking it (which triggers normal extraction and fails on damage), right-click and choose 7-Zip → Open archive. This forces 7-Zip to parse what it can and present the contents. From there, drag the files you want into a working folder. 7-Zip reports errors on entries it can’t fully extract, but the entries that succeed are usable.
This approach won’t recover anything that wasn’t downloaded — if a file’s data was in the missing portion of the ZIP, no tool can produce it — but it bypasses the integrity checks that prevent normal extraction from damaged archives.
For severely damaged archives where neither approach works, commercial tools like DiskInternals ZIP Repair and Stellar Repair for ZIP advertise more aggressive recovery. Their underlying technique is the same scan-and-rebuild that zip -FF performs; the value is the GUI rather than fundamentally different recovery capability. Try the free options first.
Why this happens
A ZIP archive’s structure puts its index — called the central directory — at the very end of the file. Each entry inside the archive also has its own local header, but those local headers don’t tell you what else is in the archive. Only the central directory does that.
When a download is interrupted, the missing bytes are almost always at the end of the file. The central directory is the first thing lost. Without it, an archive tool opens the file, sees no index, and reports the archive as corrupt or invalid even though most of the actual file content is still present in the local headers.
zip -FF and 7-Zip’s open-archive mode both work the same way: they ignore the missing or damaged central directory, scan the file for local file headers, and reconstruct what they can. The reconstruction will be incomplete — any entry whose data was in the truncated portion is gone — but the entries that arrived in full are recoverable.
This is also why the file size matters so much. A ZIP that is 99% downloaded usually has 99% of its files intact and recoverable. A ZIP that is 50% downloaded has lost half its content; no recovery tool can produce what was never there.
Preventing this in future
Use a download manager that supports resume for any file over a few hundred megabytes. Free Download Manager, JDownloader, and wget -c all handle network interruptions by resuming rather than restarting. Resume capability also depends on the server supporting HTTP range requests — most modern servers do, but not all.
When publishing or sharing large ZIPs, include a checksum (SHA-256 is the modern default) so recipients can verify the file arrived intact. A truncated download produces a different checksum, and the user can fix it before discovering the problem inside the archive.
For files large enough that interrupted downloads are a real risk, consider distribution via a service that handles transfer integrity at the protocol level — most cloud storage providers verify byte-level integrity automatically on download.
Related issues
If your ZIP opens but extraction fails on specific files inside it, see the guide to ZIP extraction failures partway through. For the specific error message that typically accompanies a truncated archive, see the “unexpected end of archive” error guide. For a broader overview of archive repair across formats, the archive repair complete guide covers the structural concepts that make these recoveries work or fail.
Last verified: April 2026