What’s something that builds kids’ creative and problem solving skills while they also learn an in-demand skill set for their future? If you guessed programming, you’re exactly right! According to the US Bureau of Labor Statistics, the demand for software developers in 2028 is going to be 21 percent higher than it was in 2018. In other words, it’s a good idea to get students introduced to coding at a young age. Although it can appear daunting at first, there are many great courses that teach programming for kids online, whether that be through structured programs, games, or self-directed learning. Read on to see some free online tools for teaching kids programming!

Begin the best programming for kids online

Online coding programs are a fun and approachable way to introduce kids to programming. Games and block-based coding are better entry points for younger students (5-10), while older students may want to dive right into text-based coding (10+). This post will focus on free, online programs in particular.

Online learning is great for starting kids with programming because it’s:

  • Flexible: The student is free to learn whenever and wherever they are.
  • Fun: Many of these online games and programs are designed to keep students engaged by teaching concepts using game-like elements.
  • Accessible: There is a program for any level of student, whether they are complete beginners or want to deepen their existing skills.

Explore free online coding programs

Coding programs offer a structured approach to learning programming. They often have specifically outlined goals/curricula, and can help guide students to a specific goal i.e. developing a Roblox game.

1. Create & Learn's Free Coding Classes

Create & Learn’s award-winning curriculum offers a number of different free classes to introduce students to coding. Younger students and those who have never coded before, can start with block-based programming, taught in their Scratch and Accelerated Scratch intro courses. Students with prior experience could pursue a number of paths, whether they try Create & Learn’s AI Explorers intro course, learn to build virtual game worlds in Roblox, or make cool Minecraft mods! As an added bonus, after attending their intro courses, you receive a discount for enrolling in the paid courses, when you decide to continue with the program.

Best for ages: K-12

What parents say: "These virtually taught classes are so engaging, my son really enjoys them and is so excited to show us the coding projects he has completed on all 3 levels of Scratch Ninja. We will definitely be signing him up for more classes and thoroughly recommend Create & Learn to other parents." - parent Amanda E.

2. Code.org

Code.org is a non-profit organization which strives to bring computer science education to every student’s core education. They are also the creators of the Hour of Code program, which has been utilized by more than 15% of all students in the world! There are over 500 Hour of Code projects and games that explore a wide range of topics, from app design to AI and beyond. For students who want to dive deeper into a subject area, Code.org also offers a larger course catalog in which students can dive into languages such as JavaScript, HTML, CSS and more.

Best for ages: K-12

What experts say: "I have never, ever seen my students so excited about learning." - Frank Martinez, Teacher

3. Khan Academy

Khan Academy has a long track record of providing free educational resources in a wide range of subjects. Their computer science curriculum focuses on the key components of web design. It allows students to learn HTML, CSS, and JavaScript, which are some of the most commonly used languages in web design. Additionally, students can get an introduction into SQL databases and also explore the jQuery library. The curriculum is self-paced, and includes written tutorials, video tutorials, and challenges for practicing concepts. This course is best geared toward middle and high school students, and is better suited for those who have some prior coding experience. Students taking the AP Computer Science Principles course would also benefit from checking out their AP CSP courses.

Best for ages: 12+

What experts say: "Khan Academy is a reliable and highly useful source of academic learning" - Jill Duffy, PC Mag

4. Code Combat

Code Combat’s programs teach students how to program in JavaScript and Python through a RPG (role-playing game) based engine. Students work with teachers to progress through different levels by writing text-based code to solve problems. Code combat offers free, 60-minute introductory courses in both languages; however, once the intro is completed, students need to pay to enroll in more advanced courses. Additionally, they offer a competitive coding league called AI League, which allows students to compete against other players or AI and receive scores based on how well their code performs. Students who place in the top 3 on the leaderboard are eligible for cool prizes like gaming keyboards and headsets! This course would likely benefit students who have some prior knowledge of programming.

Best for ages: 7-16 years old

What experts say: "CodeCombat has provided a platform that is engaging  and beneficial for the students. They have developing been coding skills in both Javascript and Python that they will be able to use for future job opportunities." - Scott Cook, Riverdale High School Principal

5. Code Monkey

Students can have fun helping Monkey recover all of his stolen bananas in Code Monkey’s courses! The program follows a linear progression through a number of text-based coding courses, using the programming languages CoffeeScript and Python. Students need not have any prior programming experience to start with Code Monkey. Unlike the previously mentioned programs, Code Monkey can be used in a web browser or on a tablet. You may begin by creating a parent account using the free trial period; once this trial is complete, you can pay for a monthly or annual subscription to extend your student’s access to the program. This is a nice program for students who are interested in self-guided learning, without the help of a live instructor.

Best for ages: Pre-k to 8th grade

What experts say: "Of the few I looked at CodeMonkey was both immediately available (nothing to download) and also did an excellent job of explaining programming concepts in a series of fun logic puzzles. The creators have done an excellent job in keeping each lesson accessible and building off of the concepts in the previous lessons. The gamification also helps tremendously. Who doesn't like to see three starts? My 9 year old can't get enough of it and is absorbing the material in leaps and bounds." - Eric. G, Parent (via Common Sense Media)

Try fun coding games online

Coding games allow students to learn the fundamentals of coding while having a great time. Younger students especially benefit from coding games, as these games excel at keeping students engaged. Here are some of the best coding games to check out.

1. Code Karts

Code Karts is a free app available for Android and iOS devices that helps students learn the basics of logic. Students use color-coded direction blocks to help guide their car from the start line to the finish line. The game is quite simple to understand and feels much more like a “game” than an “intro to coding.” As such, this app would be suitable for very young students as an introduction to logic and problem solving, but not suitable for a late elementary/middle school student who wants a true coding intro. There are different modes offered, including a solo mode, duo mode against an AI, and a game for practicing binary code. Note that although the app is free, a purchase is necessary to unlock more levels and game modes.

Best for ages: 4-8

2. Blockly

Blockly is a website with a number of free games for students to try out. Essentially, each game functions to introduce students to some element of block coding. For example, the maze game allows students to practice moving a sprite around a screen, while the bird game introduces the idea of moving at an angle based on degrees. What’s interesting about this game is that once you solve a problem, the program converts your block code into lines of code and tells you how many lines of code you needed to solve the problem, which helps to make the connection between block and text-based code. This game has little replay value however, as there aren’t many levels and they’re the same each time you play.

Best for ages: 5-12

3. Algorithm City

Algorithm City is an app available over the Google Play Store that allows students to get practice with the foundations of coding. Students guide their chosen character around a map using code blocks, in order to collect all of the gold placed throughout the level. This game progresses from simple command sequencing with block code into loops, and eventually creating functions. There are 51 total levels broken into 4 categories based on the difficulty level of the concepts being taught. As far as coding games go, this simple app excels at introducing the advanced concept of functions in an entertaining way!

Best for ages: 6-13

4. Lightbot: Code Hour

Lightbot: Code Hour is an app available for Android, iOS, and Amazon devices that introduces students to the basics of logic and programming. Players are tasked with helping a robot move around a level until it reaches a lit up tile. The levels are broken up into 3 sections: basics, procedures, and loops. This progression allows students to have fun while advancing through foundational programming concepts. Unlike other games, Lightbot has multiple save slots so that different players can work through the game at their own pace, without impacting each other’s progress! Lightbot: Code Hour is free and is designed to be completed in around an hour; however, there is an extended version of the game available for $2.99 which has 50 total levels.

Best for ages: 6-13

5. Swift Playgrounds

Swift Playgounds is available on Mac or as an iPad app, and is a game designed to teach text-based programming using the Swift language. Programming concepts are broken down into smaller modules, in which students are given code that they can experiment with and use to solve problems such as moving a character around a map. Although the educational side of the app is simple, the app itself is capable of extensive Swift development as it includes full access to the iOS SDK, rich error messages, and fast code compilation among other features. As such, this game would be great for ambitious students who have some coding background and want to take the initiative into making advanced iOS programs.

Best for ages: 10+

For even more fun, check out free coding games for kids.

Discover helpful coding websites for kids

Coding websites allow students the freedom to explore concepts they are interested in, without the constraints of a structured curriculum or a game. Students who want to tackle their own projects and practice advanced coding concepts and algorithms should definitely check these sites out!

1. W3Schools

W3Schools offers industry-standard tutorials in numerous web-development languages and technologies. It is one of the most popular web development websites, with over 60 million visitors each month. Each language has its own set of tutorials, which are broken down into small, easily-digestible chunks of content. Virtually every page has an opportunity to experiment with the provided code examples via their “Try it yourself” in-browser IDE. For HTML specifically, they offer a free video course, and every technology includes a 25-40 question knowledge quiz at the end. This website is great for strongly-motivated students who want to learn on their own; however, there are no instructors or means of asking questions other than their community forum.

Best for ages: 12+

2. Scratch

Developed by MIT, Scratch is the world’s largest online coding community for children. It features easy-to-learn block coding, which is a great way to introduce students to programming. Scratch does offer some basic tutorials through its “Ideas” page; however, numerous other websites offer instruction using Scratch including Create & Learn, Hour of Code, etc. Scratch is 100% free for students, and by creating an account, students can not only save their projects for later, but also can view and build off of other students’ projects by using the “Remix” features. Students age 5-7 can also benefit from trying Scratch Junior, which is similar but designed to target a younger audience.

Best for ages: 8-16 (Scratch Junior 5-7)

3. Trinket.io

Trinket.io is an online platform for writing and running simple code in-browser. It offers support for a wide range of languages, including Python, R, HTML, and others! By creating a free account, students are able to save their work and build off of other’s work through the community browser. Students can go through free Python exercises via their “Learn” portal, or they can try some of Trinket.io’s Hour of Code exercises. These tutorials are fairly limited, however, so it’s best to think of Trinket.io as more of a sandbox for exploring coding concepts learned elsewhere.

Best for ages: 10+

4. Stencyl

Stencyl is an engine for creating apps that can be played in browsers, as well as on iOS and Android devices. It uses block-based coding and a large pre-built asset library as a foundation for making games. The Stencyl website offers both quick crash courses for an easy introduction, or an in-depth, top-to-bottom guide for the entire Stencyl feature set. Although it uses simple, block-coding as its foundation, don’t underestimate its effectiveness: this engine has been used to create games that have reached the top of the App Store rankings! Note that although the engine and web app publishing are free, you have to pay to publish to the App Store and the Google Play Store.

Best for ages: 12+

5. Codewars

Codewars is a free, online program that allows you to develop skills in over 55 languages by completing “kata.” Each kata is a short programming problem, which is focused on a specific algorithm. Once you have either completed or failed a kata, you are able to compare your solution to other user’s solutions. This community-based approach allows you to see the numerous different approaches to problem solving, and to learn better, more efficient techniques for coding. Kata is great for expanding your knowledge of algorithms and proficiency with a specific language, but is not suited for beginners and would work better for someone who has previous text-based coding experience.

Best for ages: 14+

Get started with programming for kids online

Let’s recap these three different ways your child can learn programming online:

  • Programs: Structured progression through coding concepts, often times taught by a teacher
  • Games: Games that use either block or text-based coding to solve puzzles, move a character, etc.
  • Websites: Resources that provide information about different program languages, and ways of practicing with them

The best part is, all of the programs, games, and websites in this article are free, so there’s no risk in trying one out! If you still aren’t totally sure what to try, go ahead and enroll your student in Create & Learn’s free Scratch Ninja Intro for starters. While you’re looking for help getting started, you can also check out this article on programming courses for kids.

Written by Create & Learn instructor Dominic Occhietti. Dominic is a graduate of Michigan State University, where he studied music performance and computer science. He thoroughly enjoys teaching, whether that be coding classes, French horn lessons, or even downhill skiing lessons!