How to troubleshooting the path prefix remover
- Step 1If it says no prefix detected, name one — "No common top-level prefix detected" means the archive has more than one top folder and the Prefix box was empty. Type the exact wrapper to remove (with trailing slash, e.g.
src/) and Process again. - Step 2If the download is a ZIP not a TAR.GZ, that's expected — The tool always outputs ZIP. If you need the original format back, run the archive format converter on the flattened ZIP.
- Step 3Check the size and entry limits — Free caps each archive at 50 MB and 500 entries; Pro at 500 MB / 50,000; Pro-Media and Developer at 2 GB / 500,000. A small-but-dense archive can fail on the entry count even when the size is fine.
- Step 4Verify the input is a real archive — Run the auto format detector on the file. A renamed file (a
.zipthat is really a RAR) is processed by its true type, but a non-archive will fail to read. - Step 5If it can't read the file, try repair — A corrupt central directory blocks extraction. Run the corrupted ZIP repair tool first, then flatten the recovered archive.
- Step 6Rule out a browser extension — If WebAssembly stalls or a DevTools console shows extension message-channel warnings, retry in a private window with extensions disabled to confirm interference.
Symptom to cause to fix
The fastest path from what you see to what to do. Messages shown are the tool's actual wording.
| Symptom | Likely cause | Fix |
|---|---|---|
| "No common top-level prefix detected" | Empty prefix + multiple top folders | Type the exact prefix to strip (with trailing slash) |
| Download is a .zip, not .tar.gz | Tool always outputs ZIP | Convert with the archive format converter |
| Blocked before processing | File over the size or entry tier cap | Upgrade tier or split the archive |
| "Entries renamed: 0" | Typed prefix matched no entry path | Check spelling, casing, and trailing slash |
| Cannot read / extract error | Corrupt or non-archive input | Verify format, then run the repair tool |
| WASM stalls | Browser extension on the worker channel | Retry in a private window with extensions off |
Limits that trigger a hard stop
Both limits are enforced per archive before processing. The entry limit is the count of files inside the archive.
| Tier | Size cap | Entry cap | Files per job |
|---|---|---|---|
| Free | 50 MB | 500 | 1 |
| Pro | 500 MB | 50,000 | 20 |
| Pro-Media | 2 GB | 500,000 | 100 |
| Developer | 2 GB | 500,000 | unlimited |
Cookbook
Each scenario shows what you do, what the tool says, and how to resolve it. Messages are the tool's real output.
Empty prefix, multiple top folders
The single most common stop. Auto-detect declines with two top folders; you must name the one to strip.
Archive contents:
client/index.html
server/app.js
Prefix to strip = empty -> Error: No common top-level prefix detected.
Specify the prefix to strip explicitly.
Fix:
Prefix to strip = client/ -> index.html (stripped), server/app.js (kept)Expected ZIP output from a tarball
Not a bug. The tool re-packs as ZIP regardless of input format.
Input: build.tar.gz Download: build-flattened.zip <- ZIP, as designed Want tar.gz back? archive-format-converter: ZIP -> TAR.GZ
Typed prefix matched nothing
A wrong trailing slash or casing means zero entries match, so nothing is renamed.
Archive: Project-1.0/readme.md Prefix to strip = project-1.0/ (lowercase p) Result: Entries renamed: 0 (case did not match) Fix: Prefix to strip = Project-1.0/
Over the entry limit on Free
A small ZIP can still exceed the 500-entry Free cap.
Archive: tiny-icons.zip (38 MB, 1,200 entries) Free tier -> blocked: too many entries (limit 500) Fix: upgrade to Pro (50,000 entries) or split the archive with the archive splitter, then flatten each part
Corrupt archive — repair then flatten
If extraction fails outright, the file is likely damaged. Repair first.
Input: download.zip Path Prefix Remover -> Error: cannot read archive 1) corrupted-zip-repair -> download-repaired.zip 2) path-prefix-remover on the repaired archive -> success
Edge cases and what actually happens
No common top-level prefix detected
Stopped — by designWith an empty prefix and more than one top folder, the tool refuses to guess and produces nothing. Type the exact prefix to strip to proceed — this is the safe default, not an error in the data.
Output is ZIP, not the input format
By designThe tool always writes ZIP via fflate. A missing .tar.gz or .7z extension on the download is expected. Convert with the archive format converter if needed.
File over the size cap
Rejected (tier limit)Archives over 50 MB (Free), 500 MB (Pro), or 2 GB (Pro-Media/Developer) are blocked before processing with a message naming the limit. Upgrade or split.
Over the entry cap
Rejected (entry limit)Even a small archive is blocked if it has more entries than the tier allows (500 Free, 50,000 Pro, 500,000 higher). Split it with the archive splitter and flatten each part, or upgrade.
Typed prefix matched no entries
Preserved (zero renamed)If no entry path starts with your prefix, the result is the same tree re-zipped, reporting "Entries renamed: 0". Check casing and the trailing slash — src/ matches src/... but src (no slash) may not.
Corrupt central directory
Error (cannot read)A damaged directory blocks extraction; no file is produced. Run the corrupted ZIP repair tool, then flatten the recovered archive.
Non-archive file dropped
Error (unrecognised)If the file is not an archive in any supported format, reading fails. Confirm the true type with the auto format detector.
Output unexpectedly larger or smaller
Expected (re-compressed)The tool re-compresses at fflate level 6, so size can shift versus the original — already-compressed media may grow slightly, text may shrink. This is normal.
Encrypted ZIP, output not encrypted
Supported (output unencrypted)Encrypted entries are read via zip.js but the rebuilt ZIP is unencrypted. Re-protect it with the encrypted ZIP creator if you need encryption preserved.
WebAssembly init stalls
Browser extension interferenceAn extension touching the worker message channel can stall WASM startup. Retry in a private window with extensions disabled to confirm and work around it.
Frequently asked questions
Why does it say "No common top-level prefix detected"?
The Prefix to strip box was empty and the archive has more than one top-level folder. Auto-detect only works when there is exactly one shared top folder. Type the exact prefix (with trailing slash) to strip the one you want.
Why is the download a ZIP instead of my original format?
The tool always re-packs as ZIP, even from a TAR.GZ or 7z input. This is by design. To get the original format back, run the archive format converter on the flattened ZIP.
Why was my file rejected before processing?
It exceeded a tier limit. Free allows 50 MB and 500 entries per archive; Pro 500 MB / 50,000; Pro-Media and Developer 2 GB / 500,000. The message names which limit you hit.
Why does it say "Entries renamed: 0"?
The prefix you typed did not match any entry path. Prefix matching is exact and case-sensitive, and src/ (with slash) is not the same as src. Check casing and the trailing slash and retry.
Why does it fail to read my archive?
Most often a corrupt central directory or a non-archive file. Verify the type with the auto format detector; if it is a damaged ZIP, run the corrupted ZIP repair tool first.
Can I flatten a small archive with thousands of files on Free?
No — the Free entry cap is 500 regardless of size. Upgrade to Pro (50,000) or split with the archive splitter and flatten each part.
Why is the output a different size than the input?
The tool re-compresses at fflate level 6, so the output size will rarely match the source byte-for-byte. Already-compressed media can grow slightly; text usually shrinks. This is expected.
It's stuck on "Processing…" — what now?
Hard-refresh (Ctrl+Shift+R) to clear a stale cached build, then retry. If WebAssembly stalls on startup, a browser extension may be touching the worker channel — retry in a private window with extensions disabled.
Is the prefix override available on the free tier?
Yes. The Prefix to strip input works on every tier, including Free. Tiers only change the size and entry limits, not the available controls.
Does flattening change my file contents?
No. Only entry path strings change; file payloads are preserved byte-for-byte. Timestamps reset to rebuild time, though — normalize with the timestamp normalizer if that matters.
Can the tool open 7z or RAR?
Yes — it reads 7z, RAR, BZ2, XZ, TAR variants and ISO via the libarchive WASM bridge. It cannot write those formats; the output is always a ZIP.
What if the wrapper folder leaves an empty directory entry?
It does not. After stripping, the wrapper's own entry becomes empty and is dropped, so your files land at the root with no leftover empty folder. To remove other empty folders, use the empty folder pruner.
Privacy first
Every JAD Archive tool runs entirely in your browser using fflate, @zip.js/zip.js, and the libarchive WASM bridge. Your archives never leave your device — verified by zero outbound network requests during processing.