Convert JPG to BMP

A plain 24-bit bitmap from your JPG, for the program that will not open anything else.

Convert JPG photos to 24-bit BMP for legacy Windows software, embroidery, label printers and microcontroller displays. It is free, needs no account and adds no watermark, and your files are not uploaded: everything runs in your browser on your device. The size limit is your device’s memory, and phones hold less; give the page a short while after one visit to save itself for offline use, and then it works offline.

Drop JPG files hereor click to choose files. Batches welcome.

    Working…

    Done

    Free, no ads. Support StayPut

    Your files are processed on this device and never sent to a server. Reload the page to clear everything from memory.

    You usually end up here because a program on the other end is fussy. Old Windows utilities, embroidery digitising software, thermal label printers, sign-cutting and engraving tools, and display libraries on Arduino and ESP32 boards often read a bitmap and nothing else. A JPG straight from a phone or camera is refused, so you convert it once and carry on. This page writes the plainest kind of BMP: uncompressed, 24 bits per pixel, no palette.

    The new file is far bigger than the photo. A JPG stores a compressed approximation, while a BMP keeps three bytes for every pixel, rounded up to a multiple of four bytes per row. A 12-megapixel photo of 4000 by 3000 pixels, which is a JPG of a few megabytes, comes out as a BMP of exactly 36,000,054 bytes, about 34 MiB. Size follows pixel count, not detail, so a plain sky costs as much as a crowd. If the target device has little storage, shrink the picture to the size it will actually show before converting.

    Converting does not bring back anything the JPG already lost. The blocky patches and smeared edges from JPEG compression are decoded into the bitmap as they are, and a BMP cannot repair them. Start from the best-quality JPG you have, and do not expect the larger file to look better.

    The width and height stay the same as the JPG, and the rotation flag is applied so the bitmap is upright. A JPG has no transparency, so there is no background to choose. EXIF data, including the camera, date and GPS position, is not kept: a BMP has no place for it, which is handy before handing a picture to someone else.

    If you start from a PNG, the PNG to BMP converter does the same job and handles transparent areas. To go the other way and shrink a bitmap back to a small file, use BMP to JPG. If the software asking for a BMP really wants a TIFF, JPG to TIFF is the page for that.

    How it works

    1. Drop your JPG files onto the page, or tap to pick them. Batches are fine.
    2. Pick a background colour for any transparent areas, since BMP here is 24-bit with no alpha channel.
    3. Download each BMP, or all of them as one zip.

    In your browser, not on a server

    Stayput first reads the opening bytes of each file, where every image format writes its signature, so it knows what the file really is whatever it is called. Your browser decodes JPG, PNG, WebP, GIF, BMP, AVIF and SVG itself; TIFF goes through UTIF.js, HEIC through the libheif WebAssembly decoder, and JPEG XL (or AVIF, in a browser without native support) through the Squoosh decoders, all served from this site and cached. The browser re-encodes JPG, PNG and WebP; PDF, ICO, GIF, BMP and TIFF files are written by small encoders in the page. Nothing here needs a server.

    Compared with upload-based tools: Online converters upload your image, convert it on their machine, keep it for hours and cap you at a few files a day. This does the same conversion on your device, for as many files as your device’s memory can hold, with no upload to wait for.

    Verify it yourself. Give the page a short while after one visit to save itself for offline use, then turn off Wi-Fi or switch to airplane mode and run the tool again. Or open your browser's developer tools (F12, or Cmd-Option-I on a Mac), pick the Network tab, and watch it while you convert. The panel above does the same count for you.

    Questions

    Which kind of BMP does this make?

    An uncompressed 24-bit BMP with a standard 40-byte header and bottom-up rows, each padded to a multiple of four bytes. It has no palette and no alpha channel, which is the variant the widest range of old and embedded software reads.

    How big will the BMP be?

    The file is 54 bytes plus three bytes per pixel, with each row rounded up to a multiple of four bytes. A 1,000 × 1,000 image is about 3 MB and a 12-megapixel photo, 4000 × 3000, is 36,000,054 bytes, roughly 34 MiB, whatever the JPG weighed.

    Will the BMP look better than the JPG?

    No. It looks the same, including the compression artefacts the JPG already has. BMP stops further loss; it cannot restore detail.

    Does it keep the EXIF data?

    No. Camera, date and location are not written to the BMP. The orientation is applied, so the picture is upright.

    A progressive or CMYK JPG will not convert. Why?

    Progressive JPGs convert normally. A CMYK JPG, the kind some print workflows save, may not open in every browser; if so the page says it cannot read the file, and re-saving the image as RGB in an editor fixes it.

    My device needs a 1-bit, 8-bit or 16-bit bitmap. Will this work?

    Not directly. This page writes 24-bit colour. Most tools that need a lower depth can convert from a 24-bit BMP, and 24-bit is the input they are most likely to support.

    Are my photos uploaded?

    No. The JPG is decoded and the bitmap is written byte by byte in this tab. Your files are not uploaded.

    More image tools

    Other conversions

    Guides