TOOLS › PALETTE TRANSFER
FREE · NO SIGN-UP · NO WATERMARK

Palette Transfer: Apply a Palette to Pixel Art

Drop in up to 16 sprites and a palette: the colours of another image, a preset like PICO-8 or Game Boy, or a pasted hex list. Every sprite is mapped onto it, by nearest colour or by lightness, and comes back as a PNG or one ZIP.

1 · SPRITES TO CONVERT

DROP, PASTE OR BROWSE
Up to 16 PNGs · 4 megapixels each

2 · PALETTE

Palette source
DROP THE PALETTE IMAGE
A sprite whose colours you want everywhere

3 · MAPPING

Off maps each colour to the nearest one in the palette. On sorts both by brightness and maps dark to dark, light to light, which keeps ramps readable when the hues differ.
Dither
Want new sprites drawn in this palette from scratch? SpriteLab's palette lock snaps every generation to a hex list you give it.
Result appears here
NOTHING HERE YETDrop one or more sprites on the left, then give it a palette. Click a thumbnail to preview that sprite; ZIP ALL exports the lot.

How it works

Drop in the sprites

One or up to 16 at a time. Each one gets a thumbnail; click it to preview that sprite, or remove it with the cross.

Give it a palette

Drop a sprite you already like into the palette slot and its colours become the target. Or pick a preset, or paste a hex list from anywhere. The swatches under the panel show what you are mapping onto.

Map, check, download

Nearest colour is the default. Switch to lightness when the hues are far apart. Hold the compare button to see the original, then download this sprite or ZIP ALL.

Nearest colour vs lightness

Two sprites from different packs never quite match, and a whole project on one palette is the usual fix. The catch is how each old colour gets its new one. There are two sensible answers, and the toggle picks between them.

Nearest colour

Each pixel takes the palette colour closest to it in RGB. Right when the target palette already covers the sprite's hues: unifying two similar-looking packs, or snapping AI output to the palette it nearly used.

Match by lightness

Both the sprite's colours and the palette are sorted by brightness, then mapped in order. Right when the hues have nothing in common: a blue knight onto a four-green Game Boy palette still reads as a knight because its shadows stay shadows.

Dithering is separate and off by default. It trades flat colour for a checker of two neighbours to fake a shade the palette does not have. That helps on gradients and photos, and hurts on clean pixel art, so leave it off unless the result looks banded.

FAQ

Is the palette transfer tool free?

Yes. Everything runs in your browser. No account, no watermark, nothing is uploaded, and there is no limit on how many batches you convert.

When should I use Match by lightness?

When the target palette has different hues from your sprite. Nearest-colour mapping picks the closest colour in RGB, which turns a blue sprite mapped onto a Game Boy palette into a mess of greens chosen by chance. Lightness mapping sorts both sides by brightness and maps dark to dark, light to light, so ramps and shading survive.

Should I turn on dithering?

Not for clean pixel art with flat colours; it adds noise where there was none. Turn it on when the source has smooth gradients or many more colours than the palette, where it recovers some of the tonal range.

How does taking a palette from an image work?

The tool reads every distinct colour in the image you drop into the palette slot, most used first, up to 64. If the image is a photo with thousands of colours it reduces them to 32 dominant ones instead. Drop a sprite you already like and every other sprite gets mapped onto its colours.

Can I convert a whole set of sprites at once?

Yes, up to 16 per batch. Drop them all in, pick the palette, check a few in the preview and hit ZIP ALL to download every converted sprite in one file.

More free tools

In the app

Open SpriteLab to keep building with your sprites.