How to Convert TGZ to TAR Online
- Upload Your TGZ File: Drag and drop or click "+ Add Files" to load
.tgz(or.tar.gz) archives from your device. Batch upload is supported — drop a folder of build artefacts, kernel source tarballs, or backup snapshots and process them in a single pass. - Confirm Output is TAR: TAR is preset as the target. The converter strips only the outer gzip layer, leaving the underlying uncompressed POSIX tar archive intact — file modes, ownership, timestamps, and directory layout are preserved bit-for-bit.
- Pick Combine Mode (Optional): Use Individual Archives (default for archive-to-archive jobs) to get one
.tarout per.tgzin. Switch to Single Archive if you want every uploaded tarball decompressed and merged into one consolidated tar — useful when you're stitching together split-volume releases. - Convert and Download: Click "Convert" and download each
.tarfile. The output is exactly the tarball thatgunzip yourfile.tgzwould produce on Linux — same bytes, same checksum. No sign-up, no watermark, no email gating.
Why Convert TGZ to TAR?
.tgz and .tar.gz are the same thing: a POSIX tar archive that has been run through gzip. Converting to plain .tar simply strips the outer gzip layer, leaving the uncompressed concatenated tarball behind. The contents don't change — only the compression envelope does. Reasons people do this:
- Recompress with a stronger algorithm — Stripping gzip lets you re-wrap the tar with xz (
.tar.xz) or zstd, which typically beat gzip by 15–30% on source code and text. A 500 MB.tgzof Linux kernel source often shrinks to ~310 MB as.tar.xz. - Stream the tarball into tooling that won't accept gzip wrappers — Docker
ADDaccepts both, but some build systems, embedded installers, and old shell scripts expect a raw.tarthey cantar xfwithout the-zflag. - Inspect or modify the archive without decompress/recompress cycles — Once it's plain
.tar, tools liketar --append,tar --delete, andtar --concatenatework in-place; gzip-wrapped tars must be fully extracted and re-tarred to edit. - Faster reads on already-compressed payloads — If your tarball contains files that don't compress (JPEGs, MP4s, already-zipped releases), the gzip layer wastes CPU on every read. Stripping it speeds up extraction on slow CPUs or embedded devices.
- Prepare for solid-archive compressors — 7-Zip and zstd with
--longproduce dramatically smaller output when fed a single large.tarthan when given many small files, because they can find redundancy across file boundaries. - Diff or checksum the raw archive — Two
.tgzfiles with identical contents can have different gzip headers (timestamp, OS byte) and won'tsha256summatch. The underlying.tarpayload is deterministic across runs.
For other archive flows, see TGZ to ZIP, TAR to TGZ for the reverse, or Extract TGZ if you just want the files inside, not the tar.
TGZ vs TAR — What Actually Changes
| Property | TGZ (.tgz / .tar.gz) |
TAR (.tar) |
|---|---|---|
| Container format | tar (POSIX ustar / pax) inside gzip (RFC 1952) | tar (POSIX ustar / pax) |
| Compression | DEFLATE (gzip) | None — concatenated files with 512-byte block headers |
| Typical size | ~30–60% of raw for text/source; ~95–100% for already-compressed media | 1× — sum of file sizes rounded up to 512-byte blocks plus 1 KB end marker |
| Random access | No — must decompress sequentially | Yes — block-aligned headers allow seeking |
Streaming append (tar --append) |
Not supported | Supported on uncompressed tars |
| Checksum determinism | Varies — gzip header stores timestamp and OS byte | Deterministic for identical inputs (modulo mtime in tar headers) |
| Native CLI extraction | tar -xzf file.tgz or gunzip file.tgz |
tar -xf file.tar |
| Windows handling | Built-in tar since Windows 10 1803; also 7-Zip, PeaZip |
Same — tar -xf works since 1803 |
| File-size overhead vs raw payload | Compressed (smaller) | +512 B header per file, +1024 B trailer |
Compression-Layer Quick Guide
Converting TGZ to TAR removes one layer; you may want to add a different one. Numbers below are typical for a 100 MB tarball of mixed source code (Linux kernel, a Node.js project, etc.):
| Output format | Algorithm | Typical size | Decompress speed | When to choose |
|---|---|---|---|---|
.tar |
None | 100 MB (reference) | Fastest — no decode | In-place edits, diffs, deterministic checksums, feeding solid archivers |
.tar.gz / .tgz |
DEFLATE (gzip) | ~35 MB | Very fast | Universal compatibility; default on Linux distros and source tarballs |
.tar.bz2 |
Burrows–Wheeler (bzip2) | ~28 MB | Slow (~3× slower than gzip) | Legacy releases; rarely the best pick today |
.tar.xz |
LZMA2 (xz) | ~22 MB | Moderate | Modern Linux distros (Arch, Debian since 2019) — best size/decode tradeoff |
.tar.zst |
Zstandard | ~26 MB at -19, ~32 MB at -3 |
3–5× faster than xz | New default for Arch packages since 2020; Facebook/Meta-developed |
.zip |
DEFLATE per file (no solid) | ~38 MB | Fast, random-access | Cross-platform sharing with Windows recipients |
Frequently Asked Questions
Is .tgz really the same as .tar.gz?
Yes — byte-for-byte. The .tgz extension is just a single-extension alias for .tar.gz, introduced so the name fits the MS-DOS 8.3 filename limit (name.tgz = 8 + 3 characters). gunzip and modern tar both treat them identically; the GNU gzip manual explicitly lists .tgz and .taz as shorthand for .tar.gz and .tar.Z. A file renamed from archive.tar.gz to archive.tgz has the same SHA-256.
Why would I want an uncompressed .tar — isn't it just bigger?
Yes, the file is larger, but several workflows need it: re-wrapping with a stronger compressor (xz, zstd) for smaller final output; appending files with tar --append (which doesn't work on compressed tars); random-access reads where you seek to a specific file's offset without decompressing the whole stream; and deterministic checksums (gzip headers embed a timestamp and OS byte that change between runs even for identical inputs).
Does the conversion change file permissions, timestamps, or ownership?
No. The conversion only removes the outer gzip wrapper. Every tar header inside — mode, uid/gid, mtime, linkname, typeflag, extended pax attributes — is passed through untouched. The output .tar extracts identically to the input .tgz, file modes and timestamps included (subject to your local filesystem's ability to honour them, e.g., NTFS won't preserve Unix uid/gid).
Can I just rename .tgz to .tar without converting?
No — that breaks the file. A .tgz is gzipped binary data and starts with the magic bytes 1F 8B; a real .tar starts with a 512-byte header containing the first entry's filename in ASCII. Tools that detect by content (file, tar with auto-detection) will spot the lie; tools that trust the extension will throw a parsing error. Either run an actual conversion or use tar -xzf to extract the contents.
How much bigger is the .tar than the .tgz?
Depends entirely on what's inside. Source code, JSON, logs, and plain text typically compress 2.5–5×, so the .tar is 2.5–5× the .tgz. Already-compressed contents (JPEG, MP4, PNG with full alpha, pre-zipped releases) compress poorly with gzip — often only 1–5% reduction — so the .tar is barely larger. A .tgz of node_modules (lots of duplicated JS) often expands 4–6× when you strip gzip.
Will the converted .tar open on Windows?
Yes. Windows 10 build 17063 (1803, April 2018) and later ship with a native tar.exe that handles .tar, .tar.gz, and .zip from the command line. 7-Zip, WinRAR, and PeaZip have supported .tar for two decades. macOS and every Linux distribution include tar by default.
What if my .tgz is actually .tar.gz with a different extension — will the tool still work?
Yes. The converter sniffs the file content (gzip magic bytes 1F 8B 08), not the extension. Upload a file named release.tar.gz, backup.tgz, dump.gz, or even unknown.bin — if the bytes are valid gzip-wrapped tar, you get a .tar out. If the gzip layer is missing (the file is already plain tar), use the file as-is; no conversion needed.
Can I convert a .tgz larger than a few GB?
Yes, on our servers's memory and the platform's per-file limit. Large kernel snapshots and Docker image exports in the multi-GB range are the typical big jobs. If your .tgz is so large that decompression to plain .tar would balloon past available RAM (rare but possible for 50 GB+ archives), use the Linux command line directly: gunzip --keep huge.tgz produces huge.tar and huge.tgz side by side, streaming the data without loading it all into memory.
How is this different from extracting the .tgz?
Converting to .tar gives you one file — the uncompressed tarball — that still bundles every entry inside it. Extracting gives you the individual files and directories on disk. Pick conversion when you want to re-archive, recompress, or stream the tarball into another tool. Pick extraction when you want the actual files to read or run.