Skip to main content

GIF Color Changer

Server-processed

Replace a color, shift hue, apply a tint, or apply a Grayscale/Sepia/Invert/Moonlight effect on a GIF — every frame, delay and loop count preserved.

Input

Drop a file or browse
One file · GIF

Animated or static GIF. Every frame is processed and re-encoded — this uses one credit per run.

Pixels close to this color are replaced.

How close a pixel's color must be to match, and how soft the replaced edge is.

Output

Recolored GIF

Result will appear here.

Was this helpful?

Guides

Recolor a GIF without breaking its animation. Upload a GIF, pick an adjustment — Replace Color, Hue Shift, Tint, or an Effect preset — and every frame is decoded, recolored, and re-encoded with its original delay, disposal method, and loop count intact.

How it works

Upload a GIF (animated or static), then choose one adjustment:

  • Replace Color — pick a color to replace and a new color, plus a Tolerance for how close a pixel's color must be to count as a match. Higher tolerance catches a wider range of similar shades and blends the edge more softly, so an anti-aliased source (a logo, an icon, a screen recording) doesn't come out with a hard fringe around the swap.
  • Hue Shift — rotate every pixel's hue around the color wheel, from 0° to 360°, the same math behind CSS's hue-rotate() filter.
  • Tint — wash the GIF toward one color while keeping each pixel's original shading, so detail and contrast survive the tint instead of flattening into a single wash.
  • Effect — apply a ready-made look: Grayscale, Sepia, Invert, or Moonlight (a cool, desaturated night tone).

Every frame gets the same treatment and is re-quantized together into one shared color palette, so colors stay consistent from frame to frame instead of flickering between slightly different shades on playback.

Privacy

The GIF is processed on our server, not in your browser — that's what makes multi-frame decoding and re-encoding possible without a heavy in-browser library. It's used only to produce your result and isn't stored afterward. This uses one credit per run, including on the website itself.

Does this work on animated GIFs?

Yes — that's the whole point. Every frame is individually recolored, and the original per-frame timing, loop count, and transparency are preserved in the output.

Why does replacing a color leave some pixels unchanged?

Increase the Tolerance slider. At low tolerance, only near-exact matches to your chosen color are replaced; raising it catches nearby shades too (useful for anti-aliased edges or slightly-off source colors).

I just need to change the file format, not the colors

Use Image Converter (or its dedicated GIF to PNG / GIF to JPG leaves) to convert a GIF to another format, or the other direction with Image Converter's GIF target. For a single-frame photo tint instead of a GIF, Colorize Image runs entirely in your browser for free.

gifrecolor gifgif filtergif effectgif hue rotatetint gifreplace coloranimated gif editorcolorize gifchange gif color

Use it from code

From 3 credits per call

REST API

curl -X POST https://api.iotools.cloud/v1/tool/gif-color-changer \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "file": "data:image/gif;base64,R0lGODlhAQABAIAAAP8AAAAAAC…",
    "mode": "replace",
    "sourceColor": "#ff0000",
    "targetColor": "#0000ff",
    "tolerance": "30"
  }'

Swap in your own key from your account. The tool's fields are the body — no wrapper.

Ask an AI agent

Use the IOTools `gif-color-changer` tool (GIF Color Changer) on this input:

YOUR_INPUT_HERE

Paste this at any agent connected to the IOTools MCP server, then add your input.

Love the tools? Lose the ads.

One payment clears every ad from your account, for good. No subscription, no tracking.