Pixel Art Workshop

Convert Image to Pixel Art — Free, In-Browser

Drop any photo, get a crisp pixel-art PNG in seconds. Free, no sign-up, and nothing ever leaves your device — every step runs locally in the browser.

Or try one of these:

How to Make Pixel Art From Any Photo

Pixel Art Workshop is a single-purpose, browser-only tool for turning photographs into authentic pixel art. Output renders instantly as you drag the sliders — what you see is what you get — and one click exports a clean PNG you can use as an avatar, sprite reference, or printable art piece.

  1. 1Drop, paste, or click a sample photo on this page.
  2. 2The editor opens and renders the pixel-art version instantly.
  3. 3Drag the middle divider to compare before / after.
  4. 4Tweak pixel size, palette colors, and grayscale to taste.
  5. 5Click Download to grab the PNG — no watermark, no account.
PixelatedOriginal

Pixel Art vs AI-Generated: What Real Pixel Art Looks Like

AI image generators routinely advertise “pixel art” output, but the result is almost never real pixel art. Telltale signs of an AI fake: fuzzy or anti-aliased edges between blocks, gradient transitions inside a single “pixel,” inconsistent grid spacing across the image, and hundreds of near-identical colors instead of a tight palette.

Real pixel art has crisp square pixels on a single fixed grid, a limited palette of distinct colors, and posterized color regions with hard boundaries. These properties come from how pixel art is actually authored on a grid — and they’re reproducible from any photograph using two deterministic algorithms.

Pixel Art Workshop uses both, runs them on the client, and never guesses. Same photo + same settings = byte-identical output every time.

Chunky on purpose

Nearest-neighbor upscaling keeps every block one solid color — no smeared rectangles, no anti-aliasing between pixels. This is what makes the output read as pixel art instead of as a blurry resize.

Real color quantization

Optional K-means palette mapping snaps every pixel to one of N hand-picked shades (2–32). That's how the Game Boy, NES, and SNES did it; a tight palette is what makes pixel art look intentional.

The Right Pixel Art Tools: Every Control Explained

Six controls cover almost every pixel-art conversion you’ll ever do. Here’s what each one controls and when to reach for which value.

Pixel size

Block resolution — the single most important knob.

4–8 px
Preserves facial features. Best for portraits and detailed photos.
10–14 px
Balanced — recognisable but clearly stylised. Default for most photos.
16–32 px
Chunky 8-bit-console look. Turns photos into legible sprites.

Palette colors

How many distinct shades survive in the output.

0 (off)
Keep full photographic color depth. The most photo-like result.
6–8
Game Boy / NES era feel. Reads as authentic retro pixel art.
16–24
Sega Genesis / SNES era. Enough range for shaded faces and skies.

Bit-depth presets

One-click hardware-era color constraints.

8-bit
K-means quantization at 256 colors. NES / VGA-256 look.
16-bit
R5G6B5 channel snap — 5 bits red, 6 bits green, 5 bits blue. The actual SNES / Genesis VRAM format.
32-bit
Full color depth. No palette reduction — only pixel size re-grids the image.

Grayscale

Strip chroma before anything else happens.

Off
Keep full photographic color. The default — palette quantization and bit-depth work on RGB.
On
Convert to luma-only before quantization. Useful as a pre-step for 1-bit, or for a vintage monochrome feel.

1-bit B&W

Pure #000 and #FFF via Otsu's threshold.

Off
Normal pipeline — palette, grayscale, bit-depth all apply.
On
Otsu's method picks the optimal luma cutoff, then every pixel snaps to black or white. Overrides palette and grayscale.

Smooth upscale

Off = pixel art. On = bilinear smoothing.

Off
The correct default. Nearest-neighbor scaling keeps pixel edges crisp.
On
Only useful for comparison — turns the output back into a soft resize.

Private by design

Your image never leaves the browser. Every step — decode, downsample, quantize, upscale, encode — runs in client-side JavaScript. Works offline once the page is loaded. No analytics on uploads, no server log of your photos.

Pixelate a Photo, Don’t Just Lower Its Quality

There’s a tempting shortcut for the chunky look: take a high-resolution photo and lower its quality until JPEG artifacts and bilinear smoothing make it feel coarse. The result is a low-quality image, not pixel art. The two effects look superficially similar — both throw away visible detail — but they fail differently. A blurred or lossy image still has thousands of colors and rounded edge transitions; its pixels lie on no grid, its palette has no structure, and printing it at any size reveals smear instead of squares.

Turning an image into pixel art is the opposite move. The pipeline first downsamples to a coarse target grid — one output block summarises one neighbourhood of the source — then snaps each block to a single solid color, then upscales with nearest-neighbor so every block stays a hard square. Each stage throws information away on purpose, but it throws it away on a grid you control. Pixel size sets the block resolution (2–64 px). The palette slider quantizes to up to 256 colors via K-means, or you can snap straight to hardware-era presets: 8-bit (NES / VGA), 16-bit (SNES / Genesis with R5G6B5 channel quantization), or 32-bit (full color, no reduction). Grayscale strips chroma before anything else. 1-bit B&W runs Otsu’s threshold for pure #000 / #FFF output. Smooth upscale switches from nearest-neighbor to bilinear — useful for comparison, rarely for export. The output has fewer pixels, fewer colors, and crisper edges than the source — six independent reductions you dial separately.

This matters whenever the target has to read as pixel art at multiple sizes: a sprite, a profile avatar, a printable poster, a Discord emoji. A degraded JPEG looks worse the larger you display it; real pixel art looks better. If you want the retro feel without losing legibility at scale, pixelate the photo on a grid instead of compressing it into noise.

Minecraft Pixel Art, NES Sprites & 1-Bit Faces

Different visual eras correspond to different settings on the same three knobs. Once you see the mapping, you can dial straight to the look you want.

Minecraft pixel art from a photo

Set pixel size to 16–32 px so the photo collapses into a sprite-sized grid, then drop the palette to 16–32 colors so each block maps to one swatch the way Minecraft’s wool, concrete, or terracotta palette would. The resulting PNG reads as a coordinate plan — one output pixel becomes one in-game block, so you can transcribe a portrait into a build with no guesswork.

4-bit, 8-bit, 16-bit, 32-bit

The chips under the palette slider map straight to hardware eras: 8-bit runs K-means at 256 colors (NES / VGA-256), 16-bit uses R5G6B5 channel quantization (the actual VRAM format on SNES and Sega Genesis), 32-bit keeps full color depth and only re-grids the pixels. For a 4-bit / 16-color EGA render, drag the palette slider down to 16 by hand — that’s where pixel art usually feels most intentional.

Black and white pixel art

The 1-bit toggle runs Otsu’s threshold — the algorithm picks the luma cutoff that maximises between-class variance, then every pixel snaps to pure #000 or #FFF. That’s the Macintosh Classic and Game Boy DMG look. It is also the right mode when you want to pixelate a face down to silhouette-and-highlight: small palettes hide identity, two colors abstract it entirely.

Inspired by Squoosh, Tuned for Pixel Art

The interaction model — drop a photo onto a bubble, get a live before / after view, drag the divider to compare — is borrowed straight from Squoosh, Google’s open-source image-compression playground. Squoosh proved that a single-purpose, client-only image tool can feel as fluid as a desktop app while costing the user zero uploads and zero account creation. The pink-on-checkerboard surface and the wave at the bottom of the hero are direct visual nods.

Pixel Art Workshop starts from the same shape but heads in a different direction. Squoosh is built around codec choice: WebP vs AVIF vs JPEG, quality dials, byte-count comparisons. This tool has one job — convert a photograph into authentic pixel art — and its controls reflect that. Instead of compression sliders you get pixel size, palette count, and bit-depth presets that map to real console-era constraints.

What carries over: nothing leaves the browser, the editor reacts to every slider in under 50 ms on typical photos, and the page works offline once cached. If you’ve shipped an image through Squoosh before, the muscle memory transfers immediately.

Squoosh
Goal: smallest file at acceptable quality.
Pixel Art Workshop
Goal: photograph becomes authentic pixel art.
Squoosh
Controls: codec, quality, encoder flags.
Pixel Art Workshop
Controls: pixel size, palette, bit-depth.
Squoosh
Output: WebP / AVIF / JPEG, lossy.
Pixel Art Workshop
Output: PNG, lossless, fixed palette.