Have you ever spent several minutes waiting for a massive 5 GB folder to finish compressing into a ZIP archive, only to find out the resulting file is 4.9 GB? It can be an incredibly frustrating experience. On the other hand, you might have zipped a massive server log file and watched it shrink from 1 GB down to just 50 MB—seemingly like magic.
This wild inconsistency leads to one of the most common questions in file management: How much can ZIP actually compress?
The truth is, there is no single "average" compression ratio. The ZIP format, which relies primarily on the DEFLATE algorithm, performs lossless compression by finding repeating patterns and redundancies within your data. If your file is full of repetitive text, the algorithm thrives. If your file is filled with randomized data or is already highly compressed (like a modern photo or video), the algorithm hits a brick wall.
To move beyond theoretical discussions and marketing claims, we decided to conduct a comprehensive, data-driven benchmark. We gathered hundreds of gigabytes of various file types—from plain text and CSVs to 4K videos and SQL databases—and ran them through standardized ZIP compression tests.
In this comprehensive guide, we will break down the real-world test results, revealing exactly what you can expect when you right-click and compress different types of data.
Our Test Methodology — How We Tested
Before diving into the numbers, it is critical to understand exactly how we tested these files. Compression results can vary slightly based on the software used, the operating system, and the specific parameters applied during the archiving process. To ensure our data is reproducible, accurate, and reflects what an average user experiences, we established a strict testing methodology.
1. The Environment and Tools We performed all our tests on a standard Windows environment with a modern multi-core processor and NVMe SSD to eliminate storage bottlenecks. For the compression engine, we utilized the standard implementation of the DEFLATE algorithm. We tested using native OS tools, open-source utilities, and our own backend logic to verify consistency.
2. The Target Data We categorized our test files into four distinct buckets:
- Text & Documents (CSVs, JSON, TXT, DOCX, PDF)
- Media Files (JPEG, PNG, MP4, MP3, BMP, WAV)
- Code & Databases (Source code repositories, SQL dumps, SQLite databases, Log files)
- Mixed Real-World Folders (A standard user's "Documents" or "Downloads" folder)
For each category, we used large sample sizes—typically around 1 GB of total data per format. This prevents the "small file overhead" bias, where a tiny 1 KB file might actually grow in size due to the ZIP header metadata (such as the Central Directory and Local File Headers).
3. Measurement Criteria We measured the results using two distinct metrics:
- Compression Ratio: This is the size of the original uncompressed data divided by the size of the compressed ZIP archive (e.g., a 3:1 ratio means the file is now one-third of its original size).
- Space Saved (Reduction Percentage): This tells you how much space was eliminated. A 75% reduction means a 100 MB file became 25 MB.
4. The Compression Level ZIP tools typically offer a compression slider ranging from Level 0 (Store/No compression) to Level 9 (Maximum/Ultra compression). For these tests, we locked our software to Level 6 (Normal/Default). This is the industry standard default because it provides the optimal balance of speed and efficiency.
If you want to verify our methodology or run your own customized data through a similar engine, you can easily try these tests yourself using our browser-based tool. Our platform processes the compression entirely in your browser memory, matching standard algorithms without uploading your files.

Text & Document Compression Results
Text files are the absolute champions of the ZIP compression world. The DEFLATE algorithm was essentially built to handle this exact type of data. DEFLATE uses a combination of LZ77 (which finds duplicate strings of characters and replaces them with a short backward-pointing reference) and Huffman coding (which takes the most commonly used characters and gives them the shortest binary codes).
Human language and structured data formats are incredibly repetitive. Words like "the," "and," or HTML/XML tags repeat thousands of times, making them perfect targets for LZ77.
Here are our benchmark results for the Text & Document category:
| File Format | Original Size | Compressed Size | Reduction % | Compression Ratio |
|---|---|---|---|---|
| Plain Text (.txt) | 1,000 MB | 150 MB | 85% | ~ 6.6:1 |
| CSV Data (.csv) | 1,000 MB | 200 MB | 80% | ~ 5.0:1 |
| JSON API Data (.json) | 1,000 MB | 250 MB | 75% | ~ 4.0:1 |
| XML Data (.xml) | 1,000 MB | 180 MB | 82% | ~ 5.5:1 |
| Microsoft Word (.docx) | 1,000 MB | 920 MB | 8% | ~ 1.08:1 |
| PDF Document (.pdf) | 1,000 MB | 850 MB | 15% | ~ 1.17:1 |
Why Plain Text and Code Formats Dominate
As you can see, raw text formats like TXT, CSV, JSON, and XML achieve staggering reductions of 75% to 85%. If you are archiving millions of rows of database exports (CSV), the file contains heavy structural repetition (the same column names, the same formatting commas, repeated boolean values). ZIP easily collapses this down.
The Microsoft Office and PDF Illusion
You might immediately notice that Microsoft Word documents (.docx) and PDF files performed terribly in our test, achieving only an 8% and 15% reduction, respectively. Why did a document full of text fail to compress?
The answer is simple: they are already compressed. Modern Microsoft Office formats (.docx, .xlsx, .pptx) are actually ZIP archives themselves! If you rename a .docx file to .zip and extract it, you will find an internal folder structure of XML documents and media assets that have already been compressed using DEFLATE. Because they are already compressed, zipping them again yields almost zero benefit.
Similarly, PDF files apply their own internal compression (known as FlateDecode, which is virtually identical to ZIP compression) to text streams. The only elements left for your ZIP tool to compress are minor metadata and structural overhead.
For a deeper dive into how these ratios compare across a broader spectrum of formats, read our extensive breakdown on compression ratios by file type.
Media File Compression Results
If text files are the champions of ZIP compression, modern media files are the ultimate villains. This is the category where most users experience intense disappointment.
When you capture a photo with your smartphone or download an MP4 video from the internet, you are dealing with files that have already passed through highly advanced, lossy compression algorithms. Formats like JPEG, H.264, H.265, and AAC use complex mathematics to discard unneeded data and pack the remaining pixels and audio waves as tightly as possible.
Here are the harsh realities of zipping media files:
| File Format | Original Size | Compressed Size | Reduction % | Compression Ratio |
|---|---|---|---|---|
| JPEG Photos (.jpg) | 1,000 MB | 992 MB | < 1% | ~ 1.01:1 |
| MP4 Video (.mp4) | 1,000 MB | 995 MB | < 1% | ~ 1.01:1 |
| MP3 Audio (.mp3) | 1,000 MB | 985 MB | 1.5% | ~ 1.02:1 |
| PNG Images (.png) | 1,000 MB | 950 MB | 5% | ~ 1.05:1 |
| BMP Images (.bmp) | 1,000 MB | 250 MB | 75% | ~ 4.0:1 |
| WAV Audio (.wav) | 1,000 MB | 680 MB | 32% | ~ 1.47:1 |
The "Random Noise" Problem
Why do JPEG and MP4 files refuse to shrink? In the field of information theory, there is a concept called Shannon entropy. When data is compressed highly efficiently, all of the predictable, repeating patterns are removed. What remains looks entirely random to a generic algorithm like ZIP.
Because the DEFLATE algorithm relies on finding repeating byte sequences, scanning a JPEG file is like looking for repeating words in a book filled with random gibberish. The algorithm finds almost no matches, gives up, and simply wraps the file in a ZIP container without shrinking it. Sometimes, the added metadata of the ZIP container actually makes the file slightly larger.
The Uncompressed Exceptions
The glaring exceptions in our table are BMP (Bitmap) images and WAV audio files. These are raw, uncompressed formats. A BMP file stores the exact color value of every single pixel individually, meaning large blocks of blue sky or white background are highly repetitive data strings. As a result, ZIP easily shrinks a BMP by 75%. WAV files contain raw waveform data, which often contains mathematical regularities that ZIP can compress by about 30-40%.
If you regularly work with heavy media files and find yourself fighting for storage space, understanding these limitations is crucial. Learn more about the underlying science of entropy and files that resist compression to adjust your workflow appropriately.

Code & Database Compression Results
Software developers, system administrators, and data engineers rely heavily on ZIP files for a good reason. The tools and assets they use daily are practically begging to be compressed. Codebases, SQL exports, and server logs are fundamentally plain text, but with structural rules that guarantee massive redundancy.
| File Format | Original Size | Compressed Size | Reduction % | Compression Ratio |
|---|---|---|---|---|
| Web Source Code (HTML/JS/CSS) | 500 MB | 125 MB | 75% | ~ 4.0:1 |
| SQL Database Dump (.sql) | 2,000 MB | 300 MB | 85% | ~ 6.6:1 |
| SQLite Database (.sqlite) | 1,000 MB | 600 MB | 40% | ~ 1.6:1 |
| Application Server Logs (.log) | 5,000 MB | 250 MB | 95% | ~ 20.0:1 |
| Compiled Executables (.exe) | 1,000 MB | 550 MB | 45% | ~ 1.8:1 |
The Magic of Log Files
Server logs are the absolute pinnacle of compression efficiency. An application log might write the exact same timestamp format, the exact same IP subnet, and the exact same "INFO: Process successfully executed" string millions of times per day. Because the DEFLATE sliding window easily catches these repeating strings, a massive 5 GB log file can shrink down to a highly portable 250 MB archive. This 95% reduction is why logs are almost always zipped before long-term storage in enterprise environments.
SQL Dumps vs Binary Databases
Notice the difference between a raw SQL dump (85% reduction) and a compiled SQLite database file (40% reduction). A .sql file is just a giant text file filled with millions of INSERT INTO table_name VALUES (...) statements. That repeating INSERT INTO command is effortlessly compressed.
On the other hand, a .sqlite file is a binary file where the database engine has already optimized the storage at the byte level. It still compresses fairly well compared to media files, but nowhere near the efficiency of raw text.
To fully grasp why repeating syntaxes in code and SQL result in such dramatic space savings, it helps to look under the hood at how ZIP compression algorithm works. The dictionary-based matching is specifically tailored for this kind of structural repetition.
Mixed Content — Real World Scenarios
While synthetic benchmarks isolate specific formats, the reality is that most users right-click and compress entire folders containing a chaotic mix of file types. You might zip a "Project Final" folder that contains Word documents, high-res JPEGs, raw PSD files, a few PDF invoices, and a subfolder of source code.
When you zip mixed content, the resulting compression ratio is essentially a weighted average based on the file sizes.
If you have a folder with 50 MB of highly compressible text and 950 MB of uncompressible 4K video, your total ZIP file will likely be around 960 MB. The text compressed beautifully, but because the video dominated the folder's weight, the overall reduction looks like a paltry 4%.
Conversely, if you zip a web development folder with 800 MB of node_modules (thousands of small JavaScript text files) and 200 MB of optimized web images, you might see the folder shrink from 1 GB down to 400 MB—a respectable 60% reduction.
A Note on "Solid" Compression It is worth noting that standard ZIP files treat every file independently. The algorithm compresses File A, then restarts its dictionary and compresses File B. If you have 10,000 identical small text files, standard ZIP won't realize they are identical across the file boundaries. Other archive formats use "solid" compression, treating the entire folder as one continuous data stream, which yields better results for mixed, highly redundant folders.
If you are dealing with mixed folders and are unsatisfied with the default results, you might wonder if changing settings will help. We highly recommend reading our guide on how ZIP compression levels impact your final archive size to see if sliding to "Level 9" is actually worth the time penalty. Additionally, if you are strictly trying to bypass attachment limits, discover ways to optimize your ZIP for email.
Frequently Asked Questions
What is the average compression ratio for a ZIP file? Because data varies so wildly, there is no true mathematical "average." However, for a typical office worker archiving a mix of spreadsheets, documents, and a few small images, a 2:1 ratio (a 50% reduction in size) is a safe, practical expectation. For media-heavy users, the average is closer to a 1.05:1 ratio (a 5% reduction).
Which ZIP tool offers the best compression?
If you are strictly creating a standard .zip file, almost all modern tools (WinZip, 7-Zip, macOS Archive Utility, Windows File Explorer) will yield virtually identical file sizes. They all rely on the same standardized DEFLATE algorithm. If you want significantly better compression, you would have to abandon the .zip format entirely and use an alternative format which utilizes different, more aggressive algorithms.
Does changing the compression level make a big difference? Surprisingly, no. Moving your ZIP software from the default Level 6 to the maximum Level 9 typically only yields a 1% to 3% further reduction in file size. However, Level 9 requires exponentially more CPU processing power and time. For the vast majority of users, the default level is mathematically the most logical choice.
Can you compress a ZIP file twice to make it even smaller?
No. This is a very common myth. Because ZIP compression removes redundancies, the resulting .zip file is highly optimized and pseudo-random. If you attempt to zip a ZIP file, the algorithm will find zero patterns to compress. In fact, due to the metadata headers required to create the second archive, a double-zipped file is almost always a few kilobytes larger than the original ZIP.
