Initializing... drag & drop files here
Supports: JPG, JPEG, JFIF
BMP is Microsoft's device-independent bitmap: pixels written out row by row with no compression to undo. JPG is the opposite — a lossy DCT format built to make photos small. Converting JPG to BMP is worth doing when something downstream insists on a raw bitmap: legacy Windows software, GDI-based tooling, embedded firmware, machine-vision rigs, printer utilities and sprite editors that read pixel buffers directly. It is not a way to recover quality, because the detail JPEG discarded is already gone before the file reaches us.
| Property | JPG | BMP |
|---|---|---|
| Compression | Lossy DCT, adjustable quality | None, or run-length encoding (RLE) for palette bitmaps |
| Colour handling | 24-bit colour, usually with 4:2:0 chroma subsampling | 1, 4, 8, 16, 24 or 32 bits per pixel |
| Repeated re-saving | Accumulates blocking artefacts | No further loss once written |
| Metadata | EXIF: camera, timestamp, GPS, orientation | None — the header stores size, bit depth and resolution only |
| Typical 12 MP file (4000×3000) | 2-6 MB | ~24 MB at 16 bpp, ~36 MB at 24 bpp, uncompressed |
| Row layout | Not applicable | Rows padded to a 4-byte boundary; positive height means bottom-up |
| Transparency | None | 32-bit variants carry alpha, but support is inconsistent |
| Where it belongs | Photos, web, email, anything shared | Legacy Windows tooling, firmware, capture and vision pipelines |
The Quality Preset dropdown on this page is not a JPEG-style quality slider — BMP has no such control. It selects between three genuinely different bitmap encodings:
| Preset | Bitmap written | Colours | Size behaviour |
|---|---|---|---|
| High | Uncompressed 16 bits per pixel in RGB 555 layout | 32,768 | Fixed: roughly width × height × 2 bytes, whatever the picture contains |
| Medium | 8-bit palette bitmap, RLE-compressed, written in the classic BMP3 header form, with Floyd–Steinberg dithering | 256 | Much smaller; depends on how flat the image is |
| Low | 8-bit palette bitmap, RLE-compressed, Floyd–Steinberg dithering, 150 pixels-per-centimetre resolution tag | 86 | Smallest; visible dithering on photographic content |
Microsoft's BITMAPINFOHEADER reference documents both halves of this: at 16 bits per pixel the layout is RGB 555, and row stride is the width in bytes rounded up to the nearest 4-byte boundary — which is why an uncompressed bitmap's size is fully predictable from its dimensions.
.bmp and refuses compressed input..bmp. Files upload over an encrypted connection, are processed on our servers, and are deleted automatically after a few hours. No sign-up, no watermark.No. JPEG compression is lossy and permanent — the fine detail and the 8×8 block edges are already baked into the pixels. BMP stores those pixels faithfully, artefacts included. Converting is about format compatibility, not restoration.
An uncompressed bitmap at 16 bits per pixel using the RGB 555 layout — five bits each for red, green and blue, giving 32,768 possible colours. Every pixel takes two bytes regardless of content, so a 4000×3000 photo lands at roughly 24 MB.
Because nothing is compressed. A JPEG stores a frequency-domain approximation; an uncompressed bitmap stores every pixel literally, with rows padded out to four-byte boundaries. Expect an order of magnitude increase over the source photo. Medium and Low shrink it by dropping to a palette and applying run-length encoding.
Both write an RLE-compressed palette bitmap with Floyd–Steinberg dithering, which spreads quantisation error across neighbouring pixels so banding looks like fine noise instead of hard steps. Medium keeps 256 colours; Low drops to 86 and tags the file at 150 pixels per centimetre. Low is the smallest and the most visibly dithered.
On flat graphics, no. On photographs with smooth skies or skin tones, 32,768 colours can show mild banding compared with the original's 16.7 million, and the palette presets will show dithering texture. Viewed at normal size the difference is subtle; on a large gradient it is visible.
No. The BMP header carries dimensions, bit depth and pixel-density fields and nothing else — there is no EXIF block to write to. If you need that metadata, keep the original JPG alongside the bitmap, or convert to a format that stores EXIF.
There is a 32-bit BMP variant with an alpha channel, but application support for it is inconsistent, and a JPG has no transparency to carry over in the first place. For anything that needs real transparency, PNG is the correct target.
Yes. Image resolution lets you keep the original size, scale by percentage, choose a preset, or type exact Width and Height values — useful when the receiving device expects a fixed frame such as a splash screen or LCD panel.
Use BMP to JPG to get a shareable file again. Remember that the round trip does not restore anything: JPG → BMP → JPG applies a second generation of lossy compression on top of the first.
Files are uploaded over an encrypted connection, processed on our servers, and deleted automatically after a few hours — no sign-up, no watermark, never shared or made public.