Best states for therapist pay / Minnesota

Where therapists earn the most in Minnesota

Minneapolis-St. Paul-Bloomington pays the most on paper. St. Cloud is where it goes furthest — $106,667 after tax and cost of living.

Therapists
Assistants
Real value by areaTap an area to zoom in
$89k$107k

Pay after state income tax, divided by local cost of living. Hatched areas have no cost-of-living index.

Pay against cost of living

One dot per metro, sized by how many physical therapists work there.

Hover or tap any area to see its full breakdown.

Every Minnesota area, ranked

By real value. Each profession ranked on its own.

Physical therapists

#AreaMedianAfter taxCost of livingReal value
1St. Cloud$98,660$93,47587.6$106,667
2Mankato$101,260$95,89891.0$105,434
3Rochester$100,140$94,85490.8$104,440
4Duluth$96,690$91,63888.8$103,234
5La Crosse-Onalaska$97,550$92,44091.8$100,731
6Grand Forks$88,670$84,16486.7$97,116
7Sioux Falls$91,470$86,77390.6$95,744
8Minneapolis-St. Paul-Bloomington$102,450$97,007104.8$92,544
9Fargo$85,330$81,05190.9$89,193
Northeast Minnesotano COL data$110,390$104,407
Northwest Minnesotano COL data$101,380$96,010
Southeast Minnesotano COL data$97,390$92,291
Southwest Minnesotano COL data$95,680$90,697

Ranked by real value — pay after Minnesotaincome tax, divided by that area's cost of living. Rows marked “no COL data” are BLS nonmetropolitan regions, which BEA publishes no price index for; their pay is shown but they are left unranked rather than compared against a borrowed average.

Occupational therapists
#AreaMedianAfter taxCost of livingReal value
1St. Cloud$93,950$89,08587.6$101,658
2Mankato$87,770$83,32591.0$91,611
3Duluth$84,440$80,22188.8$90,372
4Rochester$85,000$80,74390.8$88,904
5Sioux Falls$84,660$80,42790.6$88,741
6Grand Forks$80,830$76,85786.7$88,685
7Fargo$81,870$77,82690.9$85,645
8La Crosse-Onalaska$82,560$78,46991.8$85,507
9Minneapolis-St. Paul-Bloomington$93,600$88,759104.8$84,676
Northeast Minnesotano COL data$89,710$85,133
Southeast Minnesotano COL data$89,580$85,012
Northwest Minnesotano COL data$87,350$82,934
Southwest Minnesotano COL data$83,300$79,159

Ranked by real value — pay after Minnesotaincome tax, divided by that area's cost of living. Rows marked “no COL data” are BLS nonmetropolitan regions, which BEA publishes no price index for; their pay is shown but they are left unranked rather than compared against a borrowed average.

Speech-language pathologists
#AreaMedianAfter taxCost of livingReal value
1St. Cloud$85,040$80,78187.6$92,182
2Duluth$82,000$77,94788.8$87,810
3Mankato$83,920$79,73791.0$87,666
4Rochester$83,140$79,01090.8$86,995
5Minneapolis-St. Paul-Bloomington$93,370$88,544104.8$84,471
6Grand Forks$76,290$72,62686.7$83,802
7La Crosse-Onalaska$79,300$75,43191.8$82,197
8Fargo$76,640$72,95290.9$80,281
9Sioux Falls$68,920$65,75790.6$72,554
Southeast Minnesotano COL data$88,230$83,754
Southwest Minnesotano COL data$83,430$79,280
Northeast Minnesotano COL data$81,320$77,314
Northwest Minnesotano COL data$80,740$76,773

Ranked by real value — pay after Minnesotaincome tax, divided by that area's cost of living. Rows marked “no COL data” are BLS nonmetropolitan regions, which BEA publishes no price index for; their pay is shown but they are left unranked rather than compared against a borrowed average.

Physical therapist assistants (PTA)
#AreaMedianAfter taxCost of livingReal value
1Rochester$73,580$70,10090.8$77,185
2St. Cloud$64,120$61,28387.6$69,932
3Duluth$64,900$62,01088.8$69,856
4La Crosse-Onalaska$63,180$60,40791.8$65,825
5Minneapolis-St. Paul-Bloomington$69,790$66,568104.8$63,505
6Sioux Falls$49,080$47,26690.6$52,152
Southeast Minnesotano COL data$66,280$63,296
Northwest Minnesotano COL data$65,000$62,103
Southwest Minnesotano COL data$59,740$57,201

Ranked by real value — pay after Minnesotaincome tax, divided by that area's cost of living. Rows marked “no COL data” are BLS nonmetropolitan regions, which BEA publishes no price index for; their pay is shown but they are left unranked rather than compared against a borrowed average.

Occupational therapy assistants (COTA)
#AreaMedianAfter taxCost of livingReal value
1Fargo$63,660$60,85590.9$66,968
2La Crosse-Onalaska$60,940$58,31991.8$63,550
3Minneapolis-St. Paul-Bloomington$66,210$63,231104.8$60,322
4Sioux Falls$56,180$53,88390.6$59,453
Southeast Minnesotano COL data$65,220$62,308
Northwest Minnesotano COL data$62,240$59,531

Ranked by real value — pay after Minnesotaincome tax, divided by that area's cost of living. Rows marked “no COL data” are BLS nonmetropolitan regions, which BEA publishes no price index for; their pay is shown but they are left unranked rather than compared against a borrowed average.

How this is calculated

Median pay is the median annual wage from the BLS Occupational Employment and Wage Statistics program (May 2025 release), for each profession in each Minnesota area.

After taxsubtracts modeled state income tax for a single filer taking the standard deduction, computed at each area's own median wage rather than copied down from the state figure. Federal tax and FICA are excluded — they don't vary by area, so they don't change the ranking.

Real valuedivides after-tax pay by that metro's own cost of living — BEA Regional Price Parities for 2024, where the US average is 100. Metro-grain, not the statewide figure used on the national map.

Map areas are the exact areas BLS reports wages for, built by dissolving Census county boundaries with the BLS OEWS area definitions — so the map and the wage data describe the same geography by construction.

Metros that cross a state line — the New York and Philadelphia metros on this page, for example — carry one BLS wage figure covering the whole metro, and their state income tax is modeled at Minnesotarates, which is the right read for a clinician living on this side of the line. They're marked in the table.

Limits: single filer only; BLS blends full-time, part-time and PRN and every experience level into one median; and 4 nonmetropolitan regions carry BLS pay but no cost-of-living index, so they are shown unranked rather than estimated. This is a comparison of typical pay, not personalized tax advice.

What should you be getting paid in Minnesota?

Compare local salaries by experience and practice setting.

Compare local salaries

Educational use only. Rehab Wealth Project provides calculators and content for informational purposes and does not constitute financial, tax, or legal advice. Results are estimates based on the inputs you provide and current federal rules; your actual outcome will vary. Consult a licensed professional before making decisions about your finances.

© 2026 Rehab Wealth Project. All rights reserved.