What is a BMP File? Complete Format Guide — History, Structure & Size
.bmp or .dib extension. Today, converting BMP to PNG gives you a pixel-identical file that is 5–15× smaller.
BMP is one of the oldest image formats still in common use. It was designed in an era before compression was practical, so its structure is brutally simple: header metadata, then every pixel's color stored as raw bytes, row by row. That simplicity is both its strength (no compatibility issues, no encoding decisions) and its massive weakness (enormous file sizes that haven't been justified since the mid-1990s).
What Does BMP Stand For?
BMP stands for Bitmap. The full technical name is Device Independent Bitmap (DIB). The "Device Independent" part was meaningful at launch in 1987: color values are stored in a way that doesn't depend on any specific display's color capabilities, so the same file renders correctly across different hardware. The DIB format was a significant improvement over earlier display-device-specific formats.
BMP files use two extensions: .bmp (most common) and .dib (Device Independent Bitmap — the more technically accurate name, rarely seen today).
A Brief History of BMP
Microsoft introduced the BMP format alongside Windows 1.0 in 1987, designed to be the native image format for the Windows operating system. It was also adopted by OS/2. At the time, most image storage used device-specific formats that only worked on the hardware they were created for — BMP solved this with a device-independent specification.
Through the late 1980s and early 1990s, BMP was the dominant image format on Windows. Windows Paint saved BMP by default. Windows wallpapers were BMP files. System icons were BMP. The format worked perfectly for its era — hard drives were small, images were small, and the lack of compression didn't matter much for 320×200 pixel images.
By the mid-1990s, JPEG (1992) and PNG (1996) had made BMP obsolete for almost all practical purposes. JPEG compressed photographs to a fraction of the BMP size. PNG offered lossless compression with full transparency. BMP never evolved — it remained the same uncompressed format while better alternatives proliferated.
Today, BMP persists mainly in legacy contexts: old scanning software, certain game engines, some CAD tools, and Windows system internals. New BMP files are created almost exclusively by software that hasn't been updated in decades.
How BMP Stores Image Data
Understanding BMP's storage model explains exactly why files are so large and why conversion to PNG or JPEG is so beneficial.
- No compression by default: Each pixel's color is stored as raw bytes — no entropy coding, no run-length encoding (RLE is supported but almost never used), no DCT, nothing.
- Bottom-to-top row order: Unusually, BMP stores image rows starting from the bottom of the image and going up. This is the opposite of nearly every other image format. Most decoders handle this transparently, but it's the reason BMP images occasionally appear upside-down in buggy software.
- Row padding to 4-byte boundaries: Each row of pixel data is padded with zero bytes to ensure its length is a multiple of 4 (a DWORD boundary). A 100-pixel-wide 24-bit image has rows of 300 bytes (100×3), padded to 300 bytes (already a multiple of 4). A 101-pixel-wide image has rows of 303 bytes, padded to 304 bytes. This adds a small overhead for odd-width images.
- True RGB values: 24-bit BMP stores colors as exactly 3 bytes per pixel in Blue-Green-Red order (not RGB — another legacy quirk from Windows' little-endian convention).
The BMP File Size Formula
Unlike PNG or JPEG, where file size depends on image content, BMP file size is deterministic. You can calculate it exactly from dimensions and color depth:
| Resolution | Color Depth | BMP Size | PNG Equivalent | JPEG (Q85) Equivalent |
|---|---|---|---|---|
| 800×600 | 24-bit | 1.37 MB | 50–300 KB | 40–150 KB |
| 1920×1080 | 24-bit | 5.93 MB | 300 KB–2 MB | 200 KB–1 MB |
| 3840×2160 (4K) | 24-bit | 23.7 MB | 1–5 MB | 600 KB–3 MB |
| 1920×1080 | 32-bit | 7.91 MB | 300 KB–2 MB | N/A (no alpha) |
| 640×480 | 8-bit | 301 KB | 10–100 KB | 15–80 KB |
Notice that BMP size is a fixed value for a given resolution and color depth. PNG and JPEG sizes are ranges — they depend on image content (photographs compress less than flat-color graphics in PNG; JPEG quality affects size dramatically).
BMP Color Depths Explained
BMP supports six color depths. Each stores a different number of colors and produces different file sizes:
| Bit Depth | Colors | Bytes/Pixel | Used For | Has Color Table? |
|---|---|---|---|---|
| 1-bit | 2 (monochrome) | 0.125 | Black & white text, fax | Yes (2 entries) |
| 4-bit | 16 | 0.5 | Legacy EGA displays | Yes (16 entries) |
| 8-bit | 256 | 1 | Simple graphics, icons | Yes (256 entries) |
| 16-bit | 32,768 or 65,536 | 2 | High-color displays | No |
| 24-bit | 16,777,216 (true color) | 3 | Standard photographs, all modern use | No |
| 32-bit | 16.7M + alpha | 4 | Transparency (inconsistent support) | No |
24-bit is by far the most common BMP you'll encounter in practice. 8-bit BMP uses a color table (palette) — a lookup table of up to 256 colors stored between the header and pixel data. Each pixel then stores an index into that table rather than a full RGB value.
BMP File Structure — What's Inside the Header
Every BMP file begins with a 14-byte file header followed by a DIB (Device Independent Bitmap) header. The most common DIB header is the BITMAPINFOHEADER, which is 40 bytes long. Together, that's 54 bytes of header before the first pixel.
The first two bytes of every valid BMP are 0x42 0x4D — the ASCII characters "BM". This signature is how software identifies a BMP file without relying on the extension.
BMP vs PNG vs JPEG vs WebP vs TIFF
Here is how BMP compares to the formats that replaced it:
| Property | BMP | PNG | JPEG | WebP | TIFF |
|---|---|---|---|---|---|
| Compression | None | Lossless | Lossy | Lossy or lossless | Lossless or lossy |
| File size (photo) | Largest | Medium | Smallest | Smallest | Large |
| Quality loss | None | None | Yes (lossy) | Optional | None (lossless mode) |
| Transparency | No (24-bit) | Full alpha | No | Full alpha | Full alpha |
| Metadata/EXIF | None | Limited | Full EXIF | EXIF + XMP | Full EXIF |
| Browser support | Poor/slow | Universal | Universal | All modern | None |
| Best for | Legacy only | Graphics, web | Photos, web | Web images | Print, archival |
Convert Your BMP Files — Free, Lossless, Instant
PNG gives you the same pixel-perfect quality at 5–15× smaller file size. No upload needed — runs in your browser.
Who Still Uses BMP Today?
BMP is essentially obsolete for new work, but it persists in specific legacy contexts:
- Windows Paint (older versions): Windows XP and earlier versions of Paint defaulted to saving BMP. Users who haven't changed the save format still produce BMP files from this tool. Windows 10+ Paint now defaults to PNG.
- Legacy scanning software: Flatbed scanners and all-in-one printers from the 2000s often ship with scanning software that only supports BMP as its native format. The hardware is still functional; the software hasn't been updated.
- Some game engines and tools: Early game development tools used BMP for spritesheets and textures. Some retro game engines and modding tools still read/write BMP natively.
- CAD and technical software: Certain engineering applications export screenshots and diagrams as BMP. Many industrial CAD packages have not updated their export functionality in years.
- Windows system internals: Some Windows resources and system images historically used BMP. This has largely been phased out in modern Windows versions.
- Archival collections: Organizations that digitized documents in the 1990s and 2000s may have large BMP archives — converting these to PNG is one of the most straightforward format migrations possible.
BMP Pros and Cons
Advantages
- Lossless — every pixel stored exactly
- Simple structure — easy to implement in software
- No encoding decisions required
- Native Windows format — opens without drivers
- No patent or licensing issues
- Deterministic file size
Disadvantages
- Enormous file sizes with no benefit over PNG
- No transparency in 24-bit (most common variant)
- No EXIF or metadata support
- No color profile embedding
- Slow to display in browsers
- Rarely accepted by modern web apps and CMSs
- No multi-page or animation support
How to Open BMP Files
Opening BMP files is straightforward on all major platforms. On Windows: double-click opens it in Photos. Windows Paint also opens BMP natively. On Mac: double-click opens it in Preview. Online: drag any BMP file into a Chrome, Firefox, or Edge tab — browsers render BMP without plugins. For the full guide with all methods including mobile and command-line, see our How to Open BMP Files guide.
How to Convert BMP Files
The most common conversions and the fastest way to do each:
- BMP to PNG: Convertlo BMP to PNG converter — browser-based, no upload, pixel-perfect, 5–15× smaller result.
- BMP to JPEG: 7 methods including browser tool, Windows Paint, and command-line.
- BMP to WebP: Main converter at convertlo.pro → Image tab → BMP to WebP.
- BMP to PDF: Windows: right-click → Print → Microsoft Print to PDF. Mac: open in Preview → File → Export as PDF.