Reverse a GIF

Play an animated GIF from the last frame to the first. It is rewritten on this device and never uploaded.

Reverse an animated GIF so it plays backwards, in your browser. It is free, needs no account and adds no watermark, and your files are not uploaded: everything runs in your browser on your device. No watermark. The limit is your device’s memory (phones hold less): a long or very large GIF may need a computer.

Drop GIFs to reverseor click to choose files. Batches welcome.
    Details

    Every frame’s time is multiplied by the speed and rounded to a hundredth of a second. Browsers show anything under 0.02 s as about 0.1 s, so a GIF that is already very fast cannot be made faster: its frames stop at 0.02 s.

    The loop setting is a small block in the GIF’s header. Forever writes a count of 0, a number writes how many times to play, and once leaves the block out. Some viewers and chat apps ignore it and always loop. Forward then back adds the frames in reverse after the originals, so the file is about twice the size.

    Backwards plays the frames last to first, each with its own time, and the loop setting is kept.

    Working…

    Done

    Free, no ads. Support StayPut

    Your files are processed on this device and never sent to a server. Reload the page to clear everything from memory.

    A reversed GIF makes a splash un-splash, a door close itself or a dropped cup jump back into a hand. Drop the GIF and press Reverse: the frames are written last to first, and the result is saved as a new GIF.

    Every frame is first drawn as the whole picture, the way a browser plays it, so GIFs that store only the part that changed still look right backwards. Each frame keeps its own delay, so a pause that was at the end is now at the start, and the loop setting is copied.

    For a clip that plays forward and then back, use Merge GIFs to join the original with its reversed copy. To change the pace as well, pick a speed in the same run.

    How it works

    1. Drop one or more animated GIFs.
    2. Leave Play it backwards ticked, and pick a speed if you want one.
    3. Press Reverse and save the new GIFs.

    In your browser, not on a server

    gifuct-js (MIT) reads the GIF byte by byte in your tab and every frame is composited the way browsers play it, so partial frames and disposal rules are resolved into whole pictures. The frames are put in the new order, each frame’s delay is multiplied by the speed and rounded to whole hundredths of a second, and gifenc’s (MIT) colour quantizer and LZW coder write them back with the loop setting. The new GIF is assembled in memory.

    Compared with upload-based tools: Here the GIF is re-timed in this tab: the file is not uploaded, the limit is your device’s memory (phones hold less), and no watermark is added.

    Verify it yourself. Give the page a short while after one visit to save itself for offline use, then turn off Wi-Fi or switch to airplane mode and run the tool again. Or open your browser's developer tools (F12, or Cmd-Option-I on a Mac), pick the Network tab, and watch it while you convert. The panel above does the same count for you.

    Questions

    Does the reversed GIF keep its timing?

    Yes. Every frame carries its own delay with it when the order flips, so the rhythm of the animation is the same, just backwards. The loop setting is kept too.

    Can I make a GIF go forward and then backward?

    Reverse a copy here, then join the original and the reversed copy with Merge GIFs. The two play one after the other and the loop gives you a back-and-forth.

    Can I turn the reversed GIF the right way up?

    Yes. Rotate GIF turns an animated GIF by 90, 180 or 270 degrees, or flips it, and keeps every frame’s timing.

    Can I save the frames of a GIF as pictures?

    Yes. Split GIF saves every frame as a PNG, one by one or as a ZIP, with each frame’s delay.

    Why is the reversed file a different size?

    The frames are written again with a fresh colour palette, and each one stores only what changed from the frame before. Going backwards changes what those differences are, so the size can move a little either way.

    Is the file uploaded anywhere?

    No. There is no server in this process. The page is a static file and the work is done by code running inside your browser tab. Give the page a short while after one visit to save itself for offline use; then you can turn off Wi-Fi and it still works.

    More image tools

    Other conversions