BMP to PNG converter

Convert BMP images to PNG for free, right in your browser — no sign-up, no upload.

BMP to PNG is the safe way to shrink a BMP: both formats are lossless, so the PNG has exactly the same pixels, only compressed. How much you save depends on the content — a 512 × 512 photo went from 786,486 to 575,694 bytes (−27 %), while a 203 × 186 tile sheet with flat colours went from 113,886 to 16,685 bytes (−85 %). The width and height are unchanged, and no quality setting is involved.

Drop image files hereProcess many files at once
No upload · processed on this device

Why BMPs are so large

The common BMP stores every pixel as three raw bytes (blue, green, red) with no compression, and pads each row to a multiple of 4 bytes. Its size is therefore fixed by the dimensions: 54 header bytes + height × padded row length. MDN recommends avoiding BMP for web content for exactly this reason.

PNG predicts each pixel from its neighbours and compresses the difference losslessly. Flat colour, text and pixel art predict almost perfectly and shrink dramatically; camera noise does not, so photos shrink only moderately. Either way nothing is lost — the measured PNGs decode to the very same pixels as the BMPs.

Uncompressed
Raw pixel bytes; the file size depends only on width and height.
Row padding
Each BMP row is rounded up to a multiple of 4 bytes.
Lossless
The PNG decodes to exactly the pixels the BMP held.

Size arithmetic and two measured files

BMP sizes computed from the format; PNG sizes measured with Nerulio's converter in Chromium 153 on 2026-09-28 (BMPs written by Pillow 12.3 from the repository fixtures).

Photo   512 x 512:  row = 512 x 3 = 1,536 bytes (already a multiple of 4)
        54 + 512 x 1,536 = 786,486 bytes BMP  ->  575,694 bytes PNG  (-27 %)

Tiles   203 x 186:  row = 203 x 3 = 609 -> padded to 612 bytes
        54 + 186 x 612   = 113,886 bytes BMP  ->   16,685 bytes PNG  (-85 %)

Pixels changed in both PNGs: 0

The tile sheet is Kenney's CC0 Tiny Dungeon tilemap flattened onto black; as lossless WebP (quality 100) it shrank further to 6,318 bytes, also pixel-exact.

What the PNG keeps

In the BMPWhat the converter doesIn the PNG
24-bit pixelsStored losslesslyIdentical pixels
Row padding and bottom-up orderHandled by the browser's decoderNot needed in PNG
File size tied to dimensionsReplaced by DEFLATE compressionSize depends on content
Header resolution (DPI) fieldsNot copiedNo DPI information

Check the result

  • Open both files at 100 %: they must look identical, because both formats are lossless.
  • Check that width and height match the BMP.
  • Compare the byte counts: screenshots and graphics usually shrink far more than photos.

Troubleshooting

SymptomLikely causeHow to checkFix
"This image cannot be opened"An unusual BMP variant (compressed, odd bit depth) the browser does not decodeOpen the BMP directly in the browserRe-save it as a standard 24-bit BMP or PNG in the program that made it
The PNG is only a little smallerA photo: noise compresses poorly even in PNGCompare sizesFor photos, BMP to JPG is ten times smaller
Print size changed in a layout programBMP DPI fields are not copied, so the program assumes its defaultLook at the image's DPI in that programSet the size in the layout program; the pixel dimensions are unchanged
Colours look different in an old viewerThe PNG has no colour profile, the viewer may treat colours differentlyCompare in a browserUse a current viewer; the pixel values are identical

Other ways to do it

OptionWhen it is the better choice
BMP to JPGCamera photos where a tenth of the size matters more than exact pixels.
Convert to WebP at quality 100The target reads WebP: lossless and smaller still (6,318 vs 16,685 bytes for the tile sheet).

What this page does not cover

  • Only BMP variants the browser decodes can be read.
  • DPI and other header fields are not carried over.

Versions and sources

BMP sizes follow the layout MDN describes (3 bytes per pixel, rows padded to 4 bytes). PNG sizes and the zero-difference check were measured on 2026-09-28 in Playwright Chromium 153 with Nerulio's converter path, on BMPs written by Pillow 12.3 from tests/fixtures/astronaut.png and tests/fixtures/kenney/tiny-dungeon-tilemap.png.

Official documentation used

BMP to PNG converter

BMP is an old, uncompressed format, so files are very large.

PNG is lossless and supports transparency — ideal for logos, screenshots and graphics, but large for photos.

Your file is never uploaded — it is processed inside this browser.

Example

Original geometric sample · 96 × 64
Original geometric sample · 96 × 64
Processed sample · 96 × 64
Processed sample · 96 × 64

Example generated with this tool. ZIP tools show their preview; inspect the downloaded archive for every file.

Convert image

Export PNG, JPG or WebP. JPG flattens transparency.

How it works

  1. Open an image
  2. Select PNG, JPG or WebP
  3. Convert and download the new file

Supported formats

PNG / JPG / WebP / AVIF / HEIC → PNG / JPG / WebP — Input decoding and output encoding depend on browser support. Animated inputs are rejected; select a still frame first.

What this tool does

Re-encodes the image into the selected format rather than renaming its extension.

Implementation and verified quality

advanced · browser image codecs. Quality qualification is in progress. Pro/Flagship quality has not been established.

Before you export

JPG has no transparency. Canvas export does not promise preservation of metadata, color profiles or animation.

Frequently asked questions

Which format keeps a transparent background?

Choose PNG or WebP. JPG flattens transparency onto the selected background color.

Are my files uploaded?

This tool processes the files you open on your device without uploading them. Images you explicitly attach to community posts are uploaded separately. Optional engines and models are downloaded from third parties; those requests expose connection information such as your IP address.

Will my work be saved automatically?

No. Images and editing state stay in this tab; media output can use local temporary storage. Changing language preserves your work; reloading, closing the tab, or following a link to another page can clear it.