GIF Metadata Viewer

See what's inside a GIF: frames, delays, duration, loop count and palettes. Everything runs in your browser and nothing is uploaded. Want to pull the frames out? Use Split GIF.

  • Never uploaded
  • Every frame listed
  • JSON export

Drop a GIF to inspect it

or click to choose a file

GIF87aGIF89aUp to 100 MB
Read locally in your browser. Nothing is uploaded.

How to inspect a GIF

  1. Open a GIF

    Drop a GIF or choose one from your device. It is read by your browser and never leaves your computer.

  2. Read the summary

    Dimensions, frame count, duration, frame rate, loop setting, palettes and transparency appear at the top.

  3. Check the notes

    We point out common problems, such as delays browsers slow down or a missing loop instruction, and link to the fix.

  4. Dig into frames

    Scroll the timeline and frame table for every delay, area and disposal method. Export it all as JSON.

What GIF metadata tells you

A GIF file is more than pictures. Around the image data sit small blocks that control timing, looping, transparency and colors. Most viewers hide them, which makes it hard to understand why a GIF plays too slowly or loops when it shouldn't.

This viewer reads those blocks directly and lays them out in plain language.

The numbers that matter most

  • Frames and duration tell you how long the loop is and how smooth it can be.
  • Frame rate is calculated from the real delays. GIFs have no fixed rate, so this is an average.
  • Loop shows whether the GIF repeats forever, a set number of times or plays once.
  • Palettes show how many colors are available, and whether frames carry their own color tables.
  • Data per frame shows where the bytes go. A few huge frames usually mean a scene cut or noisy footage.

Reading the timeline

Each bar in the timeline is one frame, and its width is how long it stays on screen. Long bars are pauses. Amber bars are frames with delays that browsers override, which is the most common reason a GIF feels slow.

Why we built it to run locally

Inspecting a file shouldn't require handing it over. The parser runs as JavaScript on your device and only reads the file's structure.

Where your browser supports WebCodecs, it also decodes frame thumbnails locally.

From diagnosis to fix

Every note links to the tool that solves it. Slow playback goes to the GIF Speed Changer, huge dimensions to Resize GIF and heavy files to Compress GIF. The background on all of it is in How GIF Compression Works: Palettes, Dithering and LZW Explained.

GIF metadata questions

Is my GIF uploaded anywhere?

No. The viewer reads the file with JavaScript inside your browser. Nothing is sent to our server, so it works for private or confidential GIFs and even offline once the page has loaded.

How do I find out how many frames a GIF has?

Open it here and look at Frames in the summary. The frame table below lists each one with its delay, so you can also see where pauses are.

Why is the duration different from what I expected?

Browsers treat frame delays of 0 or 10 ms as 100 ms. If a GIF uses those values, it plays slower than its raw numbers suggest. The viewer shows the duration as browsers actually play it and flags the affected frames.

What does the loop count mean?

Forever means the GIF repeats endlessly. Plays once means the file has no loop instruction. A number means the GIF plays that many times in total in modern browsers. Change it with the GIF Speed Changer.

What are disposal methods?

Each frame tells the viewer what to do with it before drawing the next one: leave it in place (Keep), clear it to the background (Restore background) or roll back to the previous frame (Restore previous). Optimized GIFs rely on these to store only what changes.

The viewer says my file is not a GIF.

Many sites serve MP4 or WebP files with a .gif name. Check the header text in the error. If you think the file is a real GIF, Still having trouble? Please contact us and we'll be happy to help!