PNG to BMP Converter
- Transparent areas are laid onto #FFFFFF, because BMP carries no alpha channel here.
- The Exif data, the colour profile and anything else the original carried are not passed on: the picture is decoded to plain pixels and a new file is written from them.
- An animated PNG comes through as one picture — the image the format names as its default, or the first frame where it names none.
Needs JavaScript. Runs only here.
This page turns a PNG into a BMP on your own machine. Every conversion on this page runs in your browser. The picture is read, drawn and written on your own machine, and the file is not sent to a server.
How do you convert a PNG to a BMP?
A BMP stores the pixel array with nothing applied to it. Writing one from a PNG keeps every pixel, fills the clear areas with a colour, and produces a much larger file.
- Choose the PNG file you want to convert. It is read inside this page, on your own machine.
- Pick the colour that goes behind the clear areas. This page starts at #FFFFFF and states the colour it used, because the browser's own default would fill them with black.
- Select Convert to BMP. The page reads the first bytes of what came back and refuses the file if they are not BMP.
- Download the BMP. Nothing has been sent anywhere, so the file is ready as soon as it is written.
What Changes From PNG to BMP
PNG to BMP writes the pixels out with no compression, so the file grows sharply, and the transparency is flattened onto a background colour because the bitmap written here is opaque.
Each row below is one property of the picture: what it is in the PNG, what it becomes in the BMP, and whether it survives the trip. Convert a file and the same rows fill in with the measurements from your own picture.
| Property | In the PNG | In the BMP | Verdict |
|---|---|---|---|
| Dimensions | as the file has them | as the file has them | kept |
| Colour model and bit depth | RGB with alpha, 8 bits per channel | BGR, 8 bits per channel, 24 bits per pixel — 8 bits per sample, whatever the source held | changed |
| Alpha channel | present | flattened onto #FFFFFF | lost |
| Colours used | up to 16,777,216 | the same pixels | kept |
| Animation frames | 1, or several — PNG can carry an animation | 1 — the format’s default image, or the first frame where it names none | changed |
| Metadata (Exif, ICC) | present in the file | dropped — a new file is written from pixels | lost |
| Compression | lossless, deflate | none — the pixel array is stored uncompressed | changed |
| File size | the file you chose | much larger — the pixel array is stored uncompressed | changed |
the pixels survive; the transparency and the Exif data do not.
What Travels With the Picture
What the two formats are, and what the browser does with a picture on the way between them. None of this depends on which PNG you bring.
How PNG and BMP Are Defined
| Property | PNG | BMP |
|---|---|---|
| Compression | lossless - deflate with a sliding window of at most 32768 bytes (compression method 0) | normally none - the pixel array is stored uncompressed |
| Alpha channel | yes - a full alpha channel on colour types 4 and 6; a tRNS chunk gives a transparent colour key on types 0 and 2 and per-entry alpha on type 3 | not carried by the files this converter writes; a BMP written from a browser canvas is opaque |
| Animation | yes - APNG is normative in the Third Edition, using the acTL, fcTL and fdAT chunks | none - one image per file |
| In one sentence | PNG stores a picture without losing anything: the specification defines lossless as reconstructing the original data exactly, bit for bit. It carries an alpha channel, and since the Third Edition it can carry frame-based animation as well. | A BMP stores the pixel array with no compression, which is why a bitmap of the same picture is far larger than a PNG or a JPEG of it. |
- A PNG file begins 89 50 4E 47 0D 0A 1A 0A.
- A BMP file begins 42 4D ("BM"). The header field is the little-endian word 0x4D42..
- PNG is defined by PNG Specification (Third Edition), W3C Recommendation 24 June 2025; the Second Edition is ISO/IEC 15948:2004. The Third Edition is not itself an International Standard..
- BMP is defined by no international standard; Microsoft documents the BITMAPFILEHEADER and BITMAPINFOHEADER structures.
JPEG and lossy WebP save space by discarding picture detail, and what they discard does not come back. PNG, BMP and lossless WebP keep every pixel they are given, and GIF keeps every pixel it is left with after the palette has been applied.
PNG, GIF, WebP and ICO can carry transparency; JPEG cannot, because the standard defines no alpha channel, and a bitmap written here is opaque. Converting to a format without transparency fills the clear areas with a background colour.
PNG allows bit depths of 1, 2, 4, 8 and 16, and five colour types: greyscale, truecolour, indexed-colour, and each of greyscale and truecolour with alpha. Not every depth is legal for every type.
Converting a picture back to the format it came from does not return the original file. Whatever a step discarded stays discarded, and the return trip writes a third file.
The browser decodes the picture to plain pixels and writes a new file from them, so the Exif data, the colour profile and anything else the original carried are not passed on.
No browser writes BMP from a canvas. The file header and the pixel array have to be assembled in JavaScript from the canvas pixel data.
A file written from a canvas uses the bit depth that best preserves the canvas, so an ordinary eight-bit canvas writes eight bits per sample however deep the original was.
When a canvas is written to a format that has no alpha channel, the browser lays the picture over opaque black. A converter that wants any other background has to paint it first, and should say which colour it used.
Why Is a Bitmap So Large?
Nothing is compressed
A BMP stores the pixel array with no compression, which is why a bitmap of the same picture is far larger than a PNG or a JPEG of it.
What that costs, in round terms
Three bytes for every pixel, plus a header and a few padding bytes on each row. A picture's size in a BMP follows from its width and height alone, which is why two pictures of the same size come out the same length.
Why anyone still wants one
Because reading it needs no decoder. Older Windows software, some laboratory instruments and a good many embedded displays take a raw pixel array and nothing else, and a program that reads one needs no library and no licence of its own. On a small device that is worth more than any saving in bytes.
Common Mistakes
- Expecting the clear areas to survive. The BMP written here is opaque, so they take the background colour, #FFFFFF unless you change it.
- Expecting a smaller file. Storing every pixel outright is the point of the format, and no setting on this page changes that.
- Expecting the browser to write it. No browser does; this page assembles the file header and the pixel array itself, row by row, from the drawing surface.
Frequently Asked Questions
Why is a BMP so much larger than the PNG?
Because it applies no compression at all. normally none - the pixel array is stored uncompressed, so a picture of one flat colour costs the same as a photograph of the same width and height.
What happens to a PNG's transparency in a BMP?
It is laid onto the background colour and stops being clear. not carried by the files this converter writes; a BMP written from a browser canvas is opaque. Choose the colour before you convert: the bitmap keeps no record of where the clear areas were.
What software still needs a BMP file?
Older Windows tools, some laboratory and industrial instruments, and embedded displays that read a raw pixel array rather than running a decoder. Anything that maps a file straight into memory and draws it is happier with a bitmap.
Related Conversions
The rest of the family sits on what each image format keeps and drops.