The benefits around teaching kids to code have gained more and more momentum -- making the market for apps and sites offering computer science curriculum and activities crowded. Thankfully, there are low-barrier, low-cost tools that have cross-curricular appeal and lots of support for educators (or caregivers!). They have this in common: They introduce computational thinking, and they all have block-based elements that allow kids to code without knowing a programming language. After spending time using them (so you don't have to), we chose an overall top pick and can guide you to the right tool for your circumstances.

Please note: Common Sense Education is a nonprofit with a strong commitment to an unbiased, in-depth editorial process. Our ratings and reviews of learning media aren't influenced by developers or funders, and we never receive payments or other compensation for our reviews.

Best overall

Our top pick

Code.org

A thoughtfully planned, produced, and curated set of free resources bound to get kids hooked on learning to code.

Grades:  K–12
Price:  Free
Privacy:    
 
Platforms:  Web

If you want to integrate coding into your classroom, and you need a flexible -- and free -- tool that offers a lot of support, Code.org is it. Not only does it have a scope and sequence from elementary through high school, but it also has Hour of Code activities so kids can jump right into creation. And you don't have to know squat about computer science to get started. From a student perspective, it can meet you at your skill level and entice you with pop culture elements. As an educator or caregiver, you'll find cross-curricular options and ways to track student progress. Overall, Code.org has the widest range of flexible, accessible resources for free.

Runner-up

Tynker

Tynker empowers students of all ages and experience levels to create custom coding projects for a variety of platforms.

Grades:  K–12
Price:  Free to try
Privacy:    
Not yet rated
Platforms:  Web, iPod Touch, Windows + 3 more

A big difference is that, while Tynker has a bit of content for free, it's mainly a paid platform. But Tynker's whole look and feel is slicker, the kids' dashboard is more robust, and the "jump right in" options include ebook coding, AR and robotics, multiplayer activities, and more Minecraft content. Teachers have access to pre-made presentations and communication tools. There's also a version -- Tynker Junior -- for early learners. On the downside, Tynker doesn't have as many language options as Code.org, and if educators recommend it to parents, parents should know that they'll receive marketing emails with upselling options.

Other recommendations

Best for simplicity and scaffolding

Scratch

Scratch draws students of all types into coding and lays a foundation for future learning.

Grades:  2–12
Price:  Free
Privacy:    
 
Platforms:  Web, Android, Mac

Perhaps the true genesis of the coding surge, Scratch is a launchpad for many other platforms. It offers tutorials for kids, printable step-by-step cards, ideas for teachers, and a robust educator community. Teachers can use the Creative Computing Curriculum if they need a more scaffolded process. It also has lots of project options, like music, art, games, stories, and more. Plus, there are Studios that are themed communities. However, it doesn't have the bells and whistles or extensive options that either Code.org or Tynker has. That said, Scratch is more targeted, so it might be the right choice for elementary coding learning and fun. If you want more Scratch content that's thoughtfully organized into themed, video-based lessons, check out Google CS First, which has cool, cross-curricular lessons in both English and Spanish. Like Tynker, there's an early learning version called ScratchJr and a PBS Kids mash-up app.

Best for a focused curriculum

Kodable

A fun way for young students to understand coding, and an impressive resource for teachers to support their progress.

Grades:  K–5
Price:  Free to try
Privacy:    
 
Platforms:  iPad, iPhone, iPod Touch + 1 more

If you're looking for a clear curriculum, Kodable is a great option. There's no option for students to just jump in, so be prepared to use the teacher supports and take kids through lessons. For kids who have more experience, it might be tedious, as the process is fairly lock-step. It has a free educator plan, though you need a paid plan to track student progress and access to all of the content. Also, it's good to know that there aren't multilingual options.

Best for early-learning or app-only

codeSpark Academy

This is a great, free choice for classroom coding that empowers students to create.

Grades:  K–3
Price:  Free
Privacy:    
 
Platforms:  Android, iPad, iPhone + 4 more

As mentioned above, "junior" versions of Tynker and Scratch are great starting points for pre-readers who are comfortable with tablets and drag-and-drop mechanics, but codeSpark Academy is also an excellent option that's accessible for schools. Not only is it free, but teachers can monitor student progress. Plus, there's almost nothing to read, so it's easy for ELLs and pre-readers to use. On the flip side, there are no instructions or hints, so it's possible for kids to get stuck, but there's a solutions guide for teachers to reference. The cute characters, fun design, and ability to create and share games also boosts its value for little kids who are learning to code.

Best for practical application

LearnToMod

For students who already know and love Minecraft, this is a valuable way to hook students into coding.

Grades:  5–12
Price:  Paid
Privacy:    
Not yet rated
Platforms:  Web

For kids who want to make something others can use, there's no easier bridge than Minecraft to transport kids from creation to coding. While there are other great platforms that have block-based game creation, like Stencyl, using Minecraft as a jumping off point will serve as a natural progression for many students. Kids start with drag-and-drop coding, but can jump into Javascript when they're ready.

Compare the tools

Code.org

Code.org

Our top pick

Tynker

Tynker

Runner-up

Scratch

Scratch

Best for simplicity and scaffolding

Kodable

Kodable

Best for a focused curriculum

codeSpark Academy

codeSpark Academy

Best for early-learning or app-only

LearnToMod

LearnToMod

Best for practical application

Grades K–12 K–12 2–12 K–5 K–3 5–12
Price Free Free to try Free Free to try Free Paid
Privacy
 
Not yet rated
 
 
 
Not yet rated
Platforms Web Web, iPod Touch, Windows, iPhone, iPad, Mac Web, Android, Mac iPad, iPhone, iPod Touch, Web Android, iPad, iPhone, iPod Touch, Kindle Fire, Chrome, Web Web
Pros Focused activities allow students to work at their own pace and stay challenged. Varied content, customizable assignments, and integration with popular platforms (Minecraft, Lego WeDo) make coding fun and relatable. Massive community for support and resources, can easily integrated into different subjects. Visual instructions and step-by-step levels help kids explore programming concepts even before they learn to read. Game-like style is well designed, allows young students to put coding concepts into practice. Turns Minecraft into a tool for learning coding, has good scaffolding of skills, is great for independent learning.
Cons Without guidance, students might choose activities at random instead of following the scaffolded curriculum. Instructions are mainly text-based; lessons would reach more learners through a multimodal delivery and more extensive multilingual support. Moderation depends on user reporting. Anyone, even adults, can create accounts. Doesnt include text-based coding. A teacher's biggest challenge may be finding the time for students to discover all there is to learn and do. Teachers will need to compensate for lack of in-game help. Not suited for students who aren't Minecraft fans, and may require a lot of classroom time to get started.
Bottom Line A thoughtfully planned, produced, and curated set of free resources bound to get kids hooked on learning to code. Tynker empowers students of all ages and experience levels to create custom coding projects for a variety of platforms. Scratch draws students of all types into coding and lays a foundation for future learning. A fun way for young students to understand coding, and an impressive resource for teachers to support their progress. This is a great, free choice for classroom coding that empowers students to create. For students who already know and love Minecraft, this is a valuable way to hook students into coding.
Read our review Read our review Read our review Read our review Read our review Read our review

How We Rate

Our recommendations are based on a research-backed rubric we use to rate apps and websites. Here are just a few sample criteria from this rubric:

  • Engagement

    Would it motivate students and hold their interest? Is it visually appealing? Would it inspire teachers to try something new or change their instruction?

  • Pedagogy

    Does the tool help teachers promote a more student-centered experience? Will students gain conceptual understanding or think critically? Does it deepen teachers' pedagogical thinking?

  • Support

    Can students and teachers get assistance when they need it? Is it created with people of different abilities and backgrounds in mind? Is learning reinforced and extended beyond the digital experience?

About Our Review Process

Common Sense Education is editorially independent, nonprofit, and research-backed. Our team of editors and reviewers—all current or former educators and/or researchers—look at dozens of products before choosing a select few for deeper evaluation and consideration. Each product goes through a rigorous evaluative process by both a reviewer and an editor. This involves hands-on testing (including in some cases in classrooms or other real scenarios), rating according to our research-backed rubric, communication with developers and other educators, and finally a written review. We also consult our vast library of from-the-field reviews submitted by practicing educators. Learn more or request a product review.