Note Warning: Flashy GIFs (ones that switch very different frames rapidly) may be irritating and can even cause photosensitive epileptic seizures. It is best to not use them in user icons, signatures, or studio thumbnails. If one is being used in a project, it is wise to give a seizure warning in the Notes and Credits.
Note Caution: GIFs may lag. It is usually recommended to preload GIFs in a project or use GIFs with fewer frames. Compressing large GIFs is appreciated.
Note Note: Projects using animated thumbnails will also get marked NFE because they may lag the front page. This means that if your project has an animated thumbnail, there is a high chance it will not be able to appear on the front page.
An example GIF

Animated GIFs are GIF files with multiple frames that can be played in a sequence, making an animation. Animated GIFs are often used as profile pictures and signatures.

They are very popular on the Internet due to the fact they are animated, unlike other image types. However, they are frequently criticized for overuse, lag, and annoyance, especially flashy ones.

Importing an Animated GIF

There are several steps to import an animated GIF:

  1. Download the animated GIF.
  2. Click on the import button on the sprite's costumes and select the file.
  3. The Costumes Pane should create a new costume for every frame of the animation (This may take a while for large GIF files).
next costume

Animating the GIF

Main article: Animating a Sprite
Note Tip: Please remember to adjust the scripts shown in this tutorial as necessary to best fit a project.

The following lists steps on how to script an animation to script the animation: A simple way to animate the GIF file in Scratch is to use the following script.

when gf clicked
switch costume to (1 v)
set [fps v] to [24]
   next costume
   wait ((1) / (fps)) seconds

Another way is to use this script:

when gf clicked
switch costume to ((round((timer)/(FPS)))mod(Number of frames))

Replace number of frames for the number of frames. One could just as easily swap out the "fps" (short for frames per second) variable for any arbitrary number. A higher value will increase the speed and the value "0" will cause an soft error(it will run, but not work). Using the first script, the actual frames per second will almost always be a bit less than the variable, due to delay when scratch execute the block "next costume". This can be fixed using a custom block with run without screen refresh enabled, or using the second script. An issue with the second script is that reseting the timer will make the animation stop working. Using the Days Since 2000 block is a solution, but days need to be converted to seconds by multiplying by 86400. A typical frame rate for movies is 24 FPS. See this script in action here.

Costumes to Animated GIFs

Just like Scratch can turn animated GIFs into costumes, some people want to be able to turn costumes into animated GIFs.[1] This would be very useful as people would be able to export their Scratch animation to another program. Currently, this is not a feature, but there are external and online tools that support this feature, which requires exporting the costumes.

What is a GIF?

A GIF, the acronym of a graphic interchange format, is an animating lossless format for image files that supports both animated and static images. There is no limit for how many frames there are in a GIF but the longer it is, the bigger it is, and sometimes a bit laggier. Standard GIFs run between 15 and 24 frames per second, however the format stores it as a time diffrence between each frame, so a GIF could have unevenly spaced frames.

Bans and Alerts

Flashy GIFs are also prohibited for safety reasons and in severe cases, can lead to bans.

See Also


  1. theonlygusti. (2014-09-29). "In Scratch you can already import a .GIF file, so why not add the feature to export a Sprite as a .GIF file?" topic:54194
Cookies help us deliver our services. By using our services, you agree to our use of cookies.