A GIF exported at "100 frames per second" often crawls in a browser.
That isn't a bug in your GIF editor; it's a decades-old browser rule.
Here's how GIF timing works and how to set delays that play correctly everywhere.
Delays, not frame rates
GIF has no frame rate setting. Each frame stores its own delay in hundredths of a second (centiseconds), and the viewer waits that long before drawing the next frame.
That gives GIF flexible timing: one frame can pause for two seconds while the rest fly by. It also means every speed you choose is rounded to the nearest 10 ms.
The 0 and 10 millisecond rule
Early GIFs were often saved with a delay of 0, meaning "as fast as possible". To stop those GIFs from running at uncontrolled speeds, browsers adopted a rule: a delay of 10 ms or less is shown as 100 ms.
Chromium-based browsers and Firefox apply it, and Safari behaves the same way in practice. A GIF saved with 10 ms delays therefore plays at 10 frames per second, ten times slower than intended.
The fastest delay that browsers honor is 20 ms, which is 50 frames per second. Anything below that makes the GIF slower, not faster.
Delay to frame rate
| Stored delay | Plays as | Frames per second |
|---|---|---|
| 0 or 10 ms | 100 ms | 10 |
| 20 ms | 20 ms | 50 |
| 30 ms | 30 ms | 33.3 |
| 40 ms | 40 ms | 25 |
| 50 ms | 50 ms | 20 |
| 60 ms | 60 ms | 16.7 |
| 70 ms | 70 ms | 14.3 |
| 100 ms | 100 ms | 10 |
To approximate a frame rate that doesn't fit, alternate delays. Mixing 30 and 40 ms averages out close to 30 fps.
Diagnosing a slow GIF
Open the GIF in the GIF Metadata Viewer. It lists every frame's stored delay and flags frames that browsers will slow down. Its timeline shows where the long pauses are.
If many frames show 0 or 10 ms, you've found the problem.
GIF Metadata ViewerSee every frame delay. Runs in your browser, nothing uploaded.Fixing the speed
Use the GIF Speed Changer:
- Frame delay mode sets every frame to one value. Choose 20-40 ms for fast motion.
- Multiplier mode keeps the rhythm of a GIF with intentional pauses and scales everything.
The tool never writes delays below 20 ms, so the result plays the same in every browser.
When 50 fps isn't fast enough
If the GIF still feels slow at 20 ms per frame, it has more frames than its motion needs. Remove frames instead: keep every 2nd frame with Compress GIF, then speed up what's left.
A bonus: fewer frames also means a much smaller file.
Loop count
Looping lives in a separate block, the NETSCAPE2.0 application extension. A value of 0 means loop forever. Any other number means extra repeats, so modern browsers play the GIF that many times plus one.
If the block is missing, the GIF plays once and stops on its last frame. The GIF Speed Changer can set any of these.
Frequently asked questions
What is the fastest frame rate a GIF can play?
50 frames per second, using a delay of 2 hundredths of a second (20 ms). Delays of 0 or 1 hundredth are slowed to 100 ms by Chrome, Firefox and Safari, so they play slower, not faster.
Can a GIF play at 30 or 60 fps?
Not exactly. Delays are stored in whole hundredths of a second, so 30 fps (33.3 ms) has to be approximated by mixing 30 and 40 ms delays. 60 fps is impossible because it would need a delay below the 20 ms minimum.
Why does my GIF play at different speeds in different apps?
Apps handle very short delays differently. Browsers enforce the 100 ms rule for 0-10 ms delays, while some image viewers play them as fast as they can. Using delays of 20 ms or more gives consistent results everywhere.