Nursing Assistant (CNA) salary in St. Louis, MO

Median pay, St. Louis metro

$39,110/year

about $18.80 an hour full-time

Middle half earns $37,180 – $44,630

Half of nursing assistant (cna)s in the St. Louis metro area earn more than $39,110 a year and half earn less. That's 7% lower than the national median of $42,260, and ranks #23 of the 30 big metro areas we track for this job.

Pay range

PercentileYearlyHourly*
10th (entry level)$35,300$16.97
25th$37,180$17.88
Median (50th)$39,110$18.80
75th$44,630$21.46
90th (top earners)$46,890$22.54

*Yearly pay divided by 2,080 hours (40 hours × 52 weeks), the full-time basis BLS uses.

Is your offer fair?

$

For a nursing assistant (cna) job in the St. Louis metro area, here's how an offer compares:

Before you accept

Also watch for the common warning signs in the posting itself: 15 job posting red flags.

Source: U.S. Bureau of Labor Statistics, Occupational Employment and Wage Statistics, 2025, St. Louis metro. Occupation: Nursing Assistants (SOC 31-1131). Figures cover wage and salary workers and don't include bonuses, benefits or overtime.