WEBPery

WBMP

.wbmp

Wireless bitmap format from 1999 designed for early WAP feature phones. Monochrome (1-bit) only and effectively obsolete on modern devices.

specializedlossless

Origin and purpose

WBMP (Wireless Bitmap) is a 1-bit-per-pixel monochrome image format specified by the WAP Forum in 1999 as part of the WAP 1.x standard. It was designed for the early generation of mobile phones that supported WAP browsing: devices with monochrome LCD screens, severely limited memory, kilobit-per-second wireless connections, and CPUs that could not decode any meaningful compression.

The format's design priority was minimum decode complexity. A WBMP file is essentially a header followed by raw pixel data, where each bit represents one black-or-white pixel. There is no compression, no palette, no metadata, no animation, no transparency. The decoder logic fits in dozens of lines of C.

WBMP's relevance peaked between roughly 1999 and 2003 — the era of monochrome WAP-capable phones (Nokia 7110, Ericsson R380, early Siemens, early Motorola). By the mid-2000s, every mobile phone shipping had colour screens and could decode JPEG and GIF. WBMP became obsolete within a few years of its specification.

File structure

A WBMP file consists of:

  • Type field (variable-length integer) — type 0 means 1-bit black and white, the only widely-supported type.
  • Fix header field (single byte) — reserved, always 0x00.
  • Width (variable-length integer) — image width in pixels.
  • Height (variable-length integer) — image height in pixels.
  • Pixel data — raw bits, packed left-to-right, top-to-bottom, padded to a byte boundary per row.

The variable-length integer format encodes small numbers efficiently: 1-127 fit in a single byte, 128-16383 fit in two bytes, and so on. This was a meaningful optimisation when every byte mattered.

A 96×64 WBMP file (a typical early-phone screen resolution) is roughly 770 bytes. The same image as PNG would be 200-400 bytes. The compression overhead of PNG was deemed too costly for the original target devices but no longer matters today.

Why WBMP is obsolete

Every constraint that justified WBMP's design has been removed:

  • Mobile screens are not monochrome. Every modern phone has full colour at high resolution.
  • Mobile CPUs handle decompression trivially. Even a 1990s desktop could decode PNG in milliseconds; modern phones decode WebP and AVIF in microseconds.
  • Mobile bandwidth is dramatically higher. WAP topped out at a few kilobits per second; modern mobile is multiple megabits.
  • Mobile browsers support all standard image formats. Every smartphone browser supports JPEG, PNG, GIF, WebP, AVIF.

There is no scenario in 2026 where shipping WBMP to a mobile device is the right answer. Even legacy WAP gateways have largely been decommissioned.

Browser support

Modern web browsers do not render WBMP. The MIME type (image/vnd.wap.wbmp) is recognised by some servers but no current browser will display the image.

The only systems that still render WBMP are:

  • Vintage phone emulators used for retro-computing and museum exhibitions.
  • WAP browser emulators used by communications-history researchers.
  • The original target devices, almost all of which have been retired.

Modern relevance

WBMP matters for:

  • Historical preservation. Documentation of mobile web history, museum exhibitions.
  • Retro-computing hobbyists. Reproducing original WAP content for vintage phone collections.
  • Format conversion exercises. A simple format that's easy to parse, useful for teaching.
  • Embedded displays. A handful of very-low-power monochrome displays still use 1-bit image data; whether they explicitly use WBMP or a custom format varies.

WBMP does not matter for:

  • Modern mobile web. Every device handles modern formats.
  • Any production web context. Even the smallest viable images are better as PNG, WebP, or SVG.
  • Email, document embedding, social sharing. Universal incompatibility with modern tools.
  • Any new use case. Choose a current format.

Conversion

For the rare case where you need to handle a WBMP file — typically importing legacy content — conversion tools include:

  • ImageMagick — reads and writes WBMP:
    convert input.wbmp output.png
    
  • libgd — the GD graphics library supports WBMP for backwards compatibility.
  • Custom parsers — the format is simple enough that ad-hoc parsers can be written in any language in a few dozen lines.

For converting to WBMP (almost certainly the wrong thing to do):

convert input.png -threshold 50% -type bilevel output.wbmp

The -threshold 50% step converts the image to pure black and white, since WBMP only supports two colours per pixel.

When to use WBMP today

There is no meaningful scenario in 2026 where WBMP is the right format to ship. The closest cases:

  • A historical reconstruction or museum exhibit that wants authentic period content.
  • An embedded display project that has documented WBMP support and would benefit from the standard's existence.
  • A teaching example that uses WBMP's simplicity to demonstrate raw image parsing.

For every other case, choose a current format:

  • PNG for lossless raster.
  • WebP for lossless or lossy with smaller files.
  • SVG for vector content.
  • AVIF for newest-generation compression.

See WebP format overview for the recommended modern default.

Historical context: the broader picture

WBMP is one of several short-lived image formats from the WAP era that have left almost no footprint. Others include:

  • WMLScript Image Library extensions — never widely implemented.
  • Various carrier-specific binary formats — used by NTT DoCoMo's i-mode and similar regional standards.

The whole category was made obsolete by the rapid maturation of mobile browsers and the smartphone revolution after 2007. The format's continued recognition by ImageMagick and a few other libraries is purely for backwards-compatible decoding of existing files; nothing new is being produced.

For an image format that did survive the transition from feature phone to smartphone — and remains the right default for many use cases — see PNG Format, JPG Format, and WebP format overview.

Further reading