CodeIt guide

What to use after Scratch, before Python

Your kid outgrew Scratch but isn't ready for Python. Here's how to tell if they're actually ready, why the Python jump fails, and what to pick instead.

Short answer: for most kids aged 9 to 13 who have outgrown Scratch, HTML, CSS and JavaScript in a browser is a better next step than Python. The feedback stays visual and immediate, there is nothing to install, and the thing they build is a real thing they can look at. Python is the right next step for a narrower group, kids around 12 and up who asked for it by name, or who are heading toward data, AI, or school computer science.

But before you pick anything, check whether your kid is actually ready to leave Scratch. Most are not yet, and the signal parents usually read as readiness is something else entirely.

Is your kid actually ready to leave Scratch?

The false signal: boredom

"I'm bored of Scratch" almost never means "I have outgrown these concepts." It usually means one of three much smaller things: they have run out of project ideas, their project got big and managing sprites and scripts became tedious, or their friends moved on and the social pull went with them.

Here is a quick test. Give them three challenges. If your kid has genuinely outgrown Scratch, each should take under an hour.

  1. Add a high score that survives closing the project.
  2. Make the game two-player on one keyboard.
  3. Add a 60-second timer that ends the game and shows a results screen.

If any of those stumps them, the ceiling they hit was not Scratch's. The fix is a harder project, not a new platform. Scratch is free and has an enormous remix community, so there is no cost to staying another six months.

The real signals

Look for three or more of these:

SignalWhat it sounds likeWhy it counts
Fighting the tool's limits, not the tool"How do I make this a real website?" "How do I make it save?"They want things blocks cannot express
Curiosity about what is underneathRight-clicking a website and picking Inspect; "how did they make this?"Text code is now an answer to a question they already have
Reading and typing toleranceCan read an error message aloud and type for 20 minutes without melting downText coding is a reading and typing task before it is a logic task
Debugging staminaStays with a bug for 10 minutes without asking for rescueText code produces far more failure per unit of progress
Wants an audience outside ScratchWants people who are not on Scratch to be able to open the thingWeb output has a natural audience; a terminal does not

If your child is under 8, or still reading slowly, stay in blocks longer. Nothing is lost by waiting. codeSpark is word-free, so it works for kids who cannot read yet; it is now part of Begin Learning and its own domain redirects there. Kodable covers roughly ages 4 to 10 and is paid for families: a seven-day trial, then US$24.99 a month, US$119.99 a year, or US$199.99 once, for up to four children. Its free Kickstart plan is on the school plans page, not the parent one. A pre-reader pushed into typed code will fail at reading, not at programming, and will not be able to tell the difference.

Why the jump straight to Python is where most kids quit

Python is not a hard language. The problem is what happens to the reward-per-effort ratio on day one.

What Scratch gave themWhat Python day one takes away
Runs instantly in a browserInstall, editor setup, "python is not recognized as a command"
Errors are visible and recoverableA red traceback; IndentationError caused by invisible whitespace
Output is a moving, coloured thingOutput is grey text in a terminal window
Something to show off in 20 minutesSomething to show off in several weeks
Syntax errors are structurally impossibleOne missing colon stops everything

A kid who was building playable games last month is now printing Hello, world and getting it wrong. They do not experience that as "the tool changed." They experience it as "I got worse at coding," and a meaningful number quietly conclude they are not a coding person. Python's real advantages, readability, libraries, a path into data and AI, show up around hour 20 to 40. Many kids never get there.

Why HTML, CSS and JavaScript is usually the better bridge

  1. The browser is the runtime. No install, no environment, no version conflicts. The wall that stops beginners before line one is simply absent.
  2. It fails gracefully. A malformed HTML tag renders imperfectly instead of refusing to run. Partial correctness produces partial results, which is exactly what block coding trained them to expect.
  3. Feedback stays visual and fast. Change a colour, save, refresh, see it. That loop is the thing they liked about Scratch, preserved.
  4. The output is a real artifact. A page. A game with buttons and images. Not a console.
  5. The entire web is a worked example. View Source and Inspect work on every site they already use. No other beginner language has millions of readable examples one right-click away.
  6. It is genuinely real code. Brackets, quotes, semicolons, functions, conditionals, loops, event handlers. A kid who learns what a function and a loop are in JavaScript has learned them once, for good. Python later becomes syntax reskinning rather than a fresh start.

Two honest caveats. JavaScript has real weirdness, == versus ===, type coercion, asynchronous code, that bites eventually. And HTML and CSS alone are markup and styling, not programming; the programming starts at JavaScript. Some kids build a good-looking page and stall there. Fine outcome, but do not mistake it for learning to program.

The gap nobody serves well: ages 9 to 13 who want real typed code

This is worth stating plainly, because it explains why your search returned only listicles.

Codecademy's Terms of Service, §1.A, states: "You must be 16 years or older to use the Services." freeCodeCamp is nominally 13+ and is built for adult career changers. Khan Academy's computer science content is free and gentle, but it runs on legacy ProcessingJS and is visibly aging.

So the best-known platforms for real typed code are age-gated or aimed above exactly the children who just outgrew Scratch. That is a structural gap, not an oversight.

One more note: if you find a 2023 or 2024 article recommending Juni Learning, it is closed. Juni wound down its tutoring business in September 2025, a California WARN notice covering 121 employees, and consolidated onto its test-prep spinout, Acely. Do not sign up.

Decision table: pick by your kid's actual signals

Start here: Can they read fluently? No → stay in blocks. Yes → do they want to keep making games, specifically? Yes → typed code inside a game. No → do they want people to see the thing? Yes → the web path. No → puzzle-and-logic path.

Your kidBest next stepWhere to go
Under 8, or still reading slowlyStay in blocks; add harder projectscodeSpark (word-free, now sold through Begin), Kodable (paid for families, US$119.99/yr)
8–12, loved making games and wants to keep making gamesTyped Python or JavaScript inside a game worldCodeCombat: freemium, roughly 9+, the strongest "keep making games" answer
8–12, obsessed with Minecraft or RobloxModding path, the motivation is already thereTynker ($15/mo billed yearly, or $468 lifetime, up to 3 children)
9–13, loved the "look what I made" part; wants something others can openHTML, CSS, JavaScript in a browserAny browser-based web editor; see the disclosure below
9–13, loved the puzzles and logic, not the artStructured typed-code puzzlesCodeMonkey (US$8/mo individual, US$13/mo family, K–8), CodeCombat
10+, more curious about AI than about codeAI literacy alongside codingCodeAI: this is Code.org, which rebranded in June 2026 and shifted emphasis toward AI literacy; free
11–13, asking for Python by namePython, but inside something with visible outputCodeCombat's Python path first; a beginner Python sequence second. Note Codecademy's 16+ age gate
13–15, self-directed, reads wellReal adult-track coursesCodecademy (free Basic, ~$14.99/mo Plus, and check the 16+ term), freeCodeCamp
15–18, wants a portfolio or a job somedayFull certification tracksfreeCodeCamp, free, with real projects

What the first three months actually look like

Tell your kid this in advance, because it prevents most quitting:

Their first typed project will be worse than their last Scratch project. A game with sound, scoring and three levels becomes a page with a button that changes colour. That is not a drop in skill. It is the cost of moving from a tool that hid the machinery to one that shows it.

  • Weeks 1–2. Typing pain, punctuation errors, "it just doesn't work." Sit nearby. Do not type for them; read errors aloud with them.
  • Weeks 3–6. They stop fearing error messages and start reading them. That is the real milestone, more than any project.
  • Months 2–3. They modify examples instead of following instructions, and ask for features nobody assigned. That is when it has taken.

Two or three hours a week is plenty. A kid who does 30 minutes four times a week will pass a kid who does one heroic Saturday.


Disclosure: what we built, and who it is not for

We make CodeIt (codeitlearn.com), so treat this section as an ad and judge it accordingly.

CodeIt is a browser-based studio where kids build websites, games and quizzes by describing them, then change them by moving things and picking colours, and can open a tab that shows what the project is made of and links to a lesson for each idea in it. It also has AI-assisted project generation where the result stays editable instead of becoming a locked AI result. The loop is: make something, play it, change it, see what it is made of, and publish it. Built for ages 8 to 14, with parent-managed, email-verified private profiles for ages 5 to 12 and independent accounts from 13. The free plan does not expire, needs no card, and includes ten assisted project builds a month with two learner profiles under a parent view. A paid family plan is available at CA$12 a month and can be cancelled at any time.

Two things we will not blur:

  • Our structured lesson sequence is Python, not web. It is 31 beginner lessons, starting with print, then variables, strings, conditionals, loops, lists and functions. The HTML/CSS/JS side is learn-by-editing-your-own-project, not a graded course. If you want a sequenced web curriculum with lessons and checkpoints, we do not have one.
  • Under-13 managed profiles cannot publish publicly. Sharing happens inside the parent-managed account. If your child's main motivation is a public link, wait until 13 or choose something else.

CodeIt is not for you if: your kid wants Minecraft or Roblox mods (go to Tynker), wants to keep making games above all (go to CodeCombat), cannot read yet (go to codeSpark), wants deep Python (go to Codecademy at 16+, or CodeCombat now), needs offline access, or you are buying for a school, we have no school, district, rostering or teacher-dashboard product.


Common questions

Is Scratch too babyish for a 12-year-old? Usually not. Scratch officially covers 8 to 16, and advanced projects involve cloning, lists, custom blocks and real algorithmic thinking. Social embarrassment is a legitimate reason to move on, but it is a social reason, not an educational one.

Should we skip straight to Python because it is what schools use? Only if your child is around 12 or older and wants it. Younger than that, setup friction and text-only output cause more quitting than the language is worth. The concepts transfer either way. A loop is a loop.

Is HTML actually coding? HTML and CSS are markup and styling. JavaScript is programming. The web path works as a bridge because it starts with the forgiving parts and adds real programming gradually.

How long before they can build something real? On the web path, a simple real page in session one and something worth showing someone in two to three weeks. On the Python path, four to eight weeks before output stops being terminal text.

What if they quit after two weeks? Common and usually recoverable. The cause is normally the visible-reward drop described above. Go back to a project they picked, make it smaller, and let them modify working code rather than start from a blank file.


Last verified: 21 August 2026. Competitor pricing, age ratings and terms were checked on this date and change often, confirm on the vendor's own site before paying.

Try the translation, not just the theory

CodeIt's studio has a starter written for exactly this crossing: Cat and mouse chase, a game where every important line of real JavaScript carries a comment naming the Scratch block it replaces, "forever" becomes the animation loop, "when key pressed" becomes an event listener, "go to random position" becomes two lines of Math.random(). Your kid plays it first, then opens the code and finds a language they already half-speak.

Open Cat and mouse chase in the studio, it loads instantly, free, no account needed.

Questions parents ask first

Is Scratch too babyish for a 12-year-old?

Usually not. Scratch officially covers 8 to 16, and advanced projects involve cloning, lists, custom blocks and real algorithmic thinking. Social embarrassment is a legitimate reason to move on, but it is a social reason, not an educational one.

Should we skip straight to Python because it is what schools use?

Only if your child is around 12 or older and wants it. Younger than that, setup friction and text-only output cause more quitting than the language is worth. The concepts transfer either way. A loop is a loop.

Is HTML actually coding?

HTML and CSS are markup and styling. JavaScript is programming. The web path works as a bridge because it starts with the forgiving parts and adds real programming gradually.

How long before they can build something real?

On the web path, a simple real page in session one and something worth showing someone in two to three weeks. On the Python path, four to eight weeks before output stops being terminal text.

What if they quit after two weeks?

Common and usually recoverable. The cause is normally the visible-reward drop described above. Go back to a project they picked, make it smaller, and let them modify working code rather than start from a blank file.

What you can do on CodeIt

Last verified 2026-08-21.