heictosize

HEIC → JPEG · 100KB target

Compress HEIC to 100KB or less.

100% in your browser. No upload. Never exceeds your target.

  • Hard target limit
  • No upload
  • Free, no signup
JPEGPNG

When to use this

  • Government portals that reject uploads over 100KB.
  • Exam registration photos with a strict ≤100KB limit.
  • Visa application headshots under 100KB.
  • Job application sites that cap photo size at 100KB.
  • Online forms that only accept JPEG and a maximum of 100KB.

Tips

  • Aim a couple of KB under 100KB — some forms round up and reject a file that is exactly 100KB.
  • Crop to the required aspect ratio before uploading to a form; this tool keeps your original dimensions unless it must resize to hit the target.
  • If your form allows up to 200KB, use the larger target — you'll keep more resolution. See compress HEIC to 200KB.

Compressing an iPhone HEIC photo down to 100KB is one of the most common size targets people need online — and one of the most frustrating to hit by hand. Government portals, exam registration sites, visa applications, and job application systems routinely cap photo uploads at exactly 100KB and reject anything larger, often with no help on how to get there. This tool does exactly that: you type 100, and it returns a JPEG at or under 100KB, with no upload and no guesswork.

Why 100KB is the magic number for online forms

The 100KB limit is everywhere because it is a convenient ceiling for the servers behind online forms. A 100KB photo is small enough to store millions of, quick to upload on a slow mobile connection, and cheap to process. So form designers pick it as a hard cap and reject anything that crosses it.

The problem is that modern phones do not produce 100KB photos. An iPhone shooting in HEIC — the default since iOS 11 — produces a single photo that is typically 1 to 5 megabytes. A typical 12-megapixel iPhone photo lands around 1.5 to 3MB. That means hitting a 100KB target is a 15× to 40× reduction, and doing it by trial and error with a generic editor is tedious: change a setting, export, check the size, repeat.

This is the gap a purpose-built 100KB HEIC compressor fills. Instead of asking you for a quality setting you don’t care about, it asks for the one number the form cares about — the size in KB — and hits it directly.

Who needs a 100KB HEIC compressor

A 100KB photo target comes up across a surprisingly wide range of official and semi-official contexts:

In every one of these, the requirement is the same: a JPEG, at or under a specific KB limit, ideally without the photo looking degraded. That is exactly what this tool produces.

How to compress HEIC to 100KB, step by step

Using the tool is intentionally simple — there is no account, no settings menu, and nothing to install.

  1. Open the compressor on this page. The engine loads once, in your browser, the first time you visit.
  2. Drop your HEIC photo into the box, or click to select it from your device. The moment you choose a file, the tool decodes it and shows you a preview — so you can confirm you picked the right photo before doing anything else. (Most browsers cannot display HEIC directly, so the tool decodes it for you.)
  3. Set the target to 100KB. It is preset, but you can type any number.
  4. Click Compress. The tool searches for the best result that fits under 100KB, usually within a second or two for a phone photo.
  5. Compare the before and after. The original is shown next to the result so you can see exactly what changed.
  6. Download the result. You get a JPEG file named with the target size, ready to upload to your form.

If the form later complains, or if you want a little safety margin, type a slightly lower number (say 95KB) and compress again. Some forms round up at the boundary, so landing a few KB under is safer than landing exactly on 100KB.

How the compression actually works

It helps to understand what the tool is doing, especially if you care about why the result still looks good. The compression runs in four stages, all inside your browser.

1. Decode the HEIC

HEIC is a container that stores image data compressed with HEVC (also called H.265). Browsers — except Safari — generally cannot render HEIC directly, which is why an <img> pointed at a raw HEIC file shows nothing. The tool uses a WebAssembly module to decode the HEIC into raw pixels, entirely on your device. No pixel data is ever sent anywhere.

2. Try the highest quality that fits

With raw pixels in hand, the tool encodes them to JPEG. JPEG lets you choose a quality level from 1 to 100 — higher quality looks better but produces a larger file. The tool performs a binary search across quality levels to find the highest quality that still fits under 100KB. A binary search is fast: rather than trying quality 50, then 51, then 52, it jumps to the middle, checks whether that fits, and narrows in within a handful of attempts.

3. Protect a quality floor before resizing

Here is the part that protects how your photo looks. Older “hit a target size” approaches kept lowering quality until the size fit — sometimes crushing quality down into the low teens, which produces visible blockiness and mosaic artifacts, especially around faces and skin. That is exactly what you do not want in an ID or passport-style photo.

This tool instead enforces a quality floor. It will only reduce quality so far — and if even that floor still exceeds 100KB at full resolution, it stops lowering quality and starts resizing instead. The principle is simple: trade pixels before you trade visible quality. A smaller but clean photo looks far better than a full-size but blocky one.

4. Resize with a high-quality filter, then retry

When a resize is needed, the tool uses a Lanczos resampling filter, which is a high-quality method for downscaling photographs — it preserves edges and fine detail far better than the faster bilinear filters many tools default to. After resizing, it repeats the quality search on the smaller image, and loops until it lands under 100KB. The result is a JPEG that fits the target, given the constraints of the source photo.

What to expect from a 100KB photo

A reasonable question is whether 100KB is enough for a photo to look acceptable. The honest answer: for a headshot or ID-style photo, 100KB is plenty, and the result will look clean; for a large, detailed scene like a full landscape, 100KB forces visible compression because there is simply more information than 100KB can hold.

A few practical expectations:

If your photo looks too soft after compression, the most likely cause is that the source is a busy, detailed scene rather than a headshot. Cropping tightly to the subject first (in your phone’s editor) usually improves the result dramatically, because the tool then spends its 100KB budget on the part that matters.

How photo file sizes actually work

It helps to understand what determines a photo’s file size, because it sets realistic expectations for what 100KB can look like. A JPEG’s size in bytes comes from three things:

  1. Pixel count (resolution). More pixels means more data to encode. A 12-megapixel photo has roughly four times as many pixels as a 3-megapixel one, so all else equal it produces a larger file.
  2. Quality level. JPEG is lossy: a higher quality setting keeps more fine detail and produces a larger file; a lower quality discards detail for a smaller file.
  3. Image complexity. A photo full of fine detail, noise, or busy texture compresses poorly (larger file at the same quality), while a smooth photo with flat areas like sky or a plain wall compresses well (smaller file at the same quality).

That third point is why two photos at the same resolution and quality can come out very different sizes, and it is also why cropping tightly to your subject helps: removing busy background detail lets the encoder spend its 100KB budget on the part that matters.

What 100KB actually buys you

For a clean headshot-style photo, 100KB of JPEG at a sensible quality corresponds to roughly 800 to 1200 pixels on the long edge — more than enough for a form photo that will be displayed at a small size. A detailed landscape, by contrast, needs far more than 100KB to avoid looking soft, because there is simply more information to store. This is why ID and portrait photos take to a 100KB target so well, while wide scenes resist it.

Why a target-KB tool beats a quality slider

A normal image editor asks you for a quality number and hands you whatever size results. That is backwards for forms: the form cares about the size, not the quality. A target-KB compressor inverts the question — you give the size, the tool finds a suitable quality that fits — which is exactly what a hard 100KB ceiling demands.

HEIC vs JPEG: why the output is JPEG

A common point of confusion is why a “HEIC compressor” outputs a JPEG. There are two reasons.

First, almost no online form accepts HEIC uploads. Forms expect JPEG or PNG. HEIC is an Apple-pushed format with uneven support outside the Apple ecosystem, and most government, exam, and corporate form systems reject it outright even if the browser could display it.

Second, JPEG is far better suited to hitting a small KB target cleanly. JPEG was designed for photographs and produces small files with good-looking results; the same photo as a PNG would be several times larger for no visible benefit. Since the whole point is to land at or under a size limit, JPEG is the right output.

So the conversion from HEIC to JPEG is not a side effect — it is the point. Your original HEIC is never modified or deleted; the tool produces a new JPEG alongside it.

Photo requirements by use case

Different forms specify different combinations of file size, pixel dimensions, and aspect ratio. The tool handles the file-size part directly; for the others, a small amount of prep in your phone’s photo editor helps.

Always double-check the exact requirements on the specific form you are filling out — they vary, and the form itself is the authority. The tool takes care of the single most common hard blocker, which is the file-size ceiling.

Passport, visa and ID photo guidance

Because the 100KB limit shows up so often for identity documents, here is practical guidance for getting a usable result in those cases specifically. (Always confirm exact specs on your specific form — they vary by country and issuer.)

Capture tips

Before you compress

After you compress

Common aspect ratios and dimensions

ID and form photos use a small set of standard shapes. Crop to the right one before compressing:

The tool itself does not enforce an aspect ratio; it preserves whatever you give it unless it must resize to hit the target, so set the ratio during cropping. The final pixel dimensions depend on how much the tool had to shrink to reach 100KB, but a tightly cropped headshot keeps more than enough pixels for any standard form.

Troubleshooting

The form still says the file is too large. Some forms count size slightly differently, or round up. Re-compress targeting a few KB lower (for example, 95KB or 90KB) and try again. The tool always lands at or under the number you type.

The form rejects the format. The output is a standard JPEG with a .jpg extension, which virtually every form accepts. If a form specifically wants .jpeg, renaming the extension works — the file contents are identical.

The photo won’t preview or compress. Make sure you are uploading an actual HEIC/HEIF file and not a screenshot or a file with a renamed extension. Very occasionally a HEIC from an unusual app or an interrupted transfer is incomplete; re-saving or re-exporting the original fixes it.

Compression feels slow. Large source files (multiple megabytes, or very high resolution) take longer because decoding and encoding scale with pixel count. This is normal and processing time varies with the device and pixel count. Everything happens on your device, so a slow connection does not slow it down.

The result looks too soft. Crop tightly to the subject first, so the tool spends its 100KB budget on what matters. A headshot cropped before compression always looks better at 100KB than a wide scene.

Privacy: nothing leaves your device

This deserves to be said plainly, because the photos people compress to 100KB — passport photos, ID images, exam portraits, visa headshots — are among the most sensitive files they handle.

Your image never leaves your device. There is no upload, no cloud processing, no server that sees your photo. The decoding and compression happen locally, inside your browser, using a WebAssembly module. When you close the tab, the data is gone. There is no account, no storage, and no analytics applied to your image.

This is a meaningful difference from most “online compressor” websites, which upload your photo to a server, process it there, and send it back. For a vacation photo that may not matter; for a passport or visa photo, it matters a great deal. Running everything locally is both a privacy guarantee and a speed advantage — there is no round trip to a server and back.

How this compares to other approaches

There are several common ways people try to hit a 100KB target, and each has trade-offs.

The right tool depends on your situation, but for the specific job of “I have an iPhone photo and my form needs it under 100KB,” a targeted browser-side compressor is the most direct path.

Not every form wants exactly 100KB. If your limit is different, the same tool hits any target:

Whatever number your form states, type it and the tool lands at or under it — privately, in your browser, with no upload.

Frequently asked questions

Can it compress HEIC to 100KB or less?

Yes. It searches JPEG quality levels to land at or just under 100KB, and only shrinks dimensions if 100KB can't be reached at full quality — so the tool returns a file of 100KB or less, never over.

Is my photo uploaded to a server?

No. Decoding and compression run entirely in your browser via WebAssembly. Your HEIC file never leaves your device, nothing is stored, and there is no analytics on your image. Close the tab and it's gone.

Why does it sometimes reduce the resolution?

If even the lowest acceptable quality still exceeds 100KB, the image is resized with a high-quality Lanczos filter until it fits. A quality floor keeps faces clear instead of blocky, trading pixels before it trades visible quality.

How is this different from a quality slider?

A slider makes you guess the quality and re-check the size over and over. You enter 100KB and it hits that target directly — which is what forms actually require. The size is the constraint, not the quality.

Does it work on Android or only iPhone?

It works in any modern browser (Chrome, Edge, Firefox, Safari) on any device. HEIC is most common on iPhone, but the file can come from anywhere — Android, a DSLR, a download, an email attachment.

Is there a file size limit?

There is no server quota because everything runs on your machine. The only limit is your device's memory. Very large HEIC files (tens of megabytes) may take a second or two to process.

Is it free?

Yes — completely free, with no signup, no watermark, and no upload. There is no account and no plan to upgrade.

What format is the output?

JPEG (.jpg). Online forms almost always require JPEG or PNG, and JPEG reaches small target sizes like 100KB far more cleanly than PNG. Your original HEIC is never modified.

Will a 100KB photo be high enough quality for an official form?

For a headshot or ID-style photo at 100KB, yes — faces stay clear because the tool protects a quality floor and only shrinks dimensions as much as needed. The result is purpose-built to satisfy forms that ask for ≤100KB.

What if the form wants less than 100KB?

Type the number the form asks for. For a 50KB limit, see compress HEIC to 50KB; for a more generous 200KB cap, see compress HEIC to 200KB. Any target from 5KB up works.

Do I need to install anything?

No. It runs in the browser. There is no app, no plugin, no software to install, and no account to create.

Does it work offline?

Once the page has loaded, the engine runs locally on your device. An internet connection is only needed to open the page initially.

Does the output keep my photo's metadata?

No — and for sensitive photos that is a feature. The result is a freshly encoded JPEG with none of the original's EXIF data, which means camera details and any embedded GPS location are stripped. Nothing identifying about where or how the photo was taken travels with the file you upload to a form.

Will my photo stay the right way up?

After decoding, use Left 90°, Right 90°, or Reset beside the preview. The preview dimensions update immediately, and compression uses the rotated pixels.

Can I compress several photos at once?

One at a time. This keeps the tool simple, fast, and entirely local. If you have many photos to prepare, compress each individually — it only takes a moment per file.

Can it go smaller than 50KB?

Yes — any target down to 5KB works. Very small targets on a large source photo will force a noticeable resolution reduction, because there is only so much detail a tiny file can hold.

Why is my original HEIC file so large?

Modern iPhones capture 12 megapixels or more and keep quality high, so a single HEIC photo is commonly 1–5 MB even though HEIC is already an efficient format. Hitting 100KB is a 15–40× reduction from that starting point.

Will skin tones and faces look natural?

Yes. Because the tool holds a quality floor and only shrinks dimensions as needed, the visible quality of faces and skin is protected rather than crushed into blocky artifacts — which matters specifically for ID and portrait photos.