Best states for therapist pay / Pennsylvania
Where therapists earn the most in Pennsylvania
Philadelphia-Camden-Wilmington pays the most on paper. Williamsport is where it goes furthest — $110,564 after tax and cost of living.
Pay after state income tax, divided by local cost of living. Hatched areas have no cost-of-living index.
One dot per metro, sized by how many physical therapists work there.
Hover or tap any area to see its full breakdown.
Every Pennsylvania area, ranked
By real value. Each profession ranked on its own.
Physical therapists
| # | Area | Median | After tax | Cost of living | Real value |
|---|---|---|---|---|---|
| 1 | Williamsport | $105,340 | $102,106 | 92.3 | $110,564 |
| 2 | Johnstown | $97,870 | $94,865 | 85.9 | $110,400 |
| 3 | Lebanon | $102,020 | $98,888 | 93.2 | $106,087 |
| 4 | Altoona | $97,710 | $94,710 | 89.5 | $105,813 |
| 5 | Gettysburg | $103,890 | $100,701 | 95.4 | $105,579 |
| 6 | York-Hanover | $102,170 | $99,033 | 96.0 | $103,160 |
| 7 | Scranton--Wilkes-Barre | $99,520 | $96,465 | 93.6 | $103,109 |
| 8 | Reading | $102,950 | $99,789 | 97.1 | $102,812 |
| 9 | Chambersburg | $100,260 | $97,182 | 94.6 | $102,684 |
| 10 | Lancaster | $103,240 | $100,071 | 98.3 | $101,846 |
| 11 | Allentown-Bethlehem-Easton | $104,350 | $101,146 | 100.0 | $101,179 |
| 12 | Erie | $94,830 | $91,919 | 91.0 | $101,065 |
| 13 | Pittsburgh | $97,750 | $94,749 | 94.7 | $100,082 |
| 14 | Philadelphia-Camden-Wilmington | $105,790 | $102,542 | 102.6 | $99,989 |
| 15 | State College | $98,970 | $95,932 | 96.8 | $99,142 |
| 16 | Harrisburg-Carlisle | $100,160 | $97,085 | 98.7 | $98,414 |
| — | Northeastern Pennsylvaniano COL data | $101,540 | $98,423 | — | — |
| — | Central Pennsylvaniano COL data | $99,430 | $96,378 | — | — |
| — | Southwestern Pennsylvaniano COL data | $97,730 | $94,730 | — | — |
| — | Northwestern Pennsylvaniano COL data | $94,410 | $91,512 | — | — |
Ranked by real value — pay after Pennsylvaniaincome 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
| # | Area | Median | After tax | Cost of living | Real value |
|---|---|---|---|---|---|
| 1 | Gettysburg | $107,880 | $104,568 | 95.4 | $109,634 |
| 2 | Williamsport | $98,580 | $95,554 | 92.3 | $103,469 |
| 3 | Lebanon | $98,860 | $95,825 | 93.2 | $102,801 |
| 4 | Lancaster | $102,460 | $99,314 | 98.3 | $101,076 |
| 5 | York-Hanover | $99,180 | $96,135 | 96.0 | $100,141 |
| 6 | Erie | $93,560 | $90,688 | 91.0 | $99,712 |
| 7 | Chambersburg | $97,020 | $94,041 | 94.6 | $99,365 |
| 8 | Philadelphia-Camden-Wilmington | $103,140 | $99,974 | 102.6 | $97,484 |
| 9 | Scranton--Wilkes-Barre | $93,750 | $90,872 | 93.6 | $97,131 |
| 10 | Harrisburg-Carlisle | $98,240 | $95,224 | 98.7 | $96,527 |
| 11 | Allentown-Bethlehem-Easton | $98,440 | $95,418 | 100.0 | $95,448 |
| 12 | Reading | $95,470 | $92,539 | 97.1 | $95,342 |
| 13 | State College | $94,940 | $92,025 | 96.8 | $95,105 |
| 14 | Johnstown | $84,150 | $81,567 | 85.9 | $94,923 |
| 15 | Altoona | $86,900 | $84,232 | 89.5 | $94,107 |
| 16 | Pittsburgh | $90,860 | $88,071 | 94.7 | $93,028 |
| — | Central Pennsylvaniano COL data | $96,330 | $93,373 | — | — |
| — | Northeastern Pennsylvaniano COL data | $93,390 | $90,523 | — | — |
| — | Northwestern Pennsylvaniano COL data | $92,360 | $89,525 | — | — |
| — | Southwestern Pennsylvaniano COL data | $88,460 | $85,744 | — | — |
Ranked by real value — pay after Pennsylvaniaincome 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
| # | Area | Median | After tax | Cost of living | Real value |
|---|---|---|---|---|---|
| 1 | Gettysburg | $104,280 | $101,079 | 95.4 | $105,976 |
| 2 | Lancaster | $103,930 | $100,739 | 98.3 | $102,526 |
| 3 | Chambersburg | $99,840 | $96,775 | 94.6 | $102,254 |
| 4 | Lebanon | $95,680 | $92,743 | 93.2 | $99,494 |
| 5 | York-Hanover | $96,380 | $93,421 | 96.0 | $97,314 |
| 6 | Scranton--Wilkes-Barre | $93,370 | $90,504 | 93.6 | $96,737 |
| 7 | State College | $96,460 | $93,499 | 96.8 | $96,627 |
| 8 | Johnstown | $84,070 | $81,489 | 85.9 | $94,833 |
| 9 | Philadelphia-Camden-Wilmington | $100,080 | $97,008 | 102.6 | $94,592 |
| 10 | Altoona | $86,470 | $83,815 | 89.5 | $93,641 |
| 11 | Allentown-Bethlehem-Easton | $95,960 | $93,014 | 100.0 | $93,044 |
| 12 | Reading | $92,930 | $90,077 | 97.1 | $92,806 |
| 13 | Williamsport | $85,630 | $83,001 | 92.3 | $89,877 |
| 14 | Erie | $84,190 | $81,605 | 91.0 | $89,726 |
| 15 | Harrisburg-Carlisle | $89,650 | $86,898 | 98.7 | $88,087 |
| 16 | Pittsburgh | $81,810 | $79,298 | 94.7 | $83,762 |
| — | Central Pennsylvaniano COL data | $91,710 | $88,895 | — | — |
| — | Northeastern Pennsylvaniano COL data | $90,560 | $87,780 | — | — |
| — | Southwestern Pennsylvaniano COL data | $83,380 | $80,820 | — | — |
| — | Northwestern Pennsylvaniano COL data | $64,010 | $62,045 | — | — |
Ranked by real value — pay after Pennsylvaniaincome 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)
| # | Area | Median | After tax | Cost of living | Real value |
|---|---|---|---|---|---|
| 1 | Reading | $69,530 | $67,395 | 97.1 | $69,437 |
| 2 | Chambersburg | $67,190 | $65,127 | 94.6 | $68,814 |
| 3 | Philadelphia-Camden-Wilmington | $71,540 | $69,344 | 102.6 | $67,617 |
| 4 | Altoona | $61,670 | $59,777 | 89.5 | $66,784 |
| 5 | Johnstown | $58,080 | $56,297 | 85.9 | $65,516 |
| 6 | Allentown-Bethlehem-Easton | $65,510 | $63,499 | 100.0 | $63,519 |
| 7 | Williamsport | $60,480 | $58,623 | 92.3 | $63,479 |
| 8 | Erie | $59,120 | $57,305 | 91.0 | $63,007 |
| 9 | York-Hanover | $62,400 | $60,484 | 96.0 | $63,005 |
| 10 | Scranton--Wilkes-Barre | $60,520 | $58,662 | 93.6 | $62,703 |
| 11 | Lebanon | $60,180 | $58,332 | 93.2 | $62,579 |
| 12 | Harrisburg-Carlisle | $62,330 | $60,416 | 98.7 | $61,243 |
| 13 | Lancaster | $61,950 | $60,048 | 98.3 | $61,113 |
| 14 | State College | $58,780 | $56,975 | 96.8 | $58,882 |
| 15 | Pittsburgh | $56,020 | $54,300 | 94.7 | $57,357 |
| — | Southwestern Pennsylvaniano COL data | $62,900 | $60,969 | — | — |
| — | Northeastern Pennsylvaniano COL data | $62,430 | $60,513 | — | — |
| — | Central Pennsylvaniano COL data | $60,970 | $59,098 | — | — |
| — | Northwestern Pennsylvaniano COL data | $56,060 | $54,339 | — | — |
Ranked by real value — pay after Pennsylvaniaincome 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)
| # | Area | Median | After tax | Cost of living | Real value |
|---|---|---|---|---|---|
| 1 | Philadelphia-Camden-Wilmington | $76,440 | $74,093 | 102.6 | $72,248 |
| 2 | Reading | $72,110 | $69,896 | 97.1 | $72,013 |
| 3 | Lancaster | $72,170 | $69,954 | 98.3 | $71,195 |
| 4 | Williamsport | $64,650 | $62,665 | 92.3 | $67,856 |
| 5 | Scranton--Wilkes-Barre | $63,740 | $61,783 | 93.6 | $66,039 |
| 6 | Altoona | $60,310 | $58,458 | 89.5 | $65,312 |
| 7 | York-Hanover | $64,180 | $62,210 | 96.0 | $64,802 |
| 8 | Pittsburgh | $61,900 | $60,000 | 94.7 | $63,377 |
| 9 | Johnstown | $56,120 | $54,397 | 85.9 | $63,305 |
| 10 | Allentown-Bethlehem-Easton | $64,310 | $62,336 | 100.0 | $62,356 |
| 11 | Erie | $58,470 | $56,675 | 91.0 | $62,314 |
| 12 | Harrisburg-Carlisle | $61,230 | $59,350 | 98.7 | $60,162 |
| — | Northeastern Pennsylvaniano COL data | $61,930 | $60,029 | — | — |
| — | Central Pennsylvaniano COL data | $61,720 | $59,825 | — | — |
| — | Southwestern Pennsylvaniano COL data | $58,830 | $57,024 | — | — |
| — | Northwestern Pennsylvaniano COL data | $58,160 | $56,374 | — | — |
Ranked by real value — pay after Pennsylvaniaincome 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 Pennsylvania 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 Pennsylvaniarates, 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 Pennsylvania?
Compare local salaries by experience and practice setting.
Compare local salaries