Actual bytes decide
A bounded binary search tests actual encoder output; the page does not infer file size from source dimensions or a generic percentage.
Compress an image to 1 MB or less locally with a 1,024 KB target and optional Smart Fit dimension reduction.

JPEG, PNG, WebP or static AVIF. Add one file or a whole batch.
This route starts at a real 1 MB ceiling (1,048,576 bytes), suited to detailed photographs and high-resolution uploads with a moderate cap. The result is accepted only when an encoded candidate meets the cap.
A bounded binary search tests actual encoder output; the page does not infer file size from source dimensions or a generic percentage.
Targets can be impossible without a severe tradeoff. Structured failure states remain honest rather than labeling an oversized result as success.
Every quality and dimension attempt runs locally. Image bytes, filenames, previews and metadata are not posted to a target-size service.
Add JPEG, PNG, WebP or static AVIF images. Content and dimensions are validated locally.
1 MB is preselected in the first settings control. Keep Smart Fit enabled when dimension reduction is acceptable.
The worker performs bounded encoding attempts, reports the closest valid result and explains when the target cannot be met.
The worker searches for the highest tested WebP quality whose encoded result is at or below 1 MB. If quality alone cannot reach the cap, Smart Fit can progressively reduce dimensions and try again.
No fixed target can guarantee identical visual quality for every image. Detailed or noisy images need more bytes. The result shows the achieved size, quality and dimensions so you can judge the tradeoff.
No. Files selected from your device stay in the browser. Iterative encodes run in a dedicated worker and only the approved result is offered for download.