Three students in school uniforms work through open books at a classroom table, with textbooks and stationery nearby and study notes on the whiteboard behind them.

Scratch for Kids | First Projects for Young Learners — Stories, Animations, Games and Debugging

Singapore Learning Library · Computing & Creative Coding

Scratch programming for kids works best when a first project is small enough to finish and open enough to change. A child who can make one character move, speak, wait, react and try again has already met the central idea of programming: instructions create behaviour.

This guide to Scratch coding for kids is for young learners who need first projects, not a long lecture about computer science. It starts with stories, animations and simple games, then gradually introduces events, sequence, loops, conditionals, variables, coordinates, messages and debugging.

Scratch is designed especially for ages 8–16, although people of many ages use it. Younger children may be better served by ScratchJr, which is specifically designed for ages 5–7. The goal here is not to accelerate a child through every block. It is to help them become comfortable turning an idea into a working project, finding what broke, and changing the project on purpose.

The first programming milestone is not “knowing code”. It is discovering that an idea can be represented as instructions, tested, changed and made to work.

Quick Start | What Should a Child Build First?

ProjectMain ideaNew block families
1. Make a character say helloSequence and eventsgreen flag, looks, wait
2. Animate a nameMotion and timed changesmotion, looks, sound
3. Tell a two-scene storyEvents and messagesbroadcast, backdrops, timing
4. Build a chase gameLoops and conditionsforever, if, sensing, coordinates
5. Make a score counterVariablesset, change, compare
6. Build a quizInput and branchingask, answer, if/else

1. First Principle: Let the Project Have a Point

Children learn Scratch more easily when the project is doing something they care about. “Use ten blocks” is a weak goal. “Make the cat escape a dragon” is better because the blocks now have a reason to exist.

Scratch Foundation’s creative-learning materials emphasise meaningful projects, play, iteration and getting unstuck. The child should therefore begin with an idea that is concrete enough to make but personal enough to change.

2. Project One | Make a Character Say Hello

Start with one sprite. The task is deliberately small: when the green flag is clicked, the sprite should say a greeting, wait, then say something else.

A simple version might be:

  1. When green flag clicked.
  2. Say “Hello!” for 2 seconds.
  3. Wait 1 second.
  4. Say “I made this.” for 2 seconds.

This tiny project teaches event → sequence → visible result. The blocks execute in order. If the second message appears too quickly, the child can change the timing. That is already debugging.

What to ask the learner

  • What starts the project?
  • Which instruction happens first?
  • What would happen if we swapped the blocks?
  • Which number controls the timing?
  • How would you make the character sound more like you?

3. Project Two | Animate a Name

The learner chooses several letters or sprites and makes each one move, spin, change colour or play a sound when clicked or when the project begins.

This project introduces an important programming idea: different objects can have different scripts. The stage is one world, but each sprite can respond independently.

A useful constraint

Do not give every letter the same animation. Ask the learner to make each one behave differently. One can glide. One can spin. One can grow and shrink. One can play a sound.

Variation forces the child to choose rather than copy.

4. Project Three | Tell a Two-Scene Story

A story is one of the best bridges from simple blocks into program structure. The child creates two characters and two backdrops. The first scene happens, then the programme sends a message that starts the second scene.

This introduces broadcast messages. A broadcast is powerful because one part of the project can tell another part that an event has happened.

Story structure

  1. Scene 1 begins when the green flag is clicked.
  2. Character A speaks.
  3. Character B replies.
  4. A broadcast message such as “next scene” is sent.
  5. The stage changes backdrop.
  6. The sprites move or hide/show as needed.
  7. Scene 2 begins from the broadcast.

The important idea is coordination. Instead of one giant script controlling everything, several scripts respond to events.

5. Project Four | Build a Chase Game

The learner controls a sprite with arrow keys. A second sprite moves or appears somewhere else. Touching it earns a point or ends the game.

This is the first project where several computational ideas become visible together:

  • events from key presses;
  • continuous loops;
  • coordinates and direction;
  • sensing whether sprites touch;
  • conditions that decide what happens next;
  • random placement or movement;
  • variables for score.

The movement script

A child can begin with four short scripts: when the right arrow is pressed, change x; left arrow changes x in the opposite direction; up and down change y.

This is more useful than memorising coordinates abstractly because the stage becomes a live coordinate plane.

The collision rule

Inside a forever loop, ask whether the player sprite is touching the target. If yes, change the score and move the target somewhere else.

That introduces the structure repeat → check condition → act.

6. Project Five | Add a Score Counter

Variables are often introduced too early as vocabulary. Scratch makes the idea visible. A score variable is simply a named place where the programme keeps a number that can change.

  1. Create a variable called Score.
  2. Set Score to 0 when the green flag is clicked.
  3. Change Score by 1 when the target is touched.
  4. Display the variable while testing.

Now the child can ask useful programming questions: What should reset the value? Which event changes it? Can the score go down? What ends the game?

7. Project Six | Make a Quiz

A quiz introduces user input and branching. The programme asks a question, waits for an answer, and checks whether the answer matches the expected value.

The structure is:

  1. Ask a question and wait.
  2. Read the answer.
  3. If the answer is correct, respond one way.
  4. Else, respond another way.
  5. Update the score if required.
  6. Move to the next question.

The child is now working with input → comparison → decision → output. That pattern appears throughout computing.

8. Why Scratch Blocks Are Good for First Programming

Scratch uses blocks that snap together only in combinations that make structural sense. This removes much of the syntax burden that can dominate a beginner’s first experience in a text-based language.

The learner can therefore focus on higher-value questions:

  • What should happen?
  • What starts it?
  • What repeats?
  • What changes?
  • What should happen only if a condition is true?
  • What information must the programme remember?
  • Why did the actual result differ from the intended result?

9. Sequence, Loop, Condition, Variable

Programming ideaChild-friendly meaningScratch example
SequenceDo these instructions in this ordermove → say → wait → turn
LoopRepeat this patternforever move and check for touching
ConditionDo something only when a test is trueif touching target, increase score
VariableRemember a value that can changeScore = Score + 1
EventStart a script when something happenswhen green flag clicked / when key pressed
MessageTell another part of the project something happenedbroadcast “next scene”

10. Debugging Is the Real Beginner Skill

A child should expect the first version not to work perfectly. Debugging is not evidence that the learner failed. It is the work of comparing intended behaviour with actual behaviour and finding the first difference.

  1. Say what the project is supposed to do.
  2. Run it and describe what actually happened.
  3. Find the first moment the two stories diverge.
  4. Inspect only the blocks responsible for that moment.
  5. Change one thing.
  6. Run the project again.

This routine is more powerful than an adult saying, “Your code is wrong here.” The child is learning how to recover independently.

11. The Adult Should Ask Before Taking the Mouse

Parents and teachers can accidentally turn a creative coding activity into a demonstration of adult speed. A learner gets stuck, the adult takes the mouse, fixes the script in ten seconds, and the project works. The project is repaired. The learner’s debugging skill is not.

Useful prompts include:

  • What did you expect to happen?
  • What happened instead?
  • Which script controls that sprite?
  • What block starts this script?
  • What changes if we move this block?
  • Can we test one smaller part?
  • Do you want a hint or more time?

12. Remixing Is a Legitimate Way to Learn

Scratch Foundation provides starter projects that contain simple code a learner can inspect and remix. This is valuable because programming is not learned only from blank pages.

A child can change one character, rule, sound, speed or scoring system and then watch what those changes do to the whole project. Remixing becomes learning when the learner can explain what was changed and why.

13. A Good First-Project Ladder

StageProject typeWhat should become independent
ASingle sprite animationStarting an event and arranging a sequence
BInteractive animationResponding to clicks or keys
CStory with scenesBroadcasts and coordination
DSimple gameLoops, sensing and conditions
EGame with scoreVariables and reset logic
FQuiz or simulationInput, branching and state

14. Do Not Teach Every Block Before the First Project

Scratch contains many block categories. A beginner does not need a tour of all of them before making something.

Teach blocks when the project creates a reason for them. A learner needs a variable when the game must remember a score. The learner needs a broadcast when one scene has to trigger another. The learner needs a loop when repetition becomes obvious.

Purpose makes the block memorable.

15. Scratch for Younger Children | Use ScratchJr When It Fits Better

Scratch is designed especially for ages 8–16, although younger children can use it with adult support. ScratchJr was designed specifically for ages 5–7 and uses a simpler interface for creating interactive stories and games.

The right tool depends on the learner. A five-year-old does not benefit from being rushed into the older interface merely because “real coding” sounds more advanced.

16. Reading and Writing Still Matter in Coding

Scratch reduces syntax, but programming still uses language. The learner reads block labels, names variables, writes dialogue, follows conditions and explains what the project should do.

This creates a useful bridge between computing and language: precise words make precise instructions. A variable called x may be mathematically elegant later; a beginner may learn more from a variable called score, lives or time left.

17. Mathematics Appears Naturally

Coordinates, angles, random numbers, comparison, time and change all appear inside Scratch projects. The goal is not to turn every game into a Mathematics worksheet. It is to notice when a mathematical idea solves a programming problem.

A child who wants a sprite to move to the right has a reason to understand x. A child who wants an object to appear unpredictably has a reason to understand random numbers and ranges.

18. A First Six-Week Home or Classroom Route

WeekBuildTeacher/parent focus
1Greeting + animated nameEvents and sequence; let the learner personalise heavily
2Two-scene storyBroadcasts, timing and coordination
3Keyboard movementCoordinates and input
4Chase gameForever loops, sensing, conditionals
5Score and game overVariables and programme state
6Remix or original projectIndependent planning, debugging and explanation

19. What Progress Looks Like

Progress is not the number of Scratch blocks a child can name. It is a change in behaviour.

  • The learner starts a project without waiting for every instruction.
  • The learner can predict what a short script will do.
  • The learner notices which sprite owns which script.
  • The learner tests one part instead of changing everything at once.
  • The learner can explain a bug in words.
  • The learner can remix an example without copying blindly.
  • The learner begins inventing features that were not in the tutorial.

20. When to Move Beyond Scratch

Scratch can remain useful for years, especially for storytelling, games, simulations and algorithmic thinking. A learner is ready to explore text-based programming when the next project needs ideas that Scratch makes awkward, or when the child is curious about how syntax, files, libraries and larger programs work.

Do not move simply because block coding looks childish. Move because the learner has a new computational job that another tool can serve better.

Frequently Asked Questions

What age is Scratch for?

Scratch is designed especially for ages 8–16, but people of many ages use it. ScratchJr is designed for ages 5–7.

What is the best first Scratch project?

A tiny animation or greeting is ideal because the learner can finish it quickly, personalise it and immediately see how sequence and events work.

Should children learn coding terms before they start?

Teach a few terms as the project needs them. Meaning is easier to retain when the learner has just used the idea.

Is Scratch real programming?

Yes. The interface is block-based, but learners still work with events, sequence, repetition, conditions, variables, input, state, decomposition and debugging.

Should a parent fix bugs for the child?

Help the child locate the first divergence between intended and actual behaviour. A direct fix may save time but can remove the debugging decision the learner needs to practise.

Can Scratch help with school subjects?

Yes. It can model stories, Mathematics, Science ideas and simple simulations. It does not need to become a disguised worksheet every time; creative projects are valuable in their own right.

Official Scratch Resources

Continue Through the Singapore Learning Library

Return to the Singapore Learning Library for the wider public-learning route. Use The Best Time to Teach a Child How to Use AI when the next question is how coding, AI and digital literacy should develop without replacing foundational learning.

Explore the connected learning guides

Choose the question that brought you here. Open one useful guide, try a small task, and stop when you have what you need.

Take one question further

The same learning habit can travel across subjects, while each subject keeps its own methods. These routes help you notice a difficulty, understand one part of it, and return to something you can do.

A word is familiar, but using it is difficult.

Move from recognising a word to retrieving it in a new context. Understand vocabulary plateaus.

Try it without the guide: Choose one word you already know. Close the guide and use it in a new sentence. Explain why it fits; try another context tomorrow.

A piece of writing has ideas, but the reader loses the thread.

Make the order of events and the links between sentences clear. Explore composition writing.

Try it without the guide: Choose one short paragraph. Read the relevant explanation, close it, and revise the paragraph. Ask someone to tell you what happened and why.

The Mathematics seems familiar, but marks still disappear.

Find the first point where the working stops being reliable. Find Secondary 4 A-Math mark leakage.

Try it without the guide: For a Secondary 4 A-Math question you have attempted, locate the first uncertain line. Repair that step, then try a comparable question without the worked answer.

A Science fact is remembered, but the explanation is incomplete.

Connect the evidence to a scientific idea and the resulting change. Follow the Primary Science learning route.

Try it without the guide: Choose a familiar Primary Science example. Explain the evidence, the idea and the result without notes. Then change one condition and explain your prediction.

Two accounts of the world seem to disagree.

Check the question, source, date and evidence before combining claims. Explore the World Knowledge research library.

Try it without the guide: Take one claim. Find the source best placed to support it, note its date, and state what remains uncertain. Return to your original question.

There is plenty of help, but independence is hard to see.

Check what the learner can understand and do after support is removed. Understand how education works.

Try it without the guide: Choose one small task the child has practised. Agree on a calm, brief attempt without prompts. Use what happens to choose one next step, then stop.

For the structure behind these connections, read the eduKateSingapore runtime manifest and the eduKate ecosystem boot contract. The reader map describes public navigation; those manifests preserve the wider ownership and return rules.