I have a few high res TIFF files I'd like to reduce in size as they are currently around 20 MB, but need to get them down to no more than 10 MB so I can upload them to a website. Is there a way I can do this without converting them into JPEG files to avoid losing too much quality?

The dimensions of the pictures I'm looking at are around 3540 by 2720 pixels. DPI is 300.

Thanks :)

  • 1
    PNG will get you some improvement. I recompressed a few high-quality photographs with those dimensions to PNG and got 12-14MB. But high-quality JPEG (like ImageMagick's "convert in.tif -quality 92 out.jpg") gets them down to 3.5-5MB with no visible difference. Even -quality 75 looks pretty good and is much smaller. If your images aren't photos PNG might work better. Dec 24, 2015 at 4:34
  • WebP can really compress without losing as much quality as JPEG. But it depends on what exactly the end use is for the file, if that file type is accepted. Mar 12 at 20:14

3 Answers 3


I would resave the TIFF file with LZW compression turned on. That should get the size down considerably.


If you are using Photoshop, you would simply "Save As", choose .TIF as your format and location.

After that you should get a dialog box (see below) with compression options.

how to save a tif file with compression

  • how would I do that?
    – Tim
    Dec 24, 2015 at 2:27
  • @go-junta - Thank you for the edit. Should've done it from the get-go. Apparently, I need some sleep. ;)
    – ErickP
    Dec 24, 2015 at 3:15
  • Sometimes, you can get TIFs that have layers. Either flatten layers before exporting, or uncheck "export layers" when saving TIFs in Photoshop. May 16, 2017 at 9:07

If you have uncompressed TIFFs and work on a Mac, you can batch compress them in Terminal with tiffcp -c lzw "INPUT_FILE" "OUTPUT_FILE"

I just did this, to compress a big folder of tiffs, with additional commands to preserve the original modification time on the files:

for f in *.tif *.tiff; do out="$f.lzw.tiff"; if tiffcp -c lzw "$f" "$out"; then touch -r "$f" "$out" && mv "$out" "$f"; else echo "ERROR with $f"; fi; done

Or a more readable multi-line version:

for f in *.tif *.tiff; do \
  out="$f.lzw.tiff"; \
  if tiffcp -c lzw "$f" "$out"; then \
    touch -r "$f" "$out" && mv "$out" "$f"; \
  else \
    echo "ERROR with $f"; \
  fi; \

(tiffcp comes with the libtiff homebrew package. So you need to have homebrew installed, but if you are lazy enough you probably already have it)


I would recommend you to use the bulk tiff image compression online tool developed by IMGCentury. I personally tested upto 500MB sized single tiff image which is compressed without any issue. But the compression took almost 2 minutes and ready to download. No images have been upload to the server for the compression. Find more information here: https://imgcentury.com/image-compressor/compress-tiff/

  • 1
    This is a bit suspicious. If the tool is developed by you it's ok as long as you say it. Is it?
    – Rafael
    Mar 12 at 18:38
  • Actually, this tool is made by myself only and yeah it is completely safe, kindly visit the below reddit page to know about the safety and security of the tool and essential features of the IMGCentury.com image compression tool. I made this tool with 2 years of hard work! reddit.com/r/web_design/comments/1bdfwvh/…
    – Arjun Das
    Mar 13 at 3:06
  • 1
    Please, add a small disclaimer in the body of the text.
    – Rafael
    Mar 13 at 15:52

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.