Edit
Change a GIF's speed, direction or frames
Speed is not the same thing as frame count, and most tools conflate them. Scaling the delays makes an animation faster at the same smoothness and roughly the same file size; dropping frames makes the file smaller at the same running time, because the frames that go hand their time to the ones that stay. This page offers both separately, shows you what each will produce before it runs, and rebuilds the animation frame by frame rather than flattening it.
How to change a GIF's speed, direction or frames
- Drop in an animated GIF.
- Choose a speed, a direction, and whether to drop frames.
- Check the preview line: it states the frame count and running time you will get.
- Rebuild and download.
Supported formats
This tool accepts GIF, WebP, PNG and AVIF files. Everything is decoded by your own browser, so the formats available depend on what your browser can open - which for HEIC in particular varies between Safari and other browsers.
Frequently asked questions
Why can I not make it more than four times faster?
You can ask, but the format stops being honoured. GIF stores a frame delay in hundredths of a second, and below roughly 20 milliseconds per frame most browsers ignore the stated delay and substitute 100 milliseconds - so an animation asked to run ten times faster actually plays slower than the original. This page caps the delay at 20 milliseconds and tells you when it has done so, rather than writing a number your browser will throw away.
What is the difference between speed and dropping frames?
Speed changes how long each frame is shown and keeps every frame, so the motion stays smooth and the file size barely moves. Dropping frames removes some of them and gives their time to the frames that remain, so the running time is unchanged, the motion becomes choppier, and the file gets smaller - often much smaller. They are different requests, which is why they are different controls here.
Does reversing change the timing?
Each frame keeps its own delay, so a final frame that held for a second still holds for a second once it becomes the first. Reversing only the order while leaving the timing in place produces a noticeably different animation from the one you asked for, and it is a common bug in tools that do this.
Why does the frame count sometimes differ from what I expected?
Two reasons. Playing out and back does not repeat the first and last frames, because a ping-pong that shows the turning frame twice stutters at the turn. And the count reported after rebuilding is read back from the file that was written, not from what was requested - GIF rounds every delay to a hundredth of a second, so the numbers in the file are not always exactly the numbers asked for.
Is my animation uploaded?
No. It is decoded, rearranged and re-encoded in your browser. Reading the frames needs a decoder that Safari does not provide, so this page works in Chrome, Edge and Firefox and says so rather than failing quietly in Safari.
Related tools
- GIF CompressorMake an animated GIF smaller in your browser.
- GIF Frame ExtractorPull every frame out of an animated GIF or WebP as PNG images, or build a contact sheet.
- GIF MakerBuild an animated GIF or animated PNG from a set of images, with your own frame timing and loop setting.
- Image InspectorSee what an image file really is: format, dimensions, aspect ratio, colour model, transparency, DPI and metadata.
Looking for something else? Browse all ImageUtility tools.