Initializing... drag & drop files here
Supports: TAR
.tar archives. Batch is supported — each archive becomes its own .tz2..tar is re-compressed into its own .tz2. (Single-Archive merge is only offered for loose files, not archive-to-archive conversions.).tbz2/.tar.bz2 — a tar stream wrapped in bzip2 — just with a single-token extension that survives older FAT/8.3 filesystems and some legacy mail gateways..tz2 from the results panel when it completes.A plain .tar file is an uncompressed concatenation of files plus headers — convenient for streaming and incremental appends, but it takes the same space on disk as the sum of its contents. Wrapping it with bzip2 (the .tz2 form) typically cuts the size by 70-85% on text-heavy data such as source trees, logs, and config dumps. In a widely cited benchmark on a 580 MB Linux kernel tarball, bzip2 -9 reached a 16.6% compression ratio versus gzip -9's 21.1% — roughly 20% smaller files for text-dominant workloads, at the cost of ~50% longer compression time and ~4x slower decompression.
.tar.bz2 precisely because the smaller download offsets the slower decompress on the client side..tar of /etc, /var/log, or a Postgres dump shrinks noticeably more under bzip2 than gzip; useful when uploading to a remote SFTP target over consumer broadband..tz2 plays nice with legacy filesystems — Old DOS/FAT/ISO 9660 paths and some Outlook/Exchange filters mangle multi-dot names like archive.tar.bz2. Using .tz2 keeps the entire compound type in one extension token..tar to .tz2.tar -xjf file.tz2 works out of the box on every mainstream Unix, and 7-Zip / WinRAR handle .tz2 on Windows without extra plugins.| Property | TAR | TZ2 (tar.bz2) |
|---|---|---|
| Compression | None — raw concatenation | bzip2 (Burrows-Wheeler + RLE + Huffman) |
| Typical size vs raw | 100% | ~15-30% on text, ~85-95% on already-compressed media |
| Compression speed | Instant (no compression pass) | Slower than gzip; ~50% longer at level 9 |
| Decompression speed | Instant | ~4x slower than gzip |
| Random access | Streaming only | Block-based (100-900 kB blocks), but still no in-archive seek |
| Preserves POSIX metadata | Yes (mode, uid/gid, symlinks, hard links) | Yes — bzip2 just wraps the tar bytes |
| Best fit | Pipelines, intermediate format, fast local copies | Distributing source tarballs, archival where size beats speed |
| Native tooling | tar everywhere |
tar -xjf, bzip2, bunzip2, 7-Zip, WinRAR |
Benchmark below from the rootusers.com run on linux-3.18.19.tar (580 MB), all at compression level 9:
| Algorithm | Output ratio | Compress time | Decompress time | When to pick it |
|---|---|---|---|---|
| gzip (.tar.gz / .tgz) | 21.06% | 54 s | 6.0 s | Fastest end-to-end; default for CI artifacts and Docker layer pushes |
| bzip2 (.tar.bz2 / .tz2) | 16.63% | 83 s | 23.5 s | Best ratio per CPU-second; classic choice for source distributions |
| xz (.tar.xz) | 13.89% | 501 s | 10.6 s | Smallest output; worth it for write-once archival and large kernel/distro images |
Yes. All three are the same payload — a tar stream compressed with bzip2. .tar.bz2 is the canonical multi-dot form; .tbz2, .tb2, and .tz2 are single-token shorthands that exist so the extension survives filesystems and mail filters that choke on compound extensions. You can rename archive.tar.bz2 to archive.tz2 and tar -xjf will still extract it.
Almost always, sometimes dramatically. A .tar of source code or text logs typically shrinks to 15-25% of its original size under bzip2. A .tar of already-compressed content (JPEGs, MP4s, MP3s, pre-zipped data) will barely shrink — often 95-99% of the input — and may even gain a few hundred bytes from bzip2's frame overhead. Bzip2 cannot re-compress what's already entropy-coded.
If file size is the only thing that matters and you're archiving once but reading many times (distro ISOs, kernel sources, scientific datasets), xz wins — 13.9% vs 16.6% ratio on the kernel benchmark. If you compress often and need reasonable decompression speed, bzip2 is still the sweet spot. Bzip2 is also more universally pre-installed than xz on older Unix systems and embedded distros. Use TAR to TAR.XZ when you want the smallest possible output.
Bzip2 decodes in 100-900 kB blocks and runs the Burrows-Wheeler inverse transform, move-to-front, run-length, and Huffman stages in sequence on each block. Gzip's DEFLATE decoder is a single LZ77+Huffman pass that's been hand-tuned for decades and benefits from SIMD-friendly implementations. The roughly 4x decompression gap (23.5 s vs 6.0 s on the 580 MB benchmark) is structural, not a bug.
Yes. The tool reads the original .tar byte-for-byte and re-emits it through bzip2, so every POSIX attribute the tar headers carry — mode bits, uid/gid, mtime, symlinks, hard links, sparse-file markers — is preserved exactly. Nothing in the bzip2 wrapper touches the tar metadata.
Yes. 7-Zip (free, open source) opens .tz2, .tbz2, and .tar.bz2 in two passes — first the bzip2 layer, then the tar layer — and most builds since 2014 do it in a single double-click. WinRAR also handles them. PeaZip, NanaZip, and the Windows 11 built-in archive support (added in 23H2) all open bzip2-wrapped tars natively.
When the input is already an archive (a .tar), the "Combine into Single Archive" merge option is hidden — combining two .tar files into one would require unpacking and re-tarring, which isn't what most users want. Each uploaded .tar is re-compressed into its own .tz2. If you actually need to merge loose files into one archive, start from raw files instead of pre-built .tars.
Decompress only the bzip2 layer with bunzip2 archive.tz2 (or bzip2 -d archive.tz2), which leaves you with archive.tar. If you want a different compression wrapper, you can re-pipe — for example to TAR to TAR.GZ for faster decode, or to TAR to ZIP for Windows-friendly distribution. To unpack the contents directly without an intermediate .tar, use tar -xjf archive.tz2.
Free conversions cap at around 1 GB per file in the browser. Bzip2 itself has no inherent size ceiling — the format streams blocks indefinitely — so the limit is the upload tier, not the algorithm. For multi-gigabyte source trees, splitting the input into a few smaller .tar chunks first usually works better than fighting the browser upload.