Add text to a GIF

Write a caption on every frame of an animated GIF and drag it where you want it. Done on this device, and the GIF is not uploaded.

Writes your text on every frame of an animated GIF, in the font, colour and outline you choose, and saves a new GIF that keeps each frame’s timing and the loop setting. It is free, needs no account and adds no watermark, and your GIF is not uploaded: every frame is drawn and rewritten by code in this tab. The size limit is your device’s memory, and phones hold less; after one visit and a short wait the page works offline.

Drop a GIF to add text toor click to choose a file.
    Working…

    Done

    Your files are processed on this device and never sent to a server. Reload the page to clear everything from memory.

    A worked example

    You have reaction.gif, 480 by 270 pixels with 40 frames, and you want WHEN THE BUILD PASSES across the bottom. Drop it, type the words, drag them to the bottom edge, choose the bold font with an outline so they stay readable over the changing picture, and set the size to 12.

    The size is a share of the shorter side, so 12 on a GIF 270 pixels high gives letters 32 pixels tall. Press Add text. The same words are drawn in the same place on all 40 frames, and you download reaction-text.gif: 480 by 270 pixels, playing at the same speed as the original.

    What you can set

    What this page does not do

    How it works

    1. Drop an animated GIF, or tap to pick one.
    2. Type your text, then drag it on the preview to place it. Pick a font, colour, size and an outline, shadow or box so it reads on every frame. Add a second text for a caption at the other end.
    3. Press Add text. The text is drawn on every frame, and the new GIF downloads with the same size and timing.

    In your browser, not on a server

    The GIF is decoded frame by frame with gifuct-js (MIT) and each frame is composited the way browsers play it. Your text is drawn on every frame on a canvas by your browser, and the frames are written back as a GIF with gifenc’s (MIT) colour quantizer and LZW coder. Everything runs in your tab.

    Compared with upload-based tools: The GIF is read and rewritten on your device, so the limit is how much memory your device has: a long or very large GIF may need a computer.

    Verify it yourself. Give the page a short while after one visit to save itself for offline use, then turn off Wi-Fi or switch to airplane mode and run the tool again. Or open your browser's developer tools (F12, or Cmd-Option-I on a Mac), pick the Network tab, and watch it while you convert. The panel above does the same count for you.

    Questions

    How do I add text to a GIF?

    Drop the GIF, type your text and drag it to where you want it on the preview. Choose a font, colour, size and an outline, then press Add text. The text is drawn on every frame, and the new GIF downloads with the same size and timing.

    Does the text appear on every frame?

    Yes, in the same place and style on all of them. This page cannot show text for only part of the animation or move it.

    Does it change how fast the GIF plays?

    No. Every frame keeps its own delay and the loop setting is copied, so the new GIF lasts as long as the original and repeats the same way. Frames with a delay of 10 milliseconds or less are written as 100 milliseconds, which is how browsers already play them.

    Will the colours or the file size change?

    They can. A GIF holds at most 256 colours per frame, and the whole GIF is written again with your text on it, so smooth gradients and soft shadows can look a little different, and the file can come out larger or smaller than the original. Compress GIF makes a GIF lighter afterwards.

    Which fonts can I use?

    A clean sans, a bold face, a serif, a handwritten face and a monospace. The sans and the handwritten face are this site’s own fonts; the bold face, the serif and the monospace are drawn with the fonts your device has, so they can look a little different on a phone than on a computer. Once the GIF is saved the letters are pixels and look the same everywhere.

    Can I add text to a GIF with a transparent background?

    Yes, and transparent areas stay transparent. GIF transparency is on or off, so where text sits over a transparent area its edges can look rough. Choose an outline or a box to make it read cleanly.

    Can I add text to a GIF without uploading it?

    Yes. Your browser reads the GIF, draws your text onto every frame and writes the new GIF with code running in this tab. Open the network tab, run it, and your GIF is not among the requests. After one visit and a short wait the page works offline.

    Can I add text to a photo or a video instead?

    For a photo or a screenshot, use Add text to image. To turn a video clip into a GIF first, use Video to GIF.

    More image tools

    Popular conversions