JPG to BMP Converter

Drop JPG or JPEG images and download them as uncompressed 24-bit BMP files — written by this tool on your own device, never uploaded, no watermark.

  • Free
  • No account
  • Runs in your browser
  • Nothing uploaded
JPG to BMP ConverterNothing uploaded

Output is an uncompressed 24-bit BMP — no quality or background settings, because BMP does not compress and a JPG has no transparency to keep.

Runs entirely in your browser — your input is never uploaded, logged, or stored.Privacy policy

What is JPG to BMP Converter?

This tool converts JPG (JPEG) images to BMP (bitmap) files in your browser. It is for anyone whose old Windows program, printer driver, embedder or assignment asks for a .bmp, or who is handing an image to software that will not open a JPG.

Two things are worth knowing before you convert, so they come first. The BMP this tool writes is uncompressed 24-bit, so it is usually several times larger than the JPG — for a 12-megapixel phone photo, roughly 35 MB against a few MB for the JPG. And a BMP holds no more quality than the JPG had: the picture is an exact copy of the JPG as it decoded, but the detail JPEG compression discarded is gone, and nothing here brings it back.

There is a reason this tool is built differently from the JPG-to-PNG converter next door. Every browser can decode a BMP, but none can encode one: the canvas API can only write PNG, JPEG and WebP. So the .bmp is assembled byte by byte here, in the page, with the same encoder the rest of the site uses — a 14-byte file header, a 40-byte bitmap information header, then the pixel rows stored bottom-up in blue-green-red order with each row padded to a multiple of four bytes. That is the plainest, most widely readable kind of BMP: the variant every viewer, printer and old Windows program opens.

Because a JPG has no transparency, there is no background colour to choose, and 24-bit BMP has no alpha channel to store one in — every pixel comes out fully opaque, exactly as the JPG was. For the same reason there is no quality slider: BMP does not compress, so there is no quality setting to make. Your browser decodes the JPG with createImageBitmap, which applies the orientation tag a phone or camera stored, so a photo that looked sideways elsewhere is saved upright; the rest of the EXIF data (date, camera, location) and any embedded colour profile are not copied.

The results list shows each file's size before and after, and states the increase rather than hiding it. Everything happens on your device: the images are read into browser memory, converted and handed back as downloads, never uploaded. You can confirm in your browser's developer tools (Network tab) that no request carries your file. Convert up to 50 images per batch, each up to 50 MB.

1. Each file's first bytes are checked for the JPEG signature FF D8 FF. .jpg, .jpeg, .jpe and .jfif files all pass, because they are the same format; any other signature is refused with a message naming the real format. The file name is never trusted, so a JPEG named .txt still converts. 2. The browser decodes the JPEG with createImageBitmap, applying the EXIF orientation tag so the image is upright. 3. The decoded pixels are drawn onto a canvas of the same width and height and read back as RGBA (ImageData). JPEG is opaque, so every alpha byte is 255 — nothing is composited onto a background, and there is no background control to set. 4. Browsers cannot encode a BMP, so the file is written by hand in three parts: BITMAPFILEHEADER (14 bytes): bfType "BM" (0x4D42), bfSize (the size of the whole file), two zero reserved words, and bfOffBits = 54 — where the pixels start. BITMAPINFOHEADER (40 bytes): biSize 40, biWidth, biHeight positive (which means the rows are stored bottom-up), biPlanes 1, biBitCount 24, biCompression 0 (BI_RGB — uncompressed), biSizeImage, 2835 pixels per metre (≈72 dpi), and zero palette fields. The pixel array: image rows stored bottom-up, each pixel blue-green-red, each row padded with zero bytes to a multiple of four. 5. The file keeps its original name with the extension changed to .bmp, and the size before and after is shown.

JPG vs the BMP this tool writes
 JPGBMP (24-bit, as written here)
CompressionLossy — discards detail to save spaceNone — every pixel stored in full
File size for a 12 MP photoA few MB36,578,358 bytes (≈ 35 MB)
TransparencyNoNo — 24-bit BMP has no alpha, and a JPG has none to carry
QualityAlready lost to JPEG compressionExactly the pixels the JPG decoded to, and no more
Best forPhotos to share or uploadOld Windows programs, printers and software that insists on a bitmap

Worked examples

  • photo.jpg, a 2 × 2 image, → photo.bmp: a 70-byte BMP signed "BM" — the 54-byte header plus two rows of 6 bytes padded to 8 each.
  • A 5 × 2 image → an 86-byte BMP: each row is 15 bytes of pixels padded to 16, so the two rows take 32 bytes after the 54-byte header.
  • scan.jpeg, IMG_0001.JPG, download.jfif and a JPEG named photo.txt all convert — the bytes decide, never the name — and each becomes a .bmp with only its extension changed.
  • saved.jpg whose bytes are actually a PNG → no conversion; the tool says the file is really a PNG and to use a PNG tool. A WebP called .jpg is named and refused the same way.
  • A file that decodes to 0 × 0 pixels → refused: there are no pixels to write.
  • A 20000 × 10000 image → refused: it is over the 16,384-pixel-per-side limit a browser canvas can hold, so the BMP is never attempted.

How to use JPG to BMP Converter

  1. Click "Choose JPG images", drop files onto the box, or paste an image with Ctrl+V (Cmd+V on a Mac). Up to 50 at once, each up to 50 MB.
  2. Click "Convert to BMP". Each image is decoded and written as an uncompressed 24-bit BMP in your browser; nothing is uploaded.
  3. Click Download next to each .bmp, or "Download all (.zip)" for every file in one archive.

Common errors

  • The BMP is several times bigger than the JPG — expected: 24-bit BMP is uncompressed, so it stores every pixel in full. The results list shows the exact size increase per file. If size matters more than the format, keep the JPG.
  • The BMP looks no better than the JPG — correct: it is an exact copy of the JPG as it decoded. Converting to BMP cannot restore detail JPEG compression already removed.
  • "saved.jpg" is actually a PNG file, not JPG. The extension does not match the contents — use a PNG tool for this file. — the bytes are a different format whatever the name says; the message names it and the tool to use.
  • "t.jpg" is not a recognisable JPG file — its contents do not match any image or PDF format. It may be damaged, or a different kind of file renamed. — check the file opens in an image viewer, then upload it again.
  • "e.jpg" is empty (0 bytes). Choose the file again — it may not have finished downloading. — the download was incomplete, so fetch the file again.
  • "photo.jpg" could not be decoded as an image. The file may be damaged — try opening it in an image viewer. — the browser could not read the JPG's pixels, so there is nothing to write. Re-download the file, or re-save it from an image editor.
  • The image has no pixels to convert (its width or height is 0). — the JPG decoded to nothing, so it is damaged or empty. Check it opens in an image viewer, then try again.
  • The output would be 20000 × 10000 pixels — more than a browser can safely draw (100 megapixels, 16,384 px per side). Choose a smaller size. — resize the image smaller first, then convert it.
  • "photo.jpg" is 60.00 MB, over the 50.00 MB limit for this tool. Everything runs in your browser's memory, so very large files can crash the tab. — shrink the file first (resize or re-save it), then convert.

FAQ

How do I convert JPG to BMP for free?

Drop the JPG on this page, click "Convert to BMP" and download the result. It is free, has no watermark or sign-up, and works in any modern browser on a computer or phone.

Why is the BMP so much bigger than the JPG?

There is no compression in it. A 24-bit BMP stores three bytes for every pixel with no compression at all, while JPG throws detail away to shrink the file. For a 12-megapixel photo that is about 35 MB as a BMP against a few MB as a JPG.

Does converting JPG to BMP improve the quality?

No. The BMP holds exactly the pixels the JPG decoded to, so detail lost to JPEG compression stays lost. BMP's advantage is being uncompressed and universally readable, not sharper.

Can I choose a transparent background for the BMP?

No, and there is nothing to choose: a JPG has no transparency, and the 24-bit BMP written here has no alpha channel to store any in. Every pixel is opaque, exactly as in the JPG.

Why is there no quality or background setting?

Because neither applies. BMP here is uncompressed, so there is no quality level, and a JPG is fully opaque, so there is no background to fill in. The tool would be offering controls that could not change the output.

Will the BMP keep my photo's EXIF data and colour profile?

The orientation tag is applied, so the picture is written the way it looked, but the other EXIF fields (date, camera, GPS location) and any embedded colour profile are not copied — the colours are written as standard sRGB.

Are my JPGs uploaded when I convert them to BMP here?

No. The conversion runs entirely in your browser, and your images never leave your device. You can check in the Network tab of your browser's developer tools that no request carries them.

G

Prefer AllUtil on Google

One click adds AllUtil to your Google preferences. You'll see our tools highlighted with a Preferred badge in Search and AI answers.

2× more likely to clickWorks in AI Overviews