How much does a substitute teacher make in St. Louis?
$35,900a year
Median yearly pay for substitute teachers in the St. Louis, MO-IL metro area. That is $17.26 an hour or $2,992 a month.
- Hourly
- $17.26
- Vs. national median
- -14%
- Rank among cities
- 180 of 323
- Jobs in the area
- 6,180
Pay range
Lowest 10%: $29,420Median: $35,900Highest 10%: $58,800
| Percentile | Yearly | Hourly | |
|---|---|---|---|
| 10th | $29,420 | $14.14 | |
| 25th | $34,380 | $16.53 | |
| Median | $35,900 | $17.26 | |
| 75th | $38,470 | $18.50 | |
| 90th | $58,800 | $28.27 |
Other cities in Missouri
Median yearly pay for substitute teachers.
| Kansas City, MO | $40,440 |
| St. Joseph, MO | $33,480 |
| Springfield, MO | $32,190 |
| Jefferson City, MO | $31,750 |
| Joplin, MO | $30,780 |
| Columbia, MO | $30,740 |
| Cape Girardeau, MO | $30,000 |
Related jobs in St. Louis
Same field, median yearly pay.
| Health Specialties Teacher | $131,600 |
| Computer Science Teacher | $102,900 |
| Physics Teacher | $102,500 |
| Business Teacher | $101,700 |
| Chemistry Teacher | $101,100 |
| Biological Science Teacher | $97,120 |
| Sociology Teacher | $96,240 |
| History Teacher | $92,140 |
| Career/Technical Education Teacher | $87,860 |
| Mathematical Science Teacher | $83,390 |
Frequently asked questions
How much does a substitute teacher make an hour in St. Louis?
The median hourly pay in the St. Louis, MO-IL metro area is $17.26 ($35,900 a year).
Do substitute teachers make more in St. Louis than the national average?
No: $35,900 against $41,670 nationally, 14% less.
How does St. Louis compare with the rest of Missouri?
The median in Missouri is $34,790, so St. Louis pays 3% more.
Where does St. Louis rank for substitute teacher pay?
180 of 323 metro areas with data.
How much does a substitute teacher make starting out in St. Louis?
The lowest-paid 10% make $29,420 or less a year; the top 10% make $58,800 or more.
Source: U.S. Bureau of Labor Statistics, Occupational Employment and Wage Statistics (OEWS): pay in May 2025, published by BLS in 2026. Hourly pay is the yearly figure divided by 2,080 hours.