Set 100 KB as the limit and let the engine search for the best JPEG quality that fits under it. Ideal for forms, portals and email, with nothing uploaded.
No limits or paywall.
Use instantly, no account.
Processed inside your browser.
Clean, full-quality output.
No upload queue or waiting.
Works on phone and desktop.
Upload forms love round numbers, and 100 KB is one of the most common. Recruitment sites, university applications, government services and HR systems routinely reject photos above it. The usual advice, "lower the quality until it fits", turns into a frustrating loop of export, check, export again. This tool automates the loop: you set the ceiling once and it searches for the best JPEG quality that stays under it.
Everything happens in your browser. Your photo is never uploaded, there is no sign-up, and you can see a before/after comparison before downloading. If 100 KB is physically impossible at your photo's current size, the tool tells you instead of quietly handing you an oversized file.
Before
JPEG from a phone camera, 1600 × 1200
≈ 650 KB
Typical of a resized phone photo saved at high quality.
After
JPEG, quality chosen automatically
≤ 100 KB
Same dimensions; quality lowered only as far as the limit requires.
Illustrative example. How much quality is needed depends on the photo's dimensions and detail. If a 100 KB result is impossible at the current dimensions, the tool tells you to resize first.
The workspace at the top already has the Target Size tab selected with 100 KB filled in.
Drop your photo into the drop zone or click to choose it. It is read locally; nothing is uploaded.
The compressor tests quality levels with a binary search and keeps the highest-quality result that is at or under 100 KB.
Compare before and after, confirm the final size is under the limit, then download. If the tool says 100 KB cannot be reached, resize the photo first.
| Dimensions | Megapixels | Bits per pixel at 100 KB | Expected result |
|---|---|---|---|
| 600 × 800 | 0.48 MP | ≈ 1.7 bpp | Excellent, near-original quality |
| 1080 × 1350 | 1.46 MP | ≈ 0.56 bpp | Very good for screens |
| 1600 × 1200 | 1.92 MP | ≈ 0.43 bpp | Good; slight softening in fine textures |
| 2048 × 1536 | 3.15 MP | ≈ 0.26 bpp | Fair; artefacts visible on close inspection |
| 4032 × 3024 | 12.2 MP | ≈ 0.07 bpp | Usually impossible; resize first |
JPEG has no "file size" setting. The only control is quality, which scales the quantisation tables that decide how much detail is discarded from each 8 × 8 block. The relationship between quality and size is monotonic but not linear, and it depends heavily on the photo, so the tool searches for the right value rather than guessing.
It uses a binary search: start in the middle of the quality range, encode, compare with the target, then halve the range in the right direction. Within about nine encodes it narrows a 1–100 range down to a single step. The engine treats your target as a hard ceiling. It remembers the largest result that fits, stops early once a result is within a few percent under the limit, and never returns a file above 100 KB when a fitting quality exists.
A 100 KB file contains 819,200 bits. Divide that by the number of pixels and you get the average bits per pixel (bpp) the encoder can spend. Typical photos look good from roughly 0.5 bpp upwards, acceptable around 0.3 bpp, and start breaking up below about 0.2 bpp. The table above shows what that means: a 1080 × 1350 portrait has a comfortable budget, while a full 12-megapixel phone photo has almost none.
This is why reducing dimensions is the most powerful way to improve quality under a size cap. Halving width and height divides the pixel count by four and quadruples the bits available for each pixel. For most portals, 1000–1600 pixels on the long side is plenty.
At high quality the encoder keeps almost all frequency coefficients in each block. As quality drops, the quantisation divisors grow, so more fine-detail coefficients round to zero. You see this first in textures, hair, fabric and foliage, which lose crispness, then in smooth gradients, which develop visible bands, and finally as 8 × 8 blocks along edges.
Chroma, the colour information, is usually stored at half resolution and compressed harder than brightness, because our eyes are less sensitive to colour detail. That is why heavy compression shows up as colour smearing around red and blue edges before brightness detail suffers.
There are two conventions for kilobytes. This tool uses 1 KB = 1,024 bytes, the convention most operating systems use when showing file sizes. Some websites validate with 1 KB = 1,000 bytes, which makes their "100 KB" limit 2.4% stricter. If you want to be safe for every portal, set the target to 97 KB.
Some forms also have a minimum size, often 10–20 KB, to block blank or corrupted images, and some require specific pixel dimensions. Read the instructions carefully; a photo can be the right size in KB and still be rejected for being the wrong shape.
The photos people compress to 100 KB are usually personal: ID photos, signatures, certificates and scanned forms. Uploading them to an unknown compression server is a real risk. Here, compression runs on your device through the browser's own JPEG encoder, so the image is never transmitted, and the output is stripped of EXIF metadata such as GPS coordinates and device serial numbers.
Applicant tracking systems and government recruitment portals frequently cap photos at 100 KB. Compress once and reuse the file.
Admissions forms often require a recent photo within a narrow size range. Compress, then double-check any minimum size rule.
Keeping inline images under 100 KB makes emails load quickly and reduces the chance of being clipped by mail clients.
Blog and product images under 100 KB help pages stay fast, especially on mobile connections.
Use the Target Size tab above with 100 KB entered, then add your photo. The engine finds the highest JPEG quality that produces a file at or just under 100 KB. Hitting exactly 102,400 bytes is rarely possible because quality moves in steps, but the result will not exceed the limit when the target is reachable.
No. The target-size engine changes only compression quality and keeps your original width and height. If even the lowest quality is above 100 KB, it warns you so you can reduce the dimensions with the Image Resizer and try again.
This tool treats 1 KB as 1,024 bytes, so 100 KB is 102,400 bytes. A few portals count 1 KB as 1,000 bytes. If a site is strict and your file sits right at the limit, enter 97 KB to leave a safety margin.
No. Compression uses your browser's canvas encoder. The file never leaves your device, which matters for ID photos and documents.
Your image probably has a lot of pixels for the byte budget. Reducing the dimensions, for example to 1200 pixels on the long side, lets the encoder use more bits per pixel and gives a sharper result at the same 100 KB.
Yes. The compressor accepts PNG, WebP, HEIC, AVIF, BMP, TIFF and more. Choose JPEG as the output format for the widest acceptance. See also compress any image to 100KB.
Yes. The re-encoded JPEG contains no EXIF data, which removes camera details and location, and saves a few kilobytes that go towards image quality instead.
Check whether the portal uses 1,000-byte kilobytes and lower your target to 95–97 KB. Also confirm you uploaded the downloaded file, not the original, and that the portal does not also enforce pixel dimensions.
Facing issues or want to request a feature?
Let us know immediately! We would love to hear your feedback.