Reduce GIF Frames Online — Free, No Upload Required
Decrease GIF frame count by keeping every Nth frame. Reduce file size by 50-90% while preserving animation duration. All processing in your browser — no files leave your device.
Drop a file here
or click to browse · GIF files up to 50 MB
Paste from clipboard also works
How to Reduce GIF Frames
- Drop a GIF file onto the tool above, or click to browse. The tool reads the GIF metadata to determine the current frame count.
- Set the sampling rate. Use the slider to choose how many frames to skip. "Keep every 2nd frame" removes half the frames. "Keep every 5th frame" removes 80% of frames.
- Review the frame count preview. The tool displays the original frame count and the estimated output frame count before processing.
- Click Sample. The tool decodes the GIF, retains only the selected frames with adjusted timing, and encodes the output.
- Download the sampled GIF. The output panel displays the new frame count, file size comparison, and dimensions.
Why Reduce GIF Frame Count
GIF file size is approximately proportional to frame count. Each frame contains compressed pixel data, a color palette, and frame metadata. Removing frames directly reduces the amount of data that must be stored and transmitted. For a GIF with 100 frames, keeping every 2nd frame produces a 50-frame GIF that is typically 40-50% smaller.
Frame sampling is the most predictable method for reducing GIF file size. Unlike color reduction (which depends on content complexity) or compression (which depends on frame similarity), frame sampling provides a nearly linear relationship between the sampling rate and file size reduction. Keeping every Nth frame removes approximately (N-1)/N of the file size.
Many GIFs contain more frames than necessary for their intended purpose. A screen recording captured at 30 FPS contains twice as many frames as needed for smooth playback at 15 FPS. A video-sourced GIF at 24 FPS can be sampled to 8-12 FPS with minimal perceived quality loss. Frame sampling removes this redundancy without affecting resolution or color fidelity.
How Frame Sampling Works
Frame Selection
The sampling algorithm is deterministic: given a keepEvery value of N, the tool retains frames at indices 0, N, 2N, 3N, and so on. The first frame is always retained. For a 100-frame GIF with keepEvery=3, the retained frames are at indices 0, 3, 6, 9, ..., 99 — producing 34 frames.
Timing Adjustment
When frames are removed, the frame delay of each retained frame is adjusted to preserve the total animation duration. If the original GIF has uniform 100ms delays (10 FPS) and every 2nd frame is kept, each retained frame receives a 200ms delay (5 FPS). The animation plays for the same total duration at a lower frame rate.
For GIFs with variable frame delays (different delays per frame), the timing adjustment sums the delays of the removed frames and adds them to the preceding retained frame. This preserves the temporal pacing of the original animation — sections that were slow remain slow, and sections that were fast remain fast (at the reduced frame rate).
Re-encoding
After frame selection and timing adjustment, the retained frames are re-encoded into a new GIF file. Frame optimization is applied to the new frame sequence — since the frames are now further apart temporally, there may be more pixel differences between consecutive frames, which can slightly reduce the effectiveness of frame optimization compared to the original.
Sampling Rate Guidelines
Keep Every 2nd Frame (50% Reduction)
The most conservative sampling rate. Reduces frame count by half. For a GIF originally at 20 FPS, the output plays at 10 FPS — still smooth for most content. Recommended as the first step when a GIF is slightly too large for a platform's file size limit.
Keep Every 3rd Frame (67% Reduction)
A moderate sampling rate. Reduces frame count by two-thirds. For a GIF originally at 15 FPS, the output plays at 5 FPS. Acceptable for content with moderate motion — talking heads, scrolling, typing. May appear choppy for fast motion like sports or action sequences.
Keep Every 4th-5th Frame (75-80% Reduction)
An aggressive sampling rate. Produces significant file size reduction but noticeably lower frame rates. Suitable for content where the key information is in individual frames rather than smooth motion — step-by-step tutorials, slideshow-style animations, or content where each frame represents a distinct state.
Keep Every 6th-10th Frame (83-90% Reduction)
Maximum reduction. The output resembles a slideshow more than a smooth animation. Suitable only for content where extreme file size reduction is necessary and animation smoothness is not a priority. Consider whether a static image or a series of images would serve the purpose better.
Frame Sampling vs. Other Optimization Methods
GIF file size can be reduced through three primary methods: frame sampling, color reduction, and dimensional resizing. Each method affects a different aspect of the GIF:
- Frame sampling reduces the number of frames. It affects animation smoothness but preserves resolution and color fidelity. File size reduction is approximately proportional to the number of frames removed.
- Color reduction reduces the palette size. It affects color fidelity but preserves resolution and frame count. File size reduction depends on content complexity and the LZW compression characteristics of the reduced palette.
- Dimensional resizing reduces pixel dimensions. It affects spatial resolution but preserves frame count and relative color fidelity. File size reduction is approximately proportional to the pixel count reduction.
These methods can be combined for maximum reduction. A common workflow: first sample frames to remove temporal redundancy, then reduce colors to decrease per-frame data, then resize if the output dimensions are larger than needed. Each step compounds the reduction.
When to Use Frame Sampling
High Frame Rate Source
GIFs created from video sources often inherit the video's frame rate (24, 30, or 60 FPS). For most GIF use cases, 8-12 FPS is sufficient. A 30 FPS source sampled to every 3rd frame produces a 10 FPS GIF at roughly one-third the file size with minimal perceived quality loss.
Platform File Size Limits
When a GIF exceeds a platform's file size limit (Discord 8 MB, Twitter 15 MB, email 5 MB), frame sampling provides a predictable way to reduce size. If the GIF is 12 MB and the limit is 8 MB, keeping every 2nd frame typically produces a file under 6 MB — well within the limit.
Bandwidth-Sensitive Contexts
GIFs embedded in web pages, emails, and documentation should be as small as possible for fast loading. Frame sampling reduces the data that must be downloaded without affecting the visual dimensions of the GIF. A 2 MB GIF sampled to every 3rd frame loads in roughly one-third the time on the same connection.
Long Recordings
Screen recordings and webcam captures longer than 10 seconds produce large GIFs. A 30-second recording at 10 FPS contains 300 frames. Sampling to every 3rd frame reduces this to 100 frames — a more manageable size that still conveys the content. For very long recordings, consider trimming the start and end before sampling.
Frequently Asked Questions
GIF file size is approximately proportional to frame count. Each frame contains a color palette and compressed pixel data. Keeping every 2nd frame removes 50% of frames, typically reducing file size by 40-50%. Keeping every 3rd frame removes 67% of frames, typically reducing file size by 55-65%. The exact reduction depends on frame optimization efficiency.
Removing frames reduces the effective frame rate. A GIF originally at 20 FPS sampled to every 2nd frame plays at 10 FPS — still smooth for most content. Sampled to every 3rd frame, it plays at approximately 7 FPS, which is acceptable for slow-motion content but may appear choppy for fast motion. The frame delay is adjusted proportionally to maintain the original animation duration.
The keepEvery parameter determines which frames are retained. "Keep every 2nd frame" retains frames 1, 3, 5, 7, etc. "Keep every 3rd frame" retains frames 1, 4, 7, 10, etc. The first frame is always retained. Higher values remove more frames, producing smaller files with lower frame rates.
Yes. The frame delay of each retained frame is adjusted to compensate for removed frames, preserving the total animation duration. If the original GIF has 100ms delays and every 2nd frame is kept, the retained frames receive 200ms delays. The animation plays for the same total duration at a lower frame rate.
The output panel displays the sampled GIF with the new frame count and file size. You can compare the original frame count with the sampled frame count to assess the trade-off between file size and animation smoothness.
No. All processing occurs in your browser using Web Workers. Your files are never transmitted to any server. The frame sampling engine runs locally. You can verify this by disconnecting from the internet — the tool continues to work.