Your child wants to learn coding and you want to know what is actually free, safe, and worth their time. The short version: for ages 6 to 12, Scratch and Code.org teach coding through colorful blocks you snap together, so kids build real projects without wrestling with syntax. For ages 13 to 17, freeCodeCamp and The Odin Project teach the same text-based coding professional developers use, at no cost. Match the starting point to the age and you avoid most of the frustration that makes kids quit.
Scratch, built by MIT, has more than 100 million registered accounts, most of them children (source: Scratch statistics, scratch.mit.edu/statistics). That scale is a good sign: block-based coding genuinely works for young learners, and it is completely free.
For younger kids (ages 6 to 12): block-based coding
Young kids learn to code best by dragging blocks, not typing. Block-based tools remove the frustration of typos and missing semicolons, so your child can focus on logic, sequencing, and cause and effect. Three free options stand out.
Scratch (MIT, completely free). Kids build interactive stories, games, and animations by snapping together colored blocks. There is no cost, no code to type, and a huge library of projects other kids have shared that yours can open up and remix. A 7-year-old can make a cat chase a ball across the screen in one sitting, which is exactly the kind of quick win that keeps a young child coming back. Honest limitation: Scratch is open-ended, so some kids need a parent or a project list to give them direction instead of poking around aimlessly.
Code.org. This nonprofit runs the Hour of Code you may have seen at your child's school. It offers free, structured courses organized by grade, with Minecraft and Frozen themed puzzles that hook younger kids fast. The lessons build on each other, so there is a clear path rather than a blank canvas. Honest limitation: the themed branding is aimed squarely at young children, and kids around 11 or 12 sometimes find it babyish and want something with more room to build.
Khan Academy Computing. Khan Academy's free computing section teaches drawing and animation with JavaScript through guided, talk-through tutorials. It sits between pure blocks and real code, which makes it a good bridge for a kid who has outgrown Scratch but is not ready for a full programming course. Everything is free and self-paced. See our Khan Academy profile at /platforms/khan-academy for the full course list. Honest limitation: the interface is more lecture-driven than playful, so it suits kids who like being walked through steps more than kids who want to jump straight into making things.
For teens (ages 13 to 17): text-based coding
Once a teenager can type comfortably and wants to build things that look real, block-based tools start to feel limiting. This is the age to move to text-based coding, the actual languages developers use at work. Three free paths work well.
freeCodeCamp. Free, self-paced, and browser-based, so there is nothing to install. The Responsive Web Design certification is the best starting point: your teen builds real web pages with HTML and CSS and can show friends and family what they made. Each step is small and the feedback is instant, which suits teens who like clear progress. freeCodeCamp also issues free certificates a teen can add to a first resume or a college application. More on the platform at /platforms/freecodecamp. Honest limitation: it is entirely self-directed, so a teen who needs external deadlines may drift without a parent checking in.
CS50P: Introduction to Programming with Python (Harvard). This is Harvard's free Python course, and it is genuinely challenging. Your teen learns to write real programs and solve problems that make them think hard. Finishing it is a real achievement. Python is a common and forgiving first text language for teens; see our Python hub at /languages/python for more free courses. Honest limitation: it is university-level and moves fast, so it fits motivated teens around 15 and up more than a casual beginner.
The Odin Project. Built for people who want to become real developers, it has your teen using Git, a code editor, and the command line early on, then building projects they deploy online. For a motivated older teen who wants to build actual websites and apps, nothing free gets them closer to how professionals work. Honest limitation: the setup and self-direction are hard, and a teen who bounces off it should start with freeCodeCamp first and come back later.
How to structure coding practice at home
You do not need to know how to code to help your child stick with it. A few habits matter more than the platform you pick.
Keep sessions short. Thirty focused minutes a few times a week beats a three-hour marathon that ends in tears. Coding is mentally tiring, and young kids especially burn out fast.
Make it project-based. A child building a game they care about will push through a hard bug. A child working through lessons with no goal often quits. Ask what they want to make, then help them find the course that gets them there.
Let them get stuck. The instinct is to jump in and fix it. Hold off for a few minutes. Working through a problem, even a small one, is where the real learning happens. Your job is encouragement, not answers.
Sit with them sometimes. You do not have to understand the code. Asking your child to explain what they built teaches them to think clearly, and it shows them you care about what they are doing.
A quick word on safety. Scratch, Code.org, and Khan Academy all have community features where kids can share projects and leave comments. These are moderated, but for a younger child it is worth turning off or limiting the social parts and keeping the account under your email. Scratch lets you manage this in the account settings, and Code.org accounts for under-13s are built to be teacher and parent managed. The coding itself is safe. The comment sections are where you want a light hand on the controls.
What comes after these free courses?
Here is the part parents underestimate. A teen who finishes freeCodeCamp's certifications or The Odin Project's Foundations path is not just playing around. They have real, in-demand skills. Some teens use these to build websites for local businesses, freelance, or contribute to open-source projects before they finish high school. Others walk into a university computer science program already knowing how to code, which puts them ahead of most of their classmates.
None of this requires paying for a bootcamp or an online academy. The free courses here cover the same ground the paid ones do. The path forward is simple: keep building projects, learn the next thing when the current one clicks, and let the portfolio grow. Real skills and a body of work matter far more than any certificate money can buy.
Our verdict
For kids under 12, start with Scratch and Code.org. They are free, safe, and designed to make a young child feel like a maker rather than a student. For teens, freeCodeCamp plus one of The Odin Project's beginner tracks is the most direct free path to real programming skills, with CS50P as a strong Python option for motivated older teens. You do not need to spend a cent, and you do not need to know how to code yourself. Pick the starting point that fits your child's age, keep the sessions short and project-based, and let them build things they actually care about.
For a wider set of kid and teen picks, see our
audience guide for kids and teens. If you are learning alongside your child or starting from zero yourself, our guide on
how to learn to code for free covers the adult path.