LZMA to XZ Converter
FileFlip converts LZMA to XZ entirely inside your browser, using libarchive compiled to WebAssembly. The file is never uploaded to a server: it is read off your disk, converted on your own machine, and saved back by the browser. That means no file-size limit, no queue and no account.
How do I convert an LZMA file to XZ?#
- Drop your LZMA file onto the converter at the top of this page, or click it to pick one from your computer. You can add as many as you like.
- Leave the target set to XZ and the conversion starts on its own. FileFlip downloads 1.0 MB of WebAssembly the first time and nothing after that, then runs libarchive on your own machine.
- Save the XZ file. Your browser writes it straight to your downloads folder, because there was never a server holding it.
Does converting LZMA to XZ lose quality?#
No. Converting LZMA to XZ does not touch the files inside the archive. Each member is read out and written back byte for byte, so only the wrapper around them changes and nothing is recompressed.
Is it safe to convert LZMA files online?#
Yes, because nothing is uploaded. FileFlip converts LZMA files inside the browser tab you already have open, using WebAssembly builds of the same engines a desktop converter would install. Your file is read from your own disk into the page's memory, and no request carrying it is ever made.
You do not have to take that on trust. Open your browser's network panel, run a conversion, and you will see the engine come down and your file go nowhere. There is no upload, no server-side copy, no retention window, and no account tied to what you converted.
How FileFlip works lists every engine, its version and its download size, and shows how to check for yourself that nothing leaves your machine.
What LZMA to XZ actually does to the file#
Converting LZMA to XZ runs on libarchive, downloads 1.0 MB of WebAssembly the first time and nothing after that, copies the archived files through unchanged, keeps file contents.
| Engine | libarchive |
|---|---|
| Conversion path | 2 steps: LZMA → the unpacked files → XZ |
| Downloaded to your browser | 1.0 MB, once, then cached by your browser |
| Quality | Lossless, contents copied unchanged |
| You get back | One file |
| Where it runs | In a background worker, so the page stays responsive |
What survives the conversion
| What is in the file | This conversion | Why |
|---|---|---|
| File contents | Kept | Carried through into the converted file. |
| File timestamps | Sometimes | Survives for some files and not others. |
| File permissions | Sometimes | Survives for some files and not others. |
Worth knowing before you start:
- the output is a PAX tar archive inside the compressor, not a single compressed stream
- every entry is extracted into memory before anything is written, so a very large archive can exhaust it
What is an LZMA file?#
An LZMA file is a single stream of data compressed with the raw LZMA algorithm inside its original, minimal container, the format that came before both the 7z and xz formats now built on the same compressor.
An LZMA file mostly turns up when opening something old rather than something worth creating new; xz supersedes it for anything being compressed today.
Convert an LZMA file to xz when it needs an integrity check or has to be re-shared, since xz is the actively maintained format built on the same compressor.
What is an XZ file?#
An XZ file is a single stream compressed with LZMA2 inside a container that adds framing, size fields and a CRC or SHA-256 integrity check, specified by the Tukaani project's xz format starting in 2009.
Use XZ when the smallest practical archive size matters more than how long compression takes, which is why Linux distributions compress their packages and kernel source with it.
Convert XZ to GZ when the archive needs to decompress on something old or constrained enough that gzip's lighter decoder matters.
LZMA to XZ questions people ask#
What's the difference between LZMA and XZ files?
An LZMA file uses the original .lzma container: just a properties byte and dictionary size in front of the compressed stream, with no integrity check. XZ wraps the same LZMA2 compression in a newer container that adds checksums and multi-stream support, which is why xz replaced .lzma as the default years ago.
How do I open an LZMA file?
7-Zip on Windows and its Linux and macOS port, p7zip, both extract .lzma files directly. On Linux, the xz-utils package also installs an unlzma command specifically for this legacy format.
Is LZMA the same compression as 7z uses?
Yes, the LZMA algorithm inside a standalone .lzma file is the same compressor 7-Zip built its 7z format around, and the two share the same decoder. The difference is the container: .lzma is a minimal raw wrapper, while .7z is a full archive format that can hold multiple compressed files with checksums and encryption.
Why do Linux distributions use .xz for packages?
xz compresses tighter than gzip or bzip2 on most data while still decompressing quickly, which matters because package managers decompress far more often than they compress. That ratio-versus-decompression-speed balance is why Debian, Fedora and the Linux kernel have shipped source and package archives as .xz for years.