The government school system has become more of a jobs program for adults than an education initiative for kids. https://t.co/DvIkbNNbzu pic.twitter.com/aWd1jKhqFv
— Corey A. DeAngelis, school choice evangelist (@DeAngelisCorey) March 15, 2025
The tweet above links to Mr. DeAngelis’s tweet on twitter. (I’ll discuss the reasons for calling it twitter way down at the end.) Thanks to him for thoroughly documenting his sources. Here’s the graphic linked in Mr. DeAngelis tweet:
For better or worse, Will Swaim, president of the California Policy Center, asked me to verify the numbers. That was the easy part. Here are my calculations.
As you would expect, here’s the link to my Excel workbook.
So here’s how Corey A. DeAngelis sent me into a deep dive on education. This is mainly turning the data into graphs. First, let’s look at the total numbers of students, teachers, principals, and administrators. Unsurprisingly, there are far more students. But note the drop in 2020. The education system still has not recovered from the COVID insanity.
So let’s remove students. It may be mildly surprising to learn there are many, many more teachers than principals, administrators, or the sum of the two.
Here are the two remaining categories. More principals than administrators, but the gap is narrowing.
But the real issue is the number of students per teacher. Until 2020, the ratio remained close to 16 to 1. But, starting in 2020, that ratio fell to 15.4. COVID caused the initial hit, but the ratio remains low.
The students – principals and students – administrators ratios are, naturally, considerably higher. The student-principal ratio has stayed pretty steady, declining slightly. This is probably caused by technological improvements. And, encouragingly, the students-administrator ratio has declined steadily.
Fun stuff. If you enjoyed this, my Excel workbook has the full tables 203.10 and 213.10.
Now, about twitter. Elon Musk is obsessed with the letter X. I do not share his obsession. And I like posting tweets on twitter. As a small compromise, I use a lower-case t in the name.






