Images & files

Pull a useful color palette from an image.

Extract representative colors from a local image, copy the palette, and compare selected solid pairs against sourced WCAG 2.2 contrast thresholds. The image stays in your browser and the result avoids pretending that one sampled palette can certify an entire design.

  • No image upload
  • Representative sampled colors
  • Exact solid-pair contrast math

Choose an image to sample.

Browser-only processing. The selected image and extracted colors stay on this device. Plainview Tools does not upload or store the image.

Compare solid color pairs.

Your extracted palette will appear here.

The tool verifies the source file, samples a bounded canvas, and checks selected solid pairs with the WCAG luminance formula.

Choose a static PNG, JPEG, WebP, BMP, GIF, or AVIF image to begin.

How it works

Bound the sample. Show the method.

StageWhat the tool doesWhat the result means
VerifyChecks the file signature, static-image status, dimensions, and safety limits before decodingThe selected file matches one supported image format
SampleDraws a proportional local sample capped at 65,536 pixelsLarge images do not create unbounded analysis work
ExtractGroups nearby sampled sRGB values deterministically and orders representatives by sampled shareA practical summary—not every color in the source file
CompareUses WCAG relative luminance and the unrounded ratio for each pass decisionWhether the selected two solid colors meet the shown thresholds
Representative does not mean exact

These are representative colors from a bounded pixel sample, not a complete inventory of every source color. Gradients, compression, downsampling, embedded color profiles, and browser decoding can change which colors become the strongest representatives.

Transparency needs a backdrop

Fully transparent pixels are ignored. Partly transparent pixels are composited over the visible analysis matte because their apparent color depends on what sits behind them. Change the matte to model the intended page background, then extract again.

This does not test text against the actual photograph

WCAG text contrast depends on the pixels immediately behind the letters. A representative palette pair cannot account for every light, dark, or patterned area in an image. Test the final placement and states; do not treat this result as a WCAG audit or conformance certificate.

Static browser-decodable files only

The tool accepts static PNG, JPEG/JFIF, WebP, BMP, GIF, and AVIF files up to 10 MiB, 4,096px per edge, and 8,388,608 pixels. Animated files and SVG are rejected. AVIF decoding still depends on browser support.

Primary sources

The contrast thresholds and pixel boundary.

Reviewed August 25, 2026. Contrast decisions follow WCAG 2.2 and W3C's relative-luminance method; local sampling uses the browser Canvas pixel API.