Salaripedia
English

How much does an elementary school teacher make in St. Louis?

$60,650a year

Median yearly pay for elementary school teachers in the St. Louis, MO-IL metro area. That is $29.16 an hour or $5,054 a month.

Hourly
$29.16
Vs. national median
-5%
Rank among cities
244 of 383
Jobs in the area
13,440
Pay range
Lowest 10%: $47,210Median: $60,650Highest 10%: $83,750
PercentileYearlyHourly
10th$47,210$22.70
25th$49,440$23.77
Median$60,650$29.16
75th$77,450$37.24
90th$83,750$40.26

Other cities in Missouri

Median yearly pay for elementary school teachers.

Kansas City, MO$61,060
Springfield, MO$49,380
St. Joseph, MO$49,140
Joplin, MO$48,770
Jefferson City, MO$47,960
Columbia, MO$47,920
Cape Girardeau, MO$47,100
Elementary School Teacher salary in Missouri Elementary School Teacher salary in all states

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
Salaries for every job in St. Louis, MO

Frequently asked questions

How much does an elementary school teacher make an hour in St. Louis?

The median hourly pay in the St. Louis, MO-IL metro area is $29.16 ($60,650 a year).

Do elementary school teachers make more in St. Louis than the national average?

No: $60,650 against $63,970 nationally, 5% less.

How does St. Louis compare with the rest of Missouri?

The median in Missouri is $50,910, so St. Louis pays 19% more.

Where does St. Louis rank for elementary school teacher pay?

244 of 383 metro areas with data.

How much does an elementary school teacher make starting out in St. Louis?

The lowest-paid 10% make $47,210 or less a year; the top 10% make $83,750 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.