Skip to content
ALL DEVELOPER TOOLS56
JSON FormatterTXT → JSONJSON to CSVJSON → CSVCSV to JSONCSV → JSONSQL FormatterSQL → SQLMarkdown to HTMLMD → HTMLHTML to MarkdownHTML → MDXML FormatterXML → XMLBase64 Encode/DecodeTXT → B64URL Encode/DecodeTXT → URLJWT DecoderJWT → JSONHTML Entity Encode/DecodeTXT → HTMLUUID Generator— → UUIDPassword Generator— → TXTHash GeneratorTXT → HASHLorem Ipsum Generator— → TXTQR Code GeneratorTXT → PNGColor Picker & Converter— → HEXCSS Gradient Generator— → CSSBox Shadow Generator— → CSSRegex TesterTXT → MATCHCron Expression GeneratorTXT → CRONTimestamp ConverterNUM → DATEText DiffTXT → DIFFText Case ConverterTXT → TXTWord CounterTXT → STATSSubtitle ConverterSUBS → SRT · VTT · ASSYAML to JSONYAML → JSONJSON to YAMLJSON → YAMLYAML FormatterYAML → YAMLJSON MinifyJSON → JSONSort & Dedupe LinesTXT → TXTLine Ending ConverterTXT → CRLF · LF · CRXLSX to CSVXLSX → CSVCharset ConverterTEXT → UTF-8HAR ViewerHAR → TABLE · HARJWT EncoderJSON → JWTHMAC GeneratorTXT → MACFile ChecksumFILE → VERDICTWi-Fi QR Code Generator— → QRChmod CalculatorOCTAL → RWXHTTP Status CodesCODE → MEANINGByte ConverterSIZE → UNITSTime Zone ConverterTIME → ZONESAspect Ratio CalculatorSIZE → RATIOURL ParserURL → PARTSExtract ArchiveARCHIVE → FILES · ZIPCreate ZIPFILES → ZIPUnzip FilesZIP → FILESDOCX to MarkdownDOCX → MDSVG OptimizerSVG → SVGBarcode Generator— → BARCODEQR Code ReaderIMG → TEXTVCF to CSVVCF → CSVICS to CSVICS → CSVCSV to Markdown TableCSV → MDBcrypt Generator— → HASH
ENGINE JSZIPACCEPTS ANY FILE

Create ZIP

JSZIPTOOL 166 OF 190

Create a ZIP File Online — Free, No Upload

Pack any number of files into one archive in your browser, and see what each one actually weighed inside it.

ENGINEJSZIP
ACCEPTSANY FILE
MAX SIZEMEMORY-BOUND
UPLOADNEVER

Nothing is enforced, but every file is held in memory at once while the finished archive is built whole beside them — zipping 256 MB of already-compressed files was measured at about 1.5 GB of peak memory.

01Drop the files you want in one archive, or click to browse — + ADD MORE FILES under FILES adds to the pile without starting over.
02Pick a COMPRESSION level, choose whether MODIFIED DATES keep each file's own or stamp them all now, and set the ARCHIVE NAME.
03Click Create, read the packed size and the saving it actually measured, then click Download.

About Create ZIP

A ZIP is a container with an index at the end of it, and this page builds one in your browser out of the files you pick. What it will not do is guess at the result. The archive is written, then read back, and the packed size, the container's own overhead and the saving on each file are numbers taken out of the finished bytes rather than predicted from the settings — which matters most when the answer is that nothing was saved at all. Photos, video, audio and anything already compressed have no repetition left for DEFLATE to find, so a ZIP of them comes out the same size or slightly larger, and the page says so rather than showing a hopeful percentage. The limits are stated rather than glossed over. A browser hands a page a flat list of files with no folder paths attached, so folder structure cannot survive, and a folder dragged onto the drop zone arrives as an unreadable stub. Modified dates are kept, to the two seconds a ZIP stores them in. Permissions are not, because the browser never sees them.

Questions

My ZIP came out the same size as the files I put in.

Then those files were already compressed, and that is the expected result rather than a fault. DEFLATE, the compression a ZIP uses, works by finding repetition and replacing it with references — and a JPEG, an MP4, an MP3, a PDF full of images or another ZIP has already had its repetition taken out by its own format. There is nothing left to find, so the packed size matches the original and the container's headers add a little on top. The page reports the real figure either way, including a negative saving. If the batch is all media, choose Store: it copies the files in without spending the time.

Can I zip a whole folder?

Not from a browser, and this page says so rather than half-doing it. A web page is handed a flat list of files with no paths attached — the folder each one came from is simply not part of what the browser passes on. Worse, a folder dragged onto the drop zone arrives as an object that looks like a file and then refuses to be read. Anything this page cannot read back from disk is dropped from the list and named on screen, rather than becoming an empty entry in your archive. Open the folder and select the files inside it, and they will all go in at the top level.

Does the ZIP keep modified dates and permissions?

Dates yes, permissions no. A ZIP stores an MS-DOS timestamp whose seconds field counts in twos, so a file saved at 14:35:23 reads back 14:35:22 — that is the format's resolution and no setting improves it. The timestamp carries no timezone either, so it is written as the clock reading on your machine, which is what Finder, Explorer and unzip all expect to find. The format can only express 1980 to 2107, so anything outside that window is clamped to whichever end it fell past — 1 January 1980 or 31 December 2107 — and counted on screen by direction, because the alternative is a silent wrap that turns a 1970 date into 2098. Permissions are a different matter: a browser hands a page a name, a size, a type and a date, and no mode bits at all, so an executable script comes out of this archive without its executable bit.

Can I put a password on the ZIP?

No, and that is deliberate rather than unfinished. The encryption built into the original ZIP format, usually called ZipCrypto, was broken in 1994 and is recoverable given a small piece of known plaintext from any one file inside the archive, so offering it would be offering something that looks like protection and is not. The stronger AES scheme that modern archivers use is a WinZip extension the library here neither writes nor reads. If you need a protected archive, make it with 7-Zip, Keka or the archiver built into your system and choose AES-256. For sending a file rather than storing one, an encrypted transfer usually beats an encrypted container.

Which compression level should I choose?

Normal, almost always — it is level 6, which is what the zip command and every desktop archiver default to. Measured here over 5.8 MB of source code, Normal brought the data down to 26% of its original size and Maximum reached 25.8%: six tenths of one percent, for about two and a half times the work. Fast ran in roughly half Normal's time for a result about a quarter larger, which earns its place on a very large batch. Store skips compression altogether and copies the files in, which is the honest choice for photos or video, where none of the levels finds anything. Whichever you pick, the page reports what it actually achieved.

Is my file uploaded to a server?

No. Transmute processes everything locally in your browser using JavaScript and WebAssembly. Your files never leave your device — there is no server, no upload, no cloud processing.

Related