The delay between frames in a GIF is stored using 16 bits. In the GIF89a format, each animated frame is preceded by a Graphic Control Extension, whose two-byte Delay Time field specifies how long the frame should remain visible.
The value is measured in hundredths of a second, so a stored value of 100 represents one second. This gives the field a theoretical range of 0 to 655.35 seconds, although browsers and GIF software may interpret very short delays differently.
A common mix-up is confusing the delay field with the GIF's image data. GIF pixel data is LZW-compressed and divided into sub-blocks, while the animation timing is kept separately in the Graphic Control Extension. GIF89a added this animation-related extension; the original GIF format was primarily designed for single images.
Playback speed is also affected by the renderer. Some browsers impose a minimum practical frame delay, meaning a GIF encoded with extremely rapid timing may not play exactly as intended.