Sprite has flickering colors in exported GIF

I’m trying to make custom made animated emotes for myself but I’m having a problem.
When I play my animation, it plays fine and there’s no flickering colors. But when I export it, the head flickers a lot. How do I fix it?

hi, azuriti. this happens because the gif has 256 colour limit.
it is usually much easier to work with that restriction in mind from the start than reducing colour count later, but in this case the fix should be relatively easy: the blurry clouds with the gradients are the culprit here. so fix those and it should be fine.

Thanks for the reply! Is there an easy way to fix it? I’ve been trying to find a way to reduce the color of the sky.

i would put the clouds into separate file[1], create a palette based on colours in the animation and then converted it to indexed, possibly using dithering during conversion (sprite → color mode → more options). dithering will help it to look smoother.
you might need to experiment with it a bit, until it looks just good enough. once it does, convert it back to rgb and merge it back with the rest.

[1] not completely necessary, but it can help to prevent messing up accidentally colours in the rest of the image

just to give quick example: i just copied single frame and opened it in aseprite. i’ve created palette from sprite, deleted most of the colours and added few colours manually with colour picker. the result is the palette on the right with 39 colours.
then i converted the image to indexed:
original - indexed mode (with dithering) - indexed mode (without dithering)

this is just a quick and dirty example, but hopefully it shows that with dithering you can lower the colour count significantly, without changing the look too much.

hi I’m new here