List of monochrome and RGB color formats

This list of monochrome and RGB palettes includes generic repertoires of colors (color palettes) to produce black-and-white and RGB color pictures by a computer's display hardware. RGB is the most common method to produce colors for displays; so these complete RGB color repertoires have every possible combination of R-G-B triplets within any given maximum number of levels per component.

Each palette is represented by a series of color patches. When the number of colors is low, a 1-pixel-size version of the palette appears below it, for easily comparing relative palette sizes. Huge palettes are given directly in one-color-per-pixel color patches.

For each unique palette, an image color test chart and sample image (truecolor original follows) rendered with that palette (without dithering) are given. The test chart shows the full 256 levels of the red, green, and blue (RGB) primary colors and cyan, magenta, and yellow complementary colors, along with a full 256-level grayscale. Gradients of RGB intermediate colors (orange, lime green, sea green, sky blue, violet, and fuchsia), and a full hue spectrum are also present. Color charts are not gamma corrected.

RGB 24bits palette sample image.jpg RGB 24bits palette color test chart.png

These elements illustrate the color depth and distribution of the colors of any given palette, and the sample image indicates how the color selection of such palettes could represent real-life images. These images are not necessarily representative of how the image would be displayed on the original graphics hardware, as the hardware may have additional limitations regarding the maximum display resolution, pixel aspect ratio and color placement.

Implementation of these formats is specific to each machine. Therefore, the number of colors that can be simultaneously displayed in a given text or graphic mode might be different. Also, the actual displayed colors are subject to the output format used - PAL or NTSC, composite or component video, etc. - and might be slightly different. For simulated images and specific hardware and alternate methods to produce colors other than RGB (ex: composite), see the List of 8-bit computer hardware palettes, the List of 16-bit computer hardware palettes and the List of video game console palettes. For various software arrangements and sorts of colors, including other possible full RGB arrangements within 8-bit color depth displays, see the List of software palettes.

Monochrome palettesEdit

These palettes only have some shades of gray, from black to white, both considered the most possible darker and lighter "grays", respectively. The general rule is that those palettes have 2n different shades of gray, where n is the number of bits needed to represent a single pixel.

Monochrome (1-bit)Edit

Monochrome graphics displays typically have a black background with a white or light gray image, though green and amber monochrome monitors were also common. Such a palette requires only one bit per pixel.


Where photo-realism was desired, these early computer systems had a heavy reliance on dithering to make up for the limits of the technology.


In some systems, as Hercules and CGA graphic cards for the IBM PC, a bit value of 1 represents white pixels (light on) and a value of 0 the black ones (light off); others, like the Atari ST and Apple Macintosh with monochrome monitors, a bit value of 0 means a white pixel (no ink) and a value of 1 means a black pixel (dot of ink), which it approximates to the printing logic.

2-bit GrayscaleEdit

In a 2-bit color palette each pixel's value is represented by 2 bits resulting in a 4-value palette (22 = 4).


2-bit dithering:


It has black, white and two intermediate levels of gray as follows:


A monochrome 2-bit palette is used on:

4-bit GrayscaleEdit

In a 4-bit color palette each pixel's value is represented by 4 bits resulting in a 16-value palette (24 = 16):


4-bit grayscale dithering does a fairly good job of reducing visible banding of the level changes:


A monochrome 4-bit palette is used on:

8-bit GrayscaleEdit


In an 8-bit color palette each pixel's value is represented by 8 bits resulting in a 256-value palette (28 = 256). This is usually the maximum number of grays in ordinary monochrome systems; each image pixel occupies a single memory byte.


Most scanners can capture images in 8-bit grayscale, and image file formats like TIFF and JPEG natively support this monochrome palette size.

Alpha channels employed for video overlay also use (conceptually) this palette. The gray level indicates the opacity of the blended image pixel over the background image pixel.

Dichrome palettesEdit

16-bit RG paletteEdit

Additive RG Additive RG color palette

16-bit RB paletteEdit

Additive RB Additive RB color palette

16-bit GB paletteEdit

Additive GB Additive GB color palette

Regular RGB palettesEdit

Here are grouped those full RGB hardware palettes that have the same number of binary levels (i.e., the same number of bits) for every red, green and blue components using the full RGB color model. Thus, the total number of colors are always the number of possible levels by component, n, raised to a power of 3: n×n×n = n3.

3-bit RGBEdit


3-bit RGB dithering:


Systems with a 3-bit RGB palette use 1 bit for each of the red, green and blue color components. That is, each component is either "on" or "off" with no intermediate states. This results in an 8-color palette ((21)3 = 23 = 8) that have black, white, the three RGB primary colors red, green and blue and their correspondent complementary colors cyan, magenta and yellow as follows:


The color indices vary between implementations; therefore, index numbers are not given.

The 3-bit RGB palette is used by:

3-level RGBEdit


3-level RGB dithering:


The 3-level ('not' bits) RGB uses three levels for every red, green and blue color component, resulting in a 33 = 27 colors palette as follows:


This palette is used by:

6-bit RGBEdit


Systems with a 6-bit RGB palette use 2 bits for each of the red, green, and blue color components. This results in a (22)3 = 43 = 64-color palette as follows:


6-bit RGB systems include the following:

9-bit RGBEdit


Systems with a 9-bit RGB palette use 3 bits for each of the red, green, and blue color components. This results in a (23)3 = 83 = 512-color palette as follows:


9-bit RGB systems include the following:

12-bit RGBEdit


Systems with a 12-bit RGB palette use 4 bits for each of the red, green, and blue color components. This results in a (24)3 = 163 = 4096-color palette. 12-bit color can be represented with three hexadecimal digits, also known as shorthand hexadecimal form, which is commonly used in web design. The palette is as follows:


12-bit RGB systems include the following:

The Allegro library supported in the (legacy) version 4, an emulated 12-bit color mode example code ("ex12bit.c"), using 8-bit indexed color in VGA/SVGA. It used two pixels for each emulated pixel, paired horizontally, and a specifically adapted 256-color palette. One range of the palette was many brightnesses of one primary color (say green), and another range of the other two primaries mixed together at different amounts and brightnesses (red and blue). It effectively reduced the horizontal resolution by half, but allowed a 12-bit "true color" in DOS and other 8-bit VGA/SVGA modes. The effect also somewhat reduced the total brightness of the screen.[3]


15-bit RGBEdit


Systems with a 15-bit RGB palette use 5 bits for each of the red, green, and blue color components. This results in a (25)3 = 323 = 32,768-color palette (commonly known as Highcolor) as follows:


15-bit systems include:

18-bit RGBEdit


Systems with an 18-bit RGB palette use 6 bits for each of the red, green, and blue color components. This results in a (26)3 = 643 = 262,144-color palette as follows:


18-bit RGB systems include the following:

24-bit RGBEdit


Often known as truecolor and millions of colors, 24-bit color is the highest color depth normally used, and is available on most modern display systems and software. Its color palette contains (28)3 = 2563 = 16,777,216 colors. 24-bit color can be represented with six hexadecimal digits. This is approximately the number of individual colors the human eye can distinguish within the limited gamut of a typical display[citation needed].

All 16,777,216 colors (downscaled, click image for full resolution).

The complete palette (shown above) needs a squared image of 4,096 pixels wide (50.33 MB uncompressed), and there is not enough room in this page to show it at full.

This can be imagined as 256 stacked squares like the following, every one of them having the same given value for the red component, from 0 to 255.

The color transitions in these patches must be seen as continuous. If color stepping (banding) inside is visible, then probably the display is set to a Highcolor (15- or 16- bits RGB, 32,768 or 65,536 colors) mode or lesser.

Red = 0
Red = 85 (1/3 of 255)
Red = 170 (2/3 of 255)
Red = 255
All 16,777,216 colors in the same pattern as the other RGB palettes above (downscaled, click image for full resolution).

This is also the number of colors used in true color image files, like Truevision TGA, TIFF, JPEG (the last internally encoded as YCbCr) and Windows Bitmap, captured with scanners and digital cameras, as well as those created with 3D computer graphics software.

24-bit RGB systems include:

30-bit RGBEdit

Some newer graphics cards support 30-bit RGB and higher. Its color palette contains (210)3 = 10243 = 1,073,741,824 colors. However, there are few operating systems or applications that support this mode yet. For some people, it may be hard to distinguish between higher color palettes than 24-bit color offers. However, the range of luminance, or gray scale, offered in a 30-bit color system would have 1,024 levels of luminance rather than the 256 of the common standard 24-bit, to which the human eye is more sensitive than to hue. This reduces the banding effect for gradients across large areas.[4]

Non-regular RGB palettesEdit

These also are full RGB palette repertories, but either they do not have the same number of levels for every red, green and blue components, or they are bit levels based. Nevertheless, all of them are used in very popular personal computers.

For further details on color palettes for these systems, see the article List of 8-bit computer hardware palettes.

4-bit RGBIEdit


The 4-bit RGBI palette is similar to the 3-bit RGB palette but adds one bit for intensity. This allows each of the colors of the 3-bit palette to have a dark and bright variant, potentially giving a total of 23×2 = 16 colors. However, some implementations had only 15 effective colors due to the "dark" and "bright" variations of black being displayed identically.

This 4-bit RGBI schema is used in several platforms with variations, so the table given below is a simple reference for the palette richness, and not an actual implemented palette. For this reason, no numbers are assigned to each color, and color order is arbitrary.


Note that "dark white" is a lighter gray than "bright black" in this example.

IBM PC graphicsEdit


A common use of 4-bit RGBI was on IBM PCs and compatible computers that used a 9-pin DE-9 connector for color output. These computers used a modified "dark yellow" color that appeared to be brown. On displays designed for the IBM PC, setting a color "bright" added ⅓ of the maximum to all three channels' brightness, so the "bright" colors were whiter shades of their 3-bit counterparts. Each of the other bits increased a channel by ⅔, except that dark yellow had only ⅓ green and was therefore brown instead of ochre.[5]

PC graphics standards using this RGBI mode include:

The CGA palette is also used by default by IBM's later EGA, MCGA, and VGA graphics standards for backward compatibility, but these standards allow the palette to be changed, since they either provide extra video signal lines or use analog RGB output.

The MOS Technology 8563 and 8568 Video Display Controller chips used on the Commodore 128 series for its 80-column mode (and the unreleased Commodore 900 workstation) also used the same palette used on the IBM PC, since these chips were designed to work with existing CGA PC monitors.

Other usesEdit

Other systems using a variation of the 4-bit RGBI mode include:

  • The ZX Spectrum series of computers, which lack distinct "dark" and "light" black colors, resulting in an effective 15-color palette.[6]
  • The Sharp MZ-800 series computers.[7]
  • The Thomson MO5 and TO7 where the intensity bit created a variation of both brightness and saturation.

8-bit RGB (also known as 3-3-2 bit RGB)Edit


The 3-3-2 bit RGB use 3 bits for each of the red and green color components, and 2 bits for the blue component, due to the lesser sensitivity of the common human eye to this primary color. This results in an 8×8×4 = 256-color palette as follows:


This palette is used by

  • The MSX2 series of personal computers.
  • Palette 4 of the IBM PGC (palette 2 gives 2-3-3 bit RGB and palette 3 gives 3-2-3 bit RGB).
  • Enterprise Computer
  • VGA built-in output of the Digilent Inc. NEXYS 2, NEXYS 3 and BASYS2 FPGA boards.
  • The Uzebox gaming console
  • SGI Indy 8-bit XL graphics
  • The Tiki 100 personal computer (only 16 colors can be displayed simultaneously)
  • Wear OS smartwatches with ambient displays (only 16 colors can be displayed simultaneously)

16-bit RGBEdit


Most modern systems support 16-bit color. It is sometimes referred to as Highcolor (along with the 15-bit RGB), medium color or thousands of colors. It utilizes a color palette of 32×64×32 = 65,536 colors. Usually, there are 5 bits allocated for the red and blue color components (32 levels each) and 6 bits for the green component (64 levels), due to the greater sensitivity of the common human eye to this color. This doubles the 15-bit RGB palette.

The 16-bit RGB palette using 6 bits for the green component:


The Atari Falcon and the Extended Graphics Array (XGA) for IBM PS/2 use the 16-bit RGB palette.

It must be noticed that not all systems using 16-bit color depth employ the 16-bit, 32-64-32 level RGB palette. Platforms like the Sharp X68000 home computer or the Neo Geo video game console employs the 15-bit RGB palette (5 bits are used for red, green, and blue), but the last bit specifies a less significant intensity or luminance. The 16-bit mode of the Truevision TARGA/AT-Vista/NU-Vista graphic cards and its associated TGA file format also uses 15-bit RGB, but it devotes its remaining bit as a simple alpha channel for video overlay. The Atari Falcon can also be switched into a matching mode by setting of an "overlay" bit in the graphics processor mode register when in 16-bit mode, meaning it can actually display in either 15- or 16-bit color depth depending on application.

Color palette comparison side-by-sideEdit

Basic color palettesEdit

4-bit grayscaleEdit

0x0 0x1 0x2 0x3 0x4 0x5 0x6 0x7 0x8 0x9 0xA 0xB 0xC 0xD 0xE 0xF

3-bit RGBEdit

0x0 0x1 0x2 0x3 0x4 0x5 0x6 0x7

4-bit RGBIEdit

3 level RGBEdit


  • Color values in bold exist in 2-bit (four color) grayscale palette. Color values in very bold exist in 1-bit, monochrome palette.
  • In 4-bit RGBI, dark colors have 23rds intensity of the bright colors, not 12.

Advanced color palettesEdit

See alsoEdit


  1. ^ "Commodore: A2024". Archived from the original on 2012-03-02.
  2. ^
  3. ^ "ex12bit - How to fake a 12-bit truecolor mode on an 8-bit card. Allegro game programming library. - Linux Man Pages (3)".
  4. ^ "Gradients on TVs: Color bit depth".
  5. ^ "KeyJ's Blog : Blog Archive » Color Generation in IBM CGA, EGA and VGA". Retrieved 2020-05-26.
  6. ^ paleotronic (2018-09-29). "Colour Clash: The Engineering Miracle of the Sinclair ZX Spectrum". Paleotronic Magazine. Retrieved 2020-05-26.
  7. ^ "Sharp MZ-800 - MCbx". Retrieved 2020-05-26.