What Is a BMP File? How to Open, Convert, and Compress Bitmap Images
BMP (Bitmap) is one of the oldest image formats — uncompressed, large, and still used in Windows and legacy software. Learn when BMP makes sense and how to convert it.
What Is a BMP File? How to Open, Convert, and Compress Bitmap Images
If you have encountered a .bmp file and wondered what it is — or why it is so much larger than a JPG of the same image — this guide has you covered. BMP is one of the oldest digital image formats, and while it is rarely used on the modern web, it still appears in Windows software, legacy systems, and certain professional workflows.
What Does BMP Stand For?
BMP stands for Bitmap. The name refers to how the file stores image data: as a direct map of pixel values, row by row, with no compression. Each pixel's colour (red, green, and blue values) is stored directly in the file.
The format was introduced by Microsoft in 1986 and became the native image format of Windows. It is sometimes called Device Independent Bitmap (DIB) in technical documentation.
Why Are BMP Files So Large?
The defining characteristic of BMP files is that they are uncompressed by default. Every pixel is stored explicitly.
A quick size comparison for a 1920×1080 image:
| Format | Approximate Size | |---|---| | BMP (24-bit) | ~6 MB | | PNG (lossless) | ~1–3 MB | | JPG (quality 85) | ~300–600 KB | | WebP (quality 80) | ~150–400 KB |
BMP stores the same visual information as PNG but takes 2–6× more space. For web use, there is almost never a good reason to use BMP over PNG.
When Is BMP Used?
Despite its size disadvantage, BMP remains relevant in specific contexts:
Windows system graphics — Windows Explorer, some control panel elements, and older Windows applications use BMP internally.
Legacy CAD and industrial software — older engineering and manufacturing applications export screenshots and reports as BMP files.
Intermediate format — some image processing pipelines use BMP as an intermediate format because its simplicity makes it easy to read and write without a library.
Print workflows — certain print shop software and RIP (Raster Image Processor) systems accept BMP files.
Embedded systems — microcontrollers and display firmware sometimes work directly with BMP because the format requires no decompression.
BMP File Structure
A BMP file has four sections:
- BITMAPFILEHEADER (14 bytes) — magic number
BM, total file size, offset to pixel data - BITMAPINFOHEADER (40 bytes) — image width, height, colour depth (bits per pixel), compression type
- Colour table (optional) — used for indexed-colour BMPs (1, 4, or 8 bits per pixel)
- Pixel data — raw RGB values, stored bottom-to-top by default, each row padded to a 4-byte boundary
The most common variant is 24-bit BMP (8 bits each for Red, Green, Blue) with no compression and no colour table. This is the variant SwiftConverts creates when you export to BMP.
How to Open BMP Files
BMP files are natively supported by virtually every operating system:
- Windows — double-click to open in Photos or Paint. No software needed.
- macOS — Preview opens BMP files natively.
- Linux — any image viewer (GNOME Files, Eye of GNOME, GIMP) opens BMP.
- Web browsers — Chrome, Firefox, Edge, and Safari all display BMP files.
If you cannot open a .bmp file, the file may be corrupted or the extension may be wrong. Try renaming it to .png or opening it in GIMP.
How to Convert BMP to Other Formats
BMP to JPG or PNG — the most common conversion. Use SwiftConverts Image Resize to upload a BMP file and export it as JPG, PNG, or WebP. This typically reduces the file size by 80–95%.
BMP to WebP — WebP achieves even smaller sizes than JPG with comparable quality. Ideal for web use.
BMP to PDF — use Image to PDF if you need to embed a BMP in a document.
All conversions happen in your browser — the BMP file is read locally using the Canvas API and re-encoded to your chosen format without uploading anything.
How to Convert Other Formats to BMP
You might need to create a BMP file for legacy software that only accepts that format.
SwiftConverts Image Resize supports BMP as an output format. Upload any JPG, PNG, WebP, GIF, or ICO file, select BMP as the output format, and download the result.
The output is a 24-bit uncompressed BMP compatible with all standard software.
BMP vs PNG: Which Should You Use?
Use PNG instead of BMP whenever possible. PNG is lossless (same quality), universally supported, and typically 50–80% smaller than BMP for photographic content and 70–90% smaller for graphics with flat colours.
The only reasons to choose BMP over PNG are:
- Your software specifically requires BMP and does not accept PNG
- You are working with embedded systems or firmware that expects raw BMP data
- You are dealing with a legacy workflow you cannot change
For everything else — websites, documents, sharing — PNG, JPG, or WebP are better choices.
BMP Transparency: A Common Pitfall
Standard 24-bit BMP does not support transparency. There is a 32-bit BMP variant that includes an alpha channel, but it is poorly supported outside of Windows GDI+ applications.
If you convert a transparent PNG to BMP, the transparent areas will be filled with a solid colour (SwiftConverts fills them with white to avoid the transparent-to-black artefact that occurs on some tools).
If you need transparency, use PNG or WebP instead of BMP.
Summary
BMP (Bitmap) is a legacy, uncompressed image format native to Windows. It is large, universally compatible, and still relevant in specific software ecosystems. For everyday use, PNG and WebP are better alternatives.
Key takeaways:
- BMP stores raw pixel data with no compression — resulting in large files
- 24-bit BMP is the most common variant (no transparency support)
- Convert BMP to PNG or JPG to reduce file size by 80–95%
- Use BMP output only when required by legacy software