Add your PK3 file
Drop one or more .pk3 files onto the converter above, or browse for them. They load into browser memory only — nothing is uploaded, so there is no size-based pricing and no server queue.
Repacking a .pk3 archive as .tar.gz moves the same files into a container with different compression and compatibility trade-offs. Free, private, and validated — the file never leaves your browser.
Batch files can each use a different output. Nothing uploads for local conversions.
Working inputs include camera RAW, browser-local audio/video, PDF, CBZ/CBR comics, office documents, ebooks, markup, 3D models, structured text, images, and archives.Repacking a .pk3 archive as .tar.gz moves the same files into a container with different compression and compatibility trade-offs. A .pk3 file is the game-content archive used by Quake III Arena and the many engines derived from its id Tech 3 codebase. It is a renamed ZIP whose entries are mounted into a single virtual filesystem, so maps, textures, shader scripts, sounds, and models load as though they sat in ordinary folders.
A .tar.gz file is a tarball that has then been run through gzip: tar supplies the multi-file bundling and Unix metadata, gzip supplies the compression. This two-layer pairing is the default distribution format of the open-source world. For this route the practical draw is solid-style compression across the whole file set and full Unix metadata preservation through the tar layer — balanced against no random access to individual members, which is worth knowing before you commit a large batch.
The practical trigger for this conversion is usually a mismatch: with .pk3, load-order dependence means two archives can conflict in ways the files themselves do not reveal. Switching to .tar.gz buys you solid-style compression across the whole file set, which is why it is the better fit for source releases — nearly every GitHub release tarball. Because the conversion runs locally, trying it costs nothing but a few seconds of compute on your own machine.
| Aspect | Quake 3 game archive (.pk3) | Gzipped TAR archive (.tar.gz) |
|---|---|---|
| Format type | Container — quality depends on the codecs and settings inside | Container — quality depends on the codecs and settings inside |
| How it stores data | the container is a standard ZIP; only the extension and the engine's mounting rules differ | compression applies to the tar stream as a whole — effectively solid compression, beating ZIP's per-file approach on collections of small similar files |
| Strongest at | extracting textures, sounds, or map files from a mod for study or reuse under its licence | source releases — nearly every GitHub release tarball |
| Weak spot | load-order dependence means two archives can conflict in ways the files themselves do not reveal | no random access to individual members |
| Metadata | the archive stores only ordinary ZIP per-entry metadata — path, timestamp, and CRC. Everything else about the content lives inside the assets themselves, such as the text shader scripts under scripts/ | ownership, permission modes, and timestamps come from the inner tar layer; the gzip wrapper contributes only its own optional filename and mtime fields |
Drop one or more .pk3 files onto the converter above, or browse for them. They load into browser memory only — nothing is uploaded, so there is no size-based pricing and no server queue.
Select .tar.gz in the output menu next to each file. The menu only offers targets this engine can genuinely produce, so if TAR.GZ is selectable, the route is real and validated.
Press Convert. Extraction and repacking use WebAssembly builds of real archive engines (libarchive and fflate) running in your browser.
Each result is signature-checked before the download unlocks, so a failed encode can never masquerade as a valid TAR.GZ file. Outputs keep the original filename with the .tar.gz extension.
Since pk3 is container-oriented and tar.gz is container-oriented, the conversion preserves the source content exactly as stored; no additional compression pass is applied beyond what .tar.gz itself requires.
Yes — the .pk3 file is processed inside your browser tab and never uploaded. Extraction and repacking use WebAssembly builds of real archive engines (libarchive and fflate) running in your browser. Close the tab and the file is gone from memory.
One command — tar -xzf — unpacks it on any Linux or macOS box, Windows 10+ includes bsdtar for the same job, and recent Windows 11 builds open tarballs from File Explorer. GUI archivers on all platforms recognize both the .tar.gz and .tgz spellings.
It depends on the content: compression applies to the tar stream as a whole — effectively solid compression, beating ZIP's per-file approach on collections of small similar files. Convert one representative file first and compare before batch-processing a large set.
In .pk3, the archive stores only ordinary ZIP per-entry metadata — path, timestamp, and CRC. Everything else about the content lives inside the assets themselves, such as the text shader scripts under scripts/. Re-encoding through the browser pipeline does not carry embedded metadata into the output, which doubles as a privacy scrub — check the exported file if you specifically need tags preserved.