Replace one color family without repainting every pixel
This Minecraft skin color replacer changes matching RGB pixels in a modern 64 × 64 skin. Choose the source color, replacement color, tolerance, and pixel scope. The result updates immediately, reports the number of changed pixels, preserves original alpha values, and downloads as a separate RGBA PNG.
The page processes everything in browser memory. No image, filename, color selection, model choice, or output is uploaded. A first-party example contains known torso, arm, leg, head, and outer-layer colors so exact replacement, tolerance, and scope controls can be tested immediately.
Exact replacement and RGB tolerance
At tolerance zero, a pixel matches only when all three RGB channels equal the chosen source. This is ideal for flat pixel art, palette swaps, team colors, uniforms, and correcting a repeated accidental color.
Increasing tolerance includes nearby colors. The engine uses the largest per-channel difference: with tolerance 10, red, green, and blue must each be no more than 10 away from the source. This deterministic rule is easier to audit than a vague visual similarity score.
High tolerance can catch shading around a base color, but it can also reach unrelated skin, hair, or clothing pixels. Increase it gradually while watching the changed count and result preview. Use the Minecraft skin diff afterward when exact coordinates must be verified.
Preserve relative brightness
The preserve-brightness option scales the replacement color according to the luminance relationship between each matched pixel and the selected source. Darker matched pixels remain relatively darker and lighter ones remain relatively lighter. This helps recolor a shaded garment without flattening every matched pixel into one RGB value.
The option is mathematical, not artistic reconstruction. Very dark or saturated source colors can produce clamped channels, and hue relationships may not match a hand-designed palette. Compare the output at pixel zoom and adjust tolerance when separate material areas are being grouped accidentally.
Without the option, every matched visible pixel receives the exact replacement RGB while keeping its original alpha.
All pixels, base layer, and outer layer
The scope selector can process all visible pixels, only mapped base faces, or only mapped outer faces. Base and outer scopes use the chosen Classic or Slim UV map. This makes it possible to recolor a jacket without changing the torso below, or update base clothing while leaving sleeve highlights alone.
Classic and Slim share most coordinates but differ in arm-face width. Choose the intended model before using a layer scope. If it is uncertain, inspect the source with the Minecraft skin model detector.
“All visible pixels” includes any nontransparent position in the complete atlas, including visible residue outside mapped faces. Run the illegal pixel checker when those positions should be reviewed separately.
Alpha preservation
Replacement never changes alpha. A fully opaque matched pixel remains opaque, and a partially transparent outer detail keeps its original transparency. Fully transparent pixels are skipped, even if hidden RGB channel values match the source color.
This prevents a recolor from unexpectedly making empty atlas space visible. It also means the tool does not fix transparent base holes. Use the transparent pixel fixer for that separate task.
Renderer treatment of partial alpha can vary, so preview the downloaded result in the environment where it will be used.
How to use the tool
Upload an exact 64 × 64 PNG or keep the first-party example. Select Classic or Slim, choose all/base/outer scope, set the source color and new color, then adjust tolerance. Toggle relative brightness only when the design contains intentional shade variants.
Watch the changed count. Zero means no visible pixel matched under the current settings. A surprisingly high result is a reason to reduce tolerance or narrow the scope. Download only after comparing source and output.
Keep the original file and save the recolored result under a new name. For manual corrections, open the result in the Minecraft skin editor. For a broad color wash rather than matching-color replacement, use the Minecraft skin tint tool.
Useful recoloring workflows
Team variants can replace one uniform color while preserving faces and hair. Outfit experiments can restrict the operation to outer layers. Accessibility revisions can increase contrast between adjacent palette groups, although contrast still requires visual inspection.
Creators can also extract the exact source color first with the Minecraft skin palette extractor. Copying a frequent Hex value avoids guessing and makes tolerance zero a reliable starting point.
Do not use broad tolerance as a shortcut for copying another creator’s design. Technical recoloring does not change ownership or licensing.
What the replacer does not do
It does not identify semantic objects such as “shirt” or “hair,” infer copyrighted characters, generate new shading, repair seams, convert formats, or guarantee upload acceptance. The UV scopes understand body geometry, not artistic meaning.
It also cannot replace alpha independently or select disconnected regions by click. Those tasks belong in a full editor with selections and pixel tools.
Privacy and ownership
Browser image and canvas APIs perform decoding, transformation, preview, and download. There is no account, database, public gallery, or upload API. Closing the page discards active state unless a PNG was downloaded.
Only recolor artwork you own or have permission to adapt. SkinEditor.org is independent and is not associated with or approved by Mojang or Microsoft.
Frequently asked questions
Why did no pixel change?
The source RGB may not exist, the tolerance may be too low, or the selected layer scope may exclude the matches.
Does recoloring remove transparency?
No. Original alpha values are retained and fully transparent pixels are skipped.
What does tolerance compare?
It checks the largest absolute difference among red, green, and blue channels.
Can I recolor only the jacket?
Choose outer-layer scope, then verify that the desired jacket pixels use the source color.