Free batch compression · no uploads

Compress Images Online
for Free

Reduce image file size for websites, email and upload forms. Compress JPG, PNG, WebP or HEIC images in batches, with a quality setting or target size in KB.

🗜️
⚡ Resize + compress, entirely in your browser
Drop your images here
or click to browse · batch supported · whole folders on desktop
JPG PNG WebP GIF BMP HEIC AVIF TIFF
Browse images
Quality 75
Output
Resize
0
images
—
original size
—
compressed size
—
total saved
⬇ Download all
✏️ Rename from:
Number → 0 renames as 0.jpg, 1.jpg, 2.jpg…  ·  Text → photo renames as photo 1.jpg, photo 2.jpg…
📐 Widths:

Convertlo is a free browser-based image compressor for JPG, PNG, WebP and other supported image inputs. Images are processed on your device, with quality controls, optional maximum-size targets, before/after comparison and batch ZIP downloads. Colour-protected inputs may be kept original when safe compression is unavailable.

Does it upload my images?
No. Image processing happens in your browser. The compression code does not send image files to a conversion server. Page resources and optional encoder libraries can still require a network connection.
Is there a file size or monthly limit?
No account or monthly processing quota is imposed. Practical limits still apply: browser memory, image dimensions, supported formats and intake safety checks can prevent a large or unsupported file from processing.
Can I compress to an exact file size?
No. Target KB is a maximum-size goal, not an exact byte count. It may reduce quality and dimensions. Unreachable targets are reported; colour-protected inputs can stay original with a note that the target was not applied.
Will it keep transparency?
Yes, PNG and WebP can preserve transparency. Choosing JPG can flatten transparent areas because JPEG has no alpha channel. Protected inputs can stay in their original format instead of being converted.
How much smaller will my images get?
It depends on the source, format and settings. Already-optimized or colour-protected images may stay unchanged. Compare the actual input and output byte sizes rather than expecting a fixed percentage reduction.
Does it work on an iPhone photo?
Yes. HEIC and HEIF are accepted. Some can be decoded and compressed to another format; colour-managed inputs stay original when the available encoder cannot safely preserve their appearance.
What does it not do?
It does not read camera RAW, PSD or SVG. Normal animated GIF output is not supported. Colour protection can prevent resizing, conversion or a requested size reduction. It does not open afresh without a connection, and it has no OptiPNG or JPEG-XL encoder.
How it works
01
Drop your images
Add JPG, PNG, WebP, GIF, BMP, TIFF or HEIC files in any number. iPhone photos work directly — no conversion step.
02
Multi-pass smart compression
Set a target KB and the engine bisects quality and dimensions until it hits it. Resizing uses the browser’s own high-quality downscale, applied before the image is encoded.
03
Compare & download
Hover any card to see a live before/after comparison. Download individually or grab everything as a ZIP.
What makes our compression smart
🎯
Target size, by bisection
Name a size in KB and the engine bisects one continuous dial — quality first, then dimensions — until it fits. An unreachable size is refused in one pass, reporting the real floor.
🔬
Resize before compressing
Most images are far larger than they are displayed. Set a width, a height or a preset and the resize happens before the encoder runs, so you save the pixels and the bytes.
📷
HEIC / iPhone photo support
Compress photos straight from your iPhone — HEIC files are decoded client-side via heic2any before compression. No conversion step needed.
🔒
100% browser-based · hover to compare
Nothing is uploaded anywhere. After compression, press ⚖ Compare on any card for a full-size before and after. All files stay on your device.

Convertlo vs TinyPNG — Side-by-Side Comparison

TinyPNG uploads your images to its servers and limits free users to 5 MB per file. Convertlo compresses everything inside your browser — nothing is uploaded by the compressor, with no monthly account quota. Device and format limits still apply.

Limits checked 2 November 2026. We are not the only browser-based compressor: Squoosh is Google’s, is also client-side, and gives you MozJPEG, OptiPNG and JPEG‑XL encoders this page does not have — one image at a time, with no HEIC input and no target-size mode. The comparison below distinguishes local file processing, documented free web limits and workflow controls. Source: TinyPNG's published features and FAQ. Limits and supported formats can change:

Feature Convertlo ✓ TinyPNG
File upload required No — 100% browser-based Yes — uploaded to servers
Max file size (free) No account quota; browser limits apply 5 MB per image
Images per batch (free) No account quota; browser limits apply 20 per batch on the web tool; API limits are separate
Formats supported JPG, PNG, WebP, GIF, BMP, HEIC, AVIF, TIFF JXL, AVIF, WebP, JPG, PNG and APNG; HEIC is converted to JPG
HEIC / iPhone photos Accepted; protected inputs may stay original Accepted; converted to JPG
Before/after preview Yes — full-size wipe, difference and zoom No
Target KB mode Yes — quality/dimension search No
Batch ZIP download Yes — unlimited batch Yes (limited count)
Offline use Once the page has loaded, compressing needs no network No
Privacy Files never leave your device Uploaded and processed remotely
Account required No No (free web use)
Price Free; browser limits apply Free tier + paid Pro plan
🔒
No Upload Required

TinyPNG's model sends every image to its servers. Convertlo does the whole job in your browser tab. Contracts, medical images, personal photos: nothing leaves your device.

📏
No 5 MB Cap

TinyPNG's free tier limits each image to 5 MB. DSLR photos, high-DPI screenshots, and RAW exports routinely exceed that. Convertlo has no subscription quota, but very large files can reach browser-memory, format or intake safety limits.

📷
HEIC from iPhone

Convertlo accepts HEIC input and uses local decoding when safe. Colour-managed inputs may stay original to avoid a colour shift. TinyPNG also accepts HEIC and documents conversion to JPG.

🎯
Target KB Mode

TinyPNG compresses at a fixed quality with no control over output size. Convertlo's Target KB mode bisects quality and then dimensions until the file is at or under the size you name — essential for email limits, social media caps, and CMS upload requirements.

What this compressor can and cannot do

Every row is a statement of fact about the tool on this page, not about image compression in general. The No rows are here on purpose — a compressor that is vague about its limits is how you end up with a file you cannot use.

CapabilitySupportedDetail
Reads JPG / JPEGYesRe-encoded through the canvas with a multi-pass quality search.
Reads PNGYesRe-encoded losslessly with UPNG, or palette-quantised on request.
Reads WebPYesBoth lossy and lossless WebP sources.
Reads GIF and BMPYesOutput is a still image; an animated GIF keeps only its first frame. No browser can write either format from a canvas, so under Same a GIF or BMP comes back as PNG or JPG — both are tried and the smaller one wins, and the card says which.
Reads iPhone HEIC / HEIFYesDecoded with heic2any, loaded only when a HEIC is actually added.
Reads AVIFYesDecoding is separate from encoding; see the AVIF output row.
Reads TIFFYesDecoded with UTIF, loaded only when a TIFF is actually added. Uncompressed, LZW, PackBits, Deflate, CCITT G4 fax, CMYK, 16-bit, tiled and big-endian files all read exactly; a multi-page TIFF keeps its first page and the card says so. A JPEG-compressed TIFF is refused — the decoder reads those wrongly rather than failing, so handing one back would mean handing back a corrupted image.
Reads RAW, PSD or SVGNoUse RAW to JPG first, or Vectorize for SVG work.
Writes JPG, PNG or WebPYesThe Output chips; Same keeps each image in its own format. Safari has never written WebP from a canvas, so there a 275 KB encoder is fetched once and you still get a real WebP rather than a PNG wearing the extension.
Writes AVIFYesOn every browser. Chrome writes it directly; Safari and Firefox cannot, so a 3.4 MB encoder is downloaded once — the chip says so before you pick it. Smallest files of the four, and the slowest to make.
Exact target file sizeYesThe sizes offered are chosen after you add an image, so none is ever larger than the file itself; any size can be typed instead. Found by bisection, and an unreachable size reports the smallest the image can actually reach.
Resize while compressingYesA preset long edge, or an exact width and height with an optional aspect lock. In a mixed batch every image is measured against its own dimensions, each keeping its own aspect ratio, and anything already smaller is left alone — nothing is ever enlarged.
Batch, many images at onceYesNo cap on the number of files. TinyPNG’s web tool stops at 20.
Download everything as a ZIPYesBuilt in the browser with fflate; stored, not re-compressed, since the images already are.
Rename the batchYesNumeric (0, 1, 2…) or a prefix with a counter. The extension follows the format that was produced.
Checks every file is really an image before opening itYesThe first bytes must be a real JPEG, PNG, GIF, WebP, BMP, TIFF, AVIF or HEIC signature — a file’s name alone proves nothing. Anything else, SVG included, is refused and named, and a file whose header claims more pixels than any browser can open is refused before it is decoded.
Adds a whole folder, subfolders includedYesOn desktop: drop a folder, or press Choose a folder. Every image at any depth is added and the ZIP comes back with the same folders. Hidden and system files are skipped, and you are asked before more than 300 images are added. The folder is read by your browser — nothing is uploaded.
Makes responsive image sizes with the srcset codeYesResponsive sizes, beside Download all: 480, 800, 1200, 1600 or 2000 px wide, each encoded from the original, in one ZIP with a srcset.html holding the code for every image, including its real width and height. Nothing is enlarged — an image narrower than the widest size keeps its own width as the top size.
Shows what each file really is, before and afterYesIn the Compare window: format, dimensions, size, colour, colour profile, transparency, EXIF (and whether it holds a GPS location) and DPI, read from each file’s own bytes. A file with no resolution says “Not set” rather than a made-up 72, and transparency is counted pixel by pixel rather than assumed from the format.
Full-size before / after comparisonYesWipe, side by side, overlay, difference and toggle, with zoom to 8× — on mouse and on touch.
Compress further after seeing the resultYesCompress more steps one level at a time and escalates the format when the current one is exhausted.
Keeps transparencyYesPNG and WebP keep their alpha channel. Transparency is dropped only if you pick the JPG chip yourself.
Still works when the browser cannot draw the imageYesA blank or half-drawn canvas is a real failure on some Android and iOS builds, and every other route here ends at the same canvas. When it fails, the image is decoded, resized and re-encoded over a byte array instead — JPG and PNG through vendored codecs, WebP and AVIF through their own, and the card says which route produced the file.
Never returns a file bigger than the originalYesWhen nothing beats the input the input is handed back and the card says “no change”. Forcing a resize, a target size or a format is an exception, because there you asked for something other than a smaller file.
Strips EXIF, GPS and camera metadataYesA canvas re-encode carries no metadata forward. Use Metadata Remover if you want to strip it without re-encoding.
Keeps EXIF when you want it keptYesThe Metadata control, JPEG to JPEG. Stripping stays the default because EXIF carries GPS. Orientation is reset to 1, since the pixels have already been turned upright — copying it unchanged would rotate the photo a second time.
Protects embedded colour profilesYesColour-managed PNGs are recompressed without changing pixels or colour metadata. Profiled JPEG, WebP and other protected inputs stay original when a safe re-encode is unavailable. Target size, resizing and conversion are not applied to protected inputs; the result says so. Metadata is kept on this path.
Animated GIF or animated WebP outputNoOnly the first frame survives. Use Video Compressor for motion.
MozJPEG encoderYesOpt-in, JPEG output only, not with a target size. Measured at 37–75% of the browser encoder's size for the same visual error, depending entirely on the picture — and 29–34× slower, so it is a choice rather than the default.
Shows which output format is smallest for your imageYesMeasured, not guessed from what the picture looks like: the panel under the settings encodes your image through the same engine that writes the download and names whichever really came out smallest. AVIF is only measured when you ask for it, because its encoder is 3.4 MB against WebP’s 275 KB.
Tells you which format will look bestNoNobody can say that from file sizes, and we will not pretend to. At quality 75 the error against the original ran from 1.02 on a screenshot to 12.62 on a noisy photo, so one verdict would be false for one of them. You get the real sizes and the full-size comparison; the judgement stays yours.
OptiPNG or JPEG‑XL encodersNoStill not here. Squoosh has both and is also no‑upload; it takes one image at a time.
Account, sign-up or watermarkNoNone of the three, and no monthly quota.
Offline useNoThe page has to load once, with a connection. After that, compressing needs no network at all — but nothing here is cached for a later visit, so opening it fresh with no connection will fail.
Command line or APINoThis is a page, not a service. For automation, squoosh-cli or sharp are the tools.

Why Compress Your Images?

Oversized images are one of the commonest reasons a page loads slowly or an email attachment bounces. Here's exactly when compression pays off:

  • 🚀 Faster page loads — images are often the heaviest files on a page, and the largest one is usually what Largest Contentful Paint (LCP) measures. A smaller image downloads sooner — though compression shortens only the download, not the wait before it starts.
  • 📧 Email attachments — Gmail, Outlook, and most mail servers cap attachments at 10–25 MB. A batch of phone photos can easily hit that limit. Compressing first eliminates bounced emails.
  • 📱 Social media uploads — Instagram, Facebook, and Twitter re-compress images on upload anyway. Pre-compressing on your terms preserves your intended quality better than letting their algorithm decide.
  • 💾 Storage savings — a folder of raw iPhone photos can shrink from gigabytes to hundreds of megabytes in a single batch, freeing cloud storage and backup space.
  • 🛒 E-commerce product pages — a gallery of product photos is often the heaviest part of the page, and on a phone it is what shoppers wait for.
  • 📊 Page speed and Core Web Vitals — PageSpeed Insights points out images that are larger than they need to be. Google uses Core Web Vitals in its ranking systems but says good scores do not guarantee rankings; what optimized images reliably improve is loading and the experience of your visitors. What actually makes images faster.

What Is Image Compression?

Image compression is the process of reducing an image's file size by removing or approximating visual data that human vision is unlikely to notice. It comes in two types: lossy and lossless.

Lossy compression (JPEG, WebP) permanently discards subtle color gradients, high-frequency texture detail, and imperceptible tonal variations — achieving 40–80% file size reductions with no visible quality difference at settings above 65%. Lossless compression (PNG, lossless WebP) removes only redundant data without changing any pixel values — achieving 10–30% reductions while preserving every pixel exactly.

How much can you reduce file size?

Typically 40–80% for photographs using lossy compression at quality 75. A 3 MB iPhone photo compresses to 400–700 KB. Combining compression with WebP conversion adds another 25–35% — a 3 MB original JPEG can reach 380–450 KB after both steps, an 85–87% total reduction from the original file.

Does compression reduce image quality?

At quality 75 (the default), the difference is invisible under normal viewing conditions. Lossy compression discards data the eye cannot detect — not obvious detail. Visible artifacts only appear below quality 60–65. PNG compression is entirely lossless: compressing a PNG strips metadata without changing any pixel values whatsoever.

What format gives the smallest file size?

WebP is the best format for web images in 2026 — 25–35% smaller than JPEG and ~25% smaller than PNG (lossless mode) at equivalent quality, with 97%+ browser support. AVIF compresses 30–50% better than JPEG but encodes significantly slower. JPEG remains the safest choice for email and legacy software.

Does compressing an image change its dimensions?

No. Compression only affects file size, not pixel dimensions. A 4000×3000 photo compressed at quality 75 is still 4000×3000 pixels — the same number of pixels, just a smaller file. Resizing (reducing dimensions) is a separate step that requires a different tool or the Max Size option in the settings panel.

Image Compression Quick Reference
Question Answer
What is image compression?Reducing file size by removing imperceptible visual data — lossy (40–80% reduction) or lossless (10–30%).
How much can you compress an image?40–80% for photos; 10–30% for PNG (lossless); 80–87% combined with WebP conversion
Lossy vs lossless?Lossy (JPEG/WebP): permanently removes imperceptible data, 40–80% smaller. Lossless (PNG): removes only redundant data, pixel-perfect, 10–30% smaller.
Does compression reduce quality?No visible loss at quality 65–85. Artifacts only appear below 60–65. PNG compression is always lossless.
Best format for small size?WebP — 25–35% smaller than JPEG, ~25% smaller than PNG (lossless), 97%+ browser support in 2026.
What is Target KB mode?Compress to an exact file size limit. The engine bisects quality and then dimensions — up to 12 encodes — and the result is at or under the size you named.
Does it change image dimensions?No — compression only reduces file size. Pixel dimensions stay identical. Resize separately if needed.
Best quality for web images?75–80% for most photos; 80–85% for product images; 65–72% for thumbnails; do not compress print files.

Features

🎯

Target KB Mode

Specify an exact ceiling — 500 KB, 200 KB, 100 KB. The engine bisects quality and then dimensions until the file fits — up to 12 encodes — and says so if a size cannot be reached.

📦

Batch + ZIP

Drop an entire folder at once. Compress in parallel and download everything as a single ZIP — no file count limit.

👁️

Before/After Preview

Hover any result card to see a live side-by-side comparison. Decide whether to keep the result or go tighter before downloading.

📷

HEIC from iPhone

Drop iPhone HEIC photos directly — decoded in the browser, no manual conversion step. Output to JPG or WebP.

🎨

Format Output Control

Choose JPG, PNG, WebP, or AVIF as output — compress and convert in a single step without switching tools.

🔁

Compress More

Result still too large? Hit Compress More for a second or third pass at progressively deeper quality — no re-upload needed.

Why Convertlo

Everything free. Nothing uploaded.

🔒
Zero uploads

Files never leave your device — not even for a millisecond. All processing runs inside your browser.

👤
No signup

No account, no registration, no onboarding friction. Open the page and start converting immediately.

📧
No email required

We never ask for your email address. No newsletter, no drip campaigns, no marketing emails — ever.

🆓
Free forever

No credit card, no premium tier, no paywall. Every feature is free with no conversion limits, no watermarks.

⚡
Fast

Browser-native APIs (Canvas, FFmpeg.wasm, PDF.js) process files instantly — no waiting for server queues.

🛡️
Private & secure

100% on-device processing. No data breach risk, no server logs, nothing to intercept in transit.

⚙️
No queue, ever

Nothing waits on a server. Your file is processed the moment you choose it, however busy the site is.

📂
190+ formats

73 image, 43 document, 30 audio, 45 video formats — the most complete browser-based format library.

📖
Blog & guides

100+ free tutorials, format comparisons, and how-to guides to help you work smarter with files.

💻
Any device

Works on desktop, tablet, and mobile. Compatible with Chrome, Firefox, Safari, and Edge.

Compression at a Glance

40–80%
Typical size reduction for photos at default quality
50 MB
Max file size — no per-image cap on the free plan
8
Formats: JPG, PNG, WebP, GIF, BMP, HEIC, AVIF, TIFF
12
Encodes at most in Target KB mode — and the result is at or under the size you name

Format Comparison: Which Should You Compress To?

Not all image formats compress equally. Here's how JPG, PNG, WebP, and AVIF compare for web use after compression.

Format Compressed size Quality loss Transparency Browser support Best for
JPG Medium (baseline) Minor at 75–85% No 100% Photos, email, legacy software
PNG Largest (lossless) None (lossless) Yes 100% Screenshots, logos, transparency
WebP 25–35% smaller than JPG Minor at 75–80% Yes 97%+ (Chrome, FF, Safari 14+) Web photos and graphics — best default
AVIF 30–50% smaller than JPG Minor at high quality Yes 90%+ (Chrome, FF, Safari 16+) Modern sites where encode speed is acceptable

WebP is the practical choice for most websites in 2026. Compress your images here first, then use our JPG to WebP converter for an additional 25–35% reduction.

Want to go even smaller?

After compressing, convert to WebP for another 25–35% reduction — with no extra visible quality loss. Free, browser-based, instant.

Convert to WebP →

Lossy vs Lossless Compression: What's the Difference?

Lossy compression permanently removes image data to achieve smaller files. Lossless compression removes only redundant data and preserves every pixel exactly. Which you need depends on what the image contains.

The choice matters more than most guides admit. Applying lossy compression to a screenshot full of text introduces ringing artifacts around every character edge. Applying lossless compression to a photograph saves almost nothing and misses the real opportunity. Here is how to match format to content type every time.

Lossy (JPEG / WebP lossy) Lossless (PNG / WebP lossless)
How it works Discards data the eye is unlikely to notice — subtle gradients, high-frequency texture, shadow detail Removes only redundant data (repeated pixel runs, bloated palettes) — all pixel values preserved
Typical size reduction 40–80% 10–30%
Quality impact Imperceptible at 75–85%; visible artifacts below 65% Zero — pixel-perfect
Re-compression Quality degrades each time Safe to re-save repeatedly
Transparency JPEG: no. WebP lossy: yes Yes (PNG and WebP lossless)
Use when Photos, hero images, product shots, anything with continuous tone Screenshots, logos, diagrams, UI captures, anything with text or flat color

The most common mistake: running a screenshot or diagram through lossy JPEG compression because "JPEG is smaller." At quality 75, lossy compression introduces ringing artifacts around every sharp edge and character stroke — visible and professionally embarrassing in documentation or UI screenshots. The compressor above detects PNG input and applies lossless compression automatically, so you do not need to choose manually for most files.

Best Compression Quality Settings: The Short Answer

For most web images, compress at 75–80% quality. At 75%, JPEG and WebP produce files 50–65% smaller than the original with no visible quality loss under normal viewing conditions. That is the setting to start with.

The right quality level depends on how the image is used and how closely it will be examined. A product photo that buyers zoom into needs a higher setting than a background texture no one looks at directly. The table below maps common use cases to recommended quality settings with expected file size impact.

Image type Quality setting Why Typical size reduction
Hero / banner image 78–84% LCP element, above the fold — compress but not hard 50–64%
E-commerce product photo 80–85% Buyers zoom in; artifacts directly hurt conversions 45–58%
Blog body image 75–80% Supports content; not the focal point of the page 55–68%
Thumbnail / card grid 65–72% Small display size; quality differences invisible 65–78%
Before WebP conversion 78–80% WebP step adds another 25–35% on top of this 80–87% combined
Social media upload 82–88% Platforms re-compress on upload — pre-compress to control quality 40–54%
Email inline image Target KB mode Email clients cap message size; use 300–500 KB ceiling Varies
Print-ready image Do not compress Print requires full pixel data — lossless only if at all —

Google recommends staying between 75–85% for JPEG images. Below 65%, most viewers can spot the compression on high-resolution displays. Above 90%, the file size savings drop sharply — you are paying most of the weight penalty for a quality difference that is essentially invisible. The compressor above defaults to 75%, which is the right starting point for the widest range of everyday photos.

When Should You NOT Compress Images?

Compression is the right call for nearly every image that goes on the web — but there are a handful of situations where it either causes real problems or adds no value worth mentioning.

⚠ Avoid
Print and professional photography archives

Print requires 300 DPI and full pixel data — lossy compression introduces artifacts that are invisible at 72 DPI screen resolution but visible and unprofessional at print scale. Keep your master files uncompressed. Compress only for web derivatives.

→ Keep master files lossless
⚠ Avoid
Re-compressing already-compressed files

Each round of lossy compression compounds quality loss. A JPEG compressed to quality 75, then opened and re-compressed at 80%, produces worse quality than the original compression at 75% — you are encoding artifacts, not original image data. Always compress from the original source file.

→ Start from the original, every time
⚠ Caution
Screenshots and UI images with small text

Lossy compression blurs high-contrast edges and fine text. Documentation screenshots, app UI captures, and any image where character readability matters should use lossless compression or PNG — not JPEG at quality 75. The compressor handles PNG input as lossless automatically.

→ Use PNG or lossless WebP instead
⚠ Caution
Legal and medical images

Medical imaging (X-rays, MRI scans, pathology slides) and legal document images often have compliance requirements for lossless fidelity. Lossy compression that alters pixel values — even imperceptibly — may not be permissible. Check your regulatory requirements before applying any lossy compression to clinical or legal records.

→ Confirm compliance requirements first
⚠ Caution
SVG files and vector graphics

SVG is already a vector format — it scales infinitely without quality loss and is already text-based (often tiny). Converting an SVG to JPEG or PNG to "compress" it is the wrong direction. Optimize SVGs with SVGO instead, which removes redundant markup without changing any visual output.

→ Use SVGO for vector files

Did You Know?

★ Page Weight
Images are usually the heaviest part of a web page

According to HTTP Archive data, images are consistently the largest contributor to page weight — far exceeding JavaScript, CSS, or fonts. That makes them one of the first things worth checking when a page loads slowly — though not always the thing holding it up.

★ 3G Reality
Each MB of image takes about 5 seconds to download at Lighthouse's mobile speed

Measured on a real photograph at 1.6 Mbps, the connection Lighthouse uses for its mobile test: the camera's 810 KB file takes 4.05 s to download; resized to 1600 px and compressed, 232 KB takes 1.16 s. That is the download alone — a slow Largest Contentful Paint is often held up before the download even starts.

★ WebP Bonus
Converting to WebP after compression saves another 25–35%

JPEG compression at 75% quality typically cuts file size by 50–60%. Converting that result to WebP using the same quality setting shaves off an additional 25–35% — with no visible quality difference. Combine both steps for maximum savings: compress first, then convert to WebP.

★ Quality Sweet Spot
JPEG at 75% quality looks nearly identical to 100%

Perceptual quality research consistently shows that JPEG images at 75–85% quality look indistinguishable from the original under normal viewing conditions — while being 60–75% smaller. This is why Google PageSpeed Insights recommends 75–85% as the ideal range and why this compressor defaults to 75%.

★ TinyPNG Secret
Popular compression tools re-encode at ~60% JPEG quality

Tools like TinyPNG and Squoosh achieve their impressive compression numbers partly by re-encoding at a quality level most users wouldn't consciously choose — often around 60–65%. Convertlo's multi-pass engine achieves similar results by trying increasingly aggressive quality levels and picking the smallest that still beats the original file size.

★ Metadata Bloat
EXIF metadata can add 50–300 KB to a photo

Every smartphone photo contains EXIF metadata — GPS coordinates, camera settings, date, device model, and sometimes even a full-resolution thumbnail embedded inside the file. This metadata can total 50–300 KB per image. Re-encoding through a browser canvas strips all EXIF data automatically, which is another reason compressed files are significantly smaller even at high quality settings.

The Complete Image Compression Guide: Quality, Performance, and Everything In Between

Image compression is the highest-leverage optimization most websites never fully exploit. A single uncompressed hero image can weigh more than your entire JavaScript bundle — and unlike JS, you can't split or defer the hero image that sets your LCP. This guide covers how compression actually works under the hood, which settings move the needle for specific use cases, and how to build a workflow that keeps every image lean without the constant manual effort.

Lossy vs. Lossless: Choosing the Right Compression Type

Every compression decision starts with one question: can you afford to lose any pixel data? The answer shapes everything else.

Lossy compression (used by JPEG and WebP) works by throwing away image information that human vision is unlikely to notice — subtle color gradients, high-frequency texture detail, slight tonal variations in shadows. The tradeoff is that this data is gone permanently. If you compress a JPEG at quality 70, then re-open and re-compress it later, you're compressing an already-degraded image, and quality loss compounds with each pass. For photographs and hero imagery, lossy compression at 75–85% quality is almost always the right call — the size reduction is dramatic and the quality difference is imperceptible under normal viewing conditions.

Lossless compression (used by PNG and lossless WebP) removes only redundant data — duplicate pixel runs, bloated color palettes, and embedded metadata — without changing any actual pixel values. Quality is perfectly preserved, but the file size savings are much more modest: typically 10–30% compared to 40–80% for lossy. Lossless makes sense for logos, diagrams, screenshots, and any image where sharp edges or text readability matter.

The critical mistake most people make: running PNG screenshots through a JPEG compressor because "JPEG is smaller." A screenshot with text at JPEG quality 75 introduces visible ringing artifacts around every character edge. Use lossless compression (or convert to WebP lossless) for any image with text, sharp lines, or flat color fills.

Quality Settings — The Numbers That Actually Matter

Quality settings are not a linear "better to worse" dial — the relationship between the number and visible output is perceptual and format-specific. The short answer for most situations: 75–80% for web images, 80–85% for product shots, Target KB mode for email. Per-use-case numbers are in the quality guide above.

One counterintuitive takeaway: compressing at 80% and converting to WebP typically produces a smaller, better-looking result than pushing JPEG compression to 60%. The WebP encoder is fundamentally more efficient — so you get a file that's simultaneously smaller and cleaner.

How Compression Moves Your PageSpeed Score

Google PageSpeed Insights has a specific audit called "Efficiently encode images." It fires whenever it detects that an image could be more than 4 KB smaller using modern compression at an appropriate quality level. That 4 KB threshold is surprisingly easy to cross: a 2 MB JPEG will trigger this audit consistently. Passing it doesn't require lossless quality — it just requires not shipping wildly overweight files.

Beyond the audit, the metric that matters is Largest Contentful Paint, and on most pages the LCP element is an image. Compressing it shortens its download — but only the download. web.dev found that the median page with a poor LCP waits almost four times longer to start downloading its main image than to download it, so a smaller file alone rarely fixes a slow LCP: do not lazy-load that image, and let the browser find it early.

Google's recommended quality floor is 75–85% for JPEG. Anything above that and PageSpeed may still flag the audit. Anything below 65% and you risk perceptible quality loss that users will notice on high-resolution displays.

One thing PageSpeed doesn't tell you directly: how to handle images that load below the fold. These don't affect LCP, but they do affect total page weight and Time to Interactive. The best approach is to lazy-load them (the loading="lazy" attribute on <img> tags handles this for most browsers) and still compress them — you just don't need to be as aggressive about quality.

What Compression Does (and Doesn't) Do to Your Images

A persistent misconception: "if I compress my image, it will look blurry or small." This conflates two completely different operations — compression and resizing — that happen to often be performed together.

Compression only affects file size, not pixel dimensions. A 4000×3000 image compressed at 75% quality is still 4000×3000 pixels. The pixels look slightly different (lossy compression approximates the original rather than replicating it exactly), but the dimensions are unchanged. If you need to reduce dimensions, that's resizing — a separate step.

A few other things compression does strip away: EXIF metadata. Every photo taken with a smartphone or DSLR contains a block of metadata recording GPS coordinates, camera make and model, shutter speed, aperture, focal length, capture date, and sometimes a full-resolution embedded thumbnail. This block can add 50–300 KB to a file. When a browser canvas re-encodes an image (which is what browser-based compression does), it discards all EXIF data automatically. This is one reason browser-compressed files are often smaller than you'd expect — the EXIF strip accounts for a meaningful chunk of the reduction.

Normal compression uses your selected quality; it does not silently try lower settings to claim a saving. Lossy JPG and WebP can still change fine detail. Colour-managed PNGs use a pixel-preserving path; other protected images stay original when their colour cannot safely be preserved. Their result explains any settings that were not applied.

Compress an Image to 100 KB, 200 KB or a Custom Size

Need to reduce an image file size for an upload form? After adding your image, open More options and enter 100 or 200 in Custom KB, or choose another size. The target is a maximum file size, not a promise that the result will contain exactly that many bytes.

The compressor searches quality first, then reduces dimensions when needed. Check the final file size, dimensions and before/after preview before downloading. If your destination requires JPG, choose JPG in Output and confirm its other requirements too: a smaller file alone does not meet a separate width, height or format rule.

For batch image compression, the selected size limit applies to each image. Download results individually or save the batch as a ZIP. If a target cannot be reached, the result reports the smallest achievable size instead of silently claiming success.

Compressing for E-commerce: Where Every KB Translates to Revenue

E-commerce sites have the most to gain from systematic image compression — and the most to lose when they skip it. The reason is simple: product images are both the primary content (buyers decide based on photos) and typically the largest assets on the page. A well-optimized product detail page can have a hero image, 4–6 gallery thumbnails, and 3–4 related product images, all above the fold on desktop. If each one ships at 2–3 MB uncompressed, that's 10–20 MB of image payload before a single JavaScript file loads.

Studies from Google, Akamai, and various e-commerce platforms consistently show that each 100ms reduction in page load time correlates with 0.5–1% improvement in conversion rate. For a site doing $1 million per month, shaving 500ms off load time through image compression could translate to $5,000–$10,000 per month in additional revenue — purely from better load performance.

For product photos specifically, the quality balance matters more than for most other image types. Buyers zoom in. They look at fabric texture, product finish, color accuracy. A product photo compressed too aggressively — say, JPEG at 60% — shows visible blocking and color banding that undermines trust in the product quality itself. 85–88% quality is typically the e-commerce sweet spot: dramatically smaller than uncompressed, but clean enough that no buyer ever notices the compression.

One practical recommendation: compress all product images at 85% quality, then run the gallery thumbnails through a second pass at 72% quality (they display small; no one zooms a 200px thumbnail). The combination cuts total page weight by 60–70% without any perceptible quality difference at the display sizes your users actually see.

The Compress-Then-Convert Workflow

The highest-leverage image optimization stack for web delivery combines two steps: JPEG compression followed by WebP conversion. These two operations are additive — the savings stack rather than overlap.

Here's why: JPEG compression at 75% removes the high-frequency visual noise that's imperceptible to humans. WebP's encoder then applies a fundamentally different compression algorithm (it was developed by Google specifically to improve on JPEG's approach) that achieves an additional 25–35% reduction on the already-compressed JPEG — at the same perceptual quality level.

The practical result: a 3 MB original JPEG compressed to 600 KB at 75% quality, then converted to WebP, typically lands around 380–420 KB. That's an 86–87% total reduction from the original. And critically, a WebP at 380 KB and a JPEG at 600 KB look identical side-by-side on screen.

StepFormatTypical SizeCumulative Reduction
Original photoJPEG3.0 MB—
After JPEG compression (75%)JPEG~600 KB~80%
After WebP conversionWebP~390 KB~87%

WebP is supported in all modern browsers — Chrome, Firefox, Safari 14+, Edge, and Opera. The only edge case is very old iOS devices (pre-iOS 14) and IE 11. If you serve a significant share of traffic from those environments, use the <picture> element to serve WebP to modern browsers and JPEG as a fallback. Otherwise, WebP-only is safe for nearly all production web contexts in 2025.

Image Compression at Scale: Building an Automated Pipeline

Browser-based compression is the fastest path for one-off files and small batches. But if you're managing a site with hundreds or thousands of images — or uploading new content daily — you want compression happening automatically, not as a manual step someone has to remember.

The good news is that several infrastructure-level options make this essentially zero-effort once configured:

Cloudflare Polish (available on Pro plan and above) automatically compresses and converts images to WebP on the CDN edge layer. Every image request is served in the optimal format and quality level for the requesting browser, without any changes to your origin server or CMS. For sites already on Cloudflare, this is typically the single highest-ROI feature available at the Pro tier.

Cloudinary is an image CDN that applies automatic compression and format negotiation through URL parameters. Append f_auto,q_auto to any Cloudinary image URL and it will serve WebP to browsers that support it, at a quality level Cloudinary's algorithm determines as optimal for that image's content — without any manual tuning. For e-commerce teams managing large product catalogs, Cloudinary's transformation pipeline handles batch resizing, compression, and format conversion without ever touching individual files.

Sharp is the Node.js image processing library most CI/CD pipelines use for build-time compression. A single Sharp script can process an entire /images directory, output compressed WebP and JPEG versions of every file, and run automatically on every deployment. For static sites and Jamstack projects, this approach means images are always optimized before they reach the CDN — no per-request processing overhead.

For most teams, the right progression is: start with browser-based compression for existing assets, set up Cloudflare Polish or Cloudinary for new uploads, and add Sharp to your CI pipeline for build-time optimization of committed assets. Each layer catches what the others miss.

The Bottom Line: Start Compressing Before You Do Anything Else

If you've read this far without opening the compressor above, do it now. Drop in your homepage hero image, your product photos, or the images you uploaded to your CMS last week. The default quality setting (75%) is deliberately conservative — it produces visually lossless results on most photographs while cutting file size by 50–65%. You can go more aggressive if you need to hit a specific target, or back off to 85% if you're dealing with product photos that buyers scrutinize closely.

The entire process — upload, compress, compare, download — takes about 30 seconds per image. For most sites, that 30-second investment per image translates to faster load times, better Core Web Vitals scores, lower CDN bandwidth costs, and a meaningfully better experience for every visitor on a slow connection.

Once you've compressed your images, the next step is converting them to WebP — that second step typically adds another 25–35% size reduction on top of what you've already achieved here, with no visible quality difference.

Frequently Asked Questions

Is the image compressor free?
Completely free — no account, no watermarks, no limits on file count or file size. There's no premium tier and nothing to charge for.
Does image compression upload my files?
No. All compression happens locally in your browser using the HTML5 Canvas API. Your files never leave your device — 100% private. The compressor also works completely offline once the page has loaded.
Which image formats are supported?
JPG, PNG, WebP, GIF, BMP, AVIF, HEIC (iPhone photos) and TIFF are all supported. You can compress a single file or batch-compress an unlimited number of images at once. HEIC is decoded client-side via heic2any and TIFF via UTIF, each fetched only when you actually add one. A JPEG-compressed TIFF is refused rather than decoded wrongly, and a multi-page TIFF keeps its first page.
How much can I reduce image file size?
Savings depend on the source and chosen settings. Some files become much smaller, while already-optimized or colour-protected files can stay unchanged. The result reports actual byte sizes. Target KB may lower quality or dimensions, and protected inputs report when a requested target was not applied.
Will compression reduce image quality?
JPG and WebP use lossy compression, so some pixel differences are possible. Normal compression respects your selected quality instead of silently lowering it. Protected PNGs preserve their pixels and colour data; other colour-managed inputs stay original when safe compression is unavailable. Compare the result before downloading.
What is Target KB mode?
Target KB sets a maximum file size, such as 200 KB. It searches quality and then dimensions to fit the limit, which can reduce detail and resolution. Colour-protected images do not use this path: their result explains when target, resize or conversion settings were not applied. An unreachable target is reported.
Can I compress multiple images at once?
Yes. Drop as many images as you need — there is no file count limit. Images compress in parallel using a multi-worker pool, so a batch of 20 photos finishes in roughly the same time as 4–5 individually. Download each compressed image individually or grab all files in one ZIP.
Can I compress HEIC photos from my iPhone?
Yes. HEIC files are accepted. When their colour properties cannot safely pass through the available decoder and encoder, the original is kept and the result explains why. Other HEIC files can be decoded in the browser and compressed to JPG or WebP.
What is the difference between lossy and lossless compression?
Lossy compression (JPG, WebP) permanently discards image data that human vision cannot easily detect — achieving 40–80% size reductions at the cost of minor quality degradation at very low settings. Lossless compression (PNG) only removes redundant data without changing any pixels — reductions are smaller (10–30%) but quality is perfectly preserved. For web photos, lossy compression at 75–85% gives the best size-to-quality ratio.
Can I compress images on iPhone or Android?
Yes — Safari on iPhone (iOS 14+) and Chrome on Android both work. Tap the drop zone to browse your Photos or Files app, then download the result directly to your device. No app needed.
Will compressing images improve my website SEO?
Not by itself, and no tool can promise that. Google says Core Web Vitals are used by its ranking systems, and also that good scores do not guarantee high rankings. What optimized images reliably do is load faster: resizing an image to the size it is shown saves the most, and on the photograph we measured WebP was 25.8% smaller than JPEG at the same visual quality, AVIF 39.5%.
How does the before/after comparison work?
After compression, press ⚖ Compare on any card. It shows the original and the compressed copy at full size — as a wipe, side by side, an overlay, a difference view (matching pixels go black, so what glows is what changed) or a toggle — with zoom to 8×, and a table of what each file really is: format, size, colour, transparency, EXIF and DPI. Both images are already in your browser, so nothing downloads.
How do I compress images for email?
Choose JPG when your recipient needs broad compatibility, and use a maximum-size target only if needed. Review the image and its dimensions before downloading. Attachment limits depend on the email service and encoding overhead; no single per-image size guarantees delivery.
What is the best quality setting for web images?
Start with a moderate quality setting, then inspect the full-size result. Photographs, small text and transparent graphics respond differently, and quality numbers are not comparable across every encoder. Use lossless output when pixels must remain identical. Export the desired final format directly from the original when possible.
Does compressing an image reduce its dimensions?
Normal quality-based compression keeps the dimensions when the browser can process them. Resize settings and Target KB mode can reduce dimensions. Protected images retain their original pixels and dimensions, and report settings that were not applied.
Can I compress images and keep transparency?
PNG and WebP can store transparency. Keep an alpha-capable output and inspect the result before downloading. Choosing JPG can flatten transparent areas. Protected PNGs preserve their original pixel stream and colour metadata; explicit palette reduction or resizing is a separate transformation.
What is the best free TinyPNG alternative?
The best fit depends on your workflow. Convertlo offers local processing, batch ZIP downloads and maximum-size controls; Squoosh also processes images locally. TinyPNG provides server-based optimization and supports HEIC input too. Compare the actual result and current limits rather than assuming one tool wins for every image.
How is Convertlo different from TinyPNG?
Convertlo processes image files on your device. TinyPNG processes uploaded images on its servers and currently documents a free web limit of 20 images per batch and 5 MB each. Both accept HEIC. Convertlo provides size-target controls and colour protection that can keep an input original rather than alter its appearance.
Is there a free image compressor for Shopify?
Yes. Convertlo works as a free Shopify image compressor — drop your product photos, banners, or theme images in your browser before uploading them to Shopify's Files or product media library. Shopify's CDN auto-converts images to WebP, but it does not reduce the original file size you upload, so pre-compressing with Convertlo (40–80% smaller) means faster uploads, less storage usage, and a smaller original file for Shopify's CDN to process. No app install, no Shopify App Store subscription, and files never leave your browser.

People Also Ask

How Do I Compress an Image Without Losing Quality?

Use a quality setting of 80–85% for lossy formats (JPG, WebP). At this level, the human visual system cannot detect the quality loss under normal viewing conditions — even zooming in on a 4K monitor rarely reveals differences. The key is using the right format: JPEG at 85% for photographs, WebP at 80% for web images requiring smaller files, and PNG (lossless) only when pixel-perfect accuracy is required. Avoid going below 70% for images people will look at closely.

What Is the Best Image Compression Tool?

The best tool depends on your workflow. For quick browser-based compression without any file upload, Convertlo is completely free and processes files locally. For command-line automation, ImageMagick and cwebp give the most control. For WordPress, Imagify and ShortPixel are the most popular plugins. For maximum compression (at the cost of slower encoding), Squoosh from Google offers AVIF output. For most users — especially for batch compression of photos — a browser-based tool that needs no installation is the practical choice.

Does Image Compression Affect SEO?

Through speed, not as a ranking lever you can pull. Google says Core Web Vitals are used by its ranking systems and that good scores do not guarantee high rankings. Compressing and resizing images makes pages load faster, which is better for the people who visit — that is the part you can count on. What actually makes images faster, measured on a real photograph.

What Is the Best Format for Compressed Images?

WebP is the best format for most compressed web images in 2026. It produces files 25–35% smaller than JPEG at equivalent quality, supports transparency like PNG, and is supported by 97%+ of browsers (Chrome, Firefox, Safari 14+, Edge). For photographs, compress to WebP at 75–80% quality. For images requiring transparency, use WebP instead of PNG — WebP lossless is ~25% smaller than PNG. AVIF compresses even better (30–50% vs JPG) but encodes slowly and browser support is still catching up. JPEG remains the safe fallback for email and legacy software.

How Small Can You Compress an Image?

Theoretically, you can compress a JPEG to almost any file size — but visible quality degrades rapidly below 30–40% quality. For photographs, a practical minimum is roughly 20–40 KB for a 1080p web image at 30–40% quality — small enough for thumbnail grids and preview images. Convertlo's Target KB mode lets you specify the exact size you need, and the engine finds the gentlest setting that fits. For images smaller than 10 KB, consider whether you actually need an image at all — SVG icons and CSS patterns often work better at that scale.

Image compression by the numbers

Observable behaviour and reproducible checks, rather than a promised percentage saving.

QuestionCurrent behaviour
Where are images processed?In the browser; no conversion-server upload.
Can normal compression lower my selected quality?No hidden lower-quality retry; explicit Target KB and Compress more are separate choices.
Will every image get smaller?No. Already-optimized or protected inputs can stay original.
Can a size target change dimensions?Yes, when needed; protected paths can leave the target unapplied with a result note.
What supports the colour-protection claim?Three downloadable synthetic fixtures, compared at the image-data and metadata level.
Definition
Lossy Compression
Permanently discards imperceptible image data to reduce file size. Used by JPEG and WebP (lossy mode). Achieves 40–80% reduction. Quality degradation compounds on re-compression — never re-compress a lossy image multiple times.
Definition
Lossless Compression
Removes only redundant data — duplicate pixel runs, inflated color palettes, metadata — without changing pixel values. Used by PNG and lossless WebP. Quality is perfectly preserved; reduction is 10–30%.
Definition
Largest Contentful Paint (LCP)
Core Web Vitals metric: time until the largest visible element renders. For most pages, that element is an image. Good: ≤2.5s. Compression shortens the image's download; making sure it starts downloading early matters as much.
Definition
Target KB Mode
Compression approach where output file size — not quality — is the constraint. Bisects quality and then dimensions (up to 12 encodes) to find the gentlest setting that produces a file at or below the specified size. Essential for email, social media upload limits, and form file size requirements.
Definition
EXIF Metadata
Embedded data in every smartphone and DSLR photo: GPS coordinates, camera model, shutter speed, aperture, capture date, and often a full embedded thumbnail. Can add 50–300 KB per file. Browser canvas re-encoding strips all EXIF automatically — one reason browser-compressed files are smaller than expected.
Definition
Canvas 2D downscale
Resizing an image by drawing it onto a smaller canvas, which is what happens here before the encoder runs. The browser chooses the filter; this page asks for its highest quality and loads no third-party resampler.

How we verify colour-preserving compression

These three synthetic fixtures check correctness, not expected savings for real photos. PNG validation compares decompressed image-data bytes and every non-IDAT chunk, including colour metadata. The profiled JPEG example demonstrates the original-retained path. Results were generated on 2 November 2026 with the shipped colour-protection module.

Validation fixturePixelsOriginal bytesOutput bytesResult
PNG with gamma and transparency64 × 4010,3641,428lossless PNG stream recompression
16-bit RGBA PNG32 × 205,208447lossless PNG stream recompression
JPEG with embedded sRGB ICC profile64 × 402,6492,649original retained

Download the original/output fixture bytes and SHA-256 hashes (JSON). Download the Node.js verifier; run it beside the JSON file with node verify-colour.cjs. No package installation is required.

This checks the protected paths only. It does not establish equal pixels for lossy JPG/WebP output, typical percentage savings, encode speed, or identical appearance on every browser and display. The PNG specification explains colour information and image-data chunks.