The short answer
There is no single 'right age,' but most children are ready to start structured computing between 9 and 11 — roughly Classes 4 to 5. Before that, tablet apps and playful exploration are more appropriate. After Class 10, the gap between the student and an adult-oriented program shrinks enough that general coding courses become viable.
What matters more than age is how the program is structured. A nine-year-old and a fourteen-year-old have entirely different learning styles, attention spans, and motivations. A single curriculum that tries to serve both will serve neither well.
What research tells us
Cognitive development research consistently shows that children around age 8–9 begin to develop abstract thinking skills — the ability to reason about systems, cause and effect, and sequential logic. These are the foundations of programming.
This does not mean younger children cannot engage with computational concepts. Block-based tools like Scratch are designed precisely for children who are still developing abstract reasoning — they make logic concrete and visual. But there is a meaningful difference between a child 'playing with code' and a child building a mental model of how software systems work.
By age 10–12, most children can handle the transition from purely visual tools to a hybrid of visual and text-based code. By 13–14, the shift to fully text-based languages like Python becomes natural rather than forced.
Why age-banded programs matter
A 10-year-old placed in the same group as a 15-year-old will either feel lost or bored, depending on the curriculum's pace. Neither outcome builds the confidence that makes programming stick.
Code Camp structures this explicitly: Band A for Classes 4–6, Band B for Classes 7–8, Band C for Classes 9–10. Each band has different tools, pacing, and project complexity. A child who starts in Band A and progresses naturally is never asked to skip developmental stages — they advance when ready, not when the calendar says so.
We also do placement assessments before the first session. If a child already has Scratch experience when they join in Class 5, they may start in Band B. The goal is to put every child where they will be challenged but not overwhelmed.
What we see in practice
Children who start in Classes 4–5 with no prior experience have one major advantage: they have not yet formed the belief that "coding is hard." They approach it the way they approach drawing or playing an instrument — as something you get better at with practice.
By contrast, children who start in Class 8 or 9 after years of hearing that coding is for 'tech kids' sometimes carry a fixed mindset into the first session. Not insurmountable — but it takes more early wins to overcome. Starting earlier, when curiosity is still unopinionated, gives children a head start that has nothing to do with ability.
The practical answer: if your child is in Class 4 or above, now is a fine time to start. If they're younger, encourage playful creation — Scratch Junior, story apps, simple games. The structured curriculum can wait; the curiosity should not.