What solar installers charge per hour
The median wage BLS publishes for solar photovoltaic installers in each metro, times 2 to 2.5 for what a licensed business bills on top of pay. An estimate, not a quote.
- Lowest metro
- $45–$56/hr
- Highest metro
- $75–$94/hr
- Cities with a wage
- 37 of 58
Pricing a whole job? Estimate install a 6 kw rooftop system, materials included.
Arizona
| City | Per hour | Median wage | Listings |
|---|---|---|---|
| PhoenixPhoenix-Mesa-Chandler metro | $49–$62 | $24.61 | None listed |
| ScottsdalePhoenix-Mesa-Chandler metro | $49–$62 | $24.61 | None listed |
| MesaPhoenix-Mesa-Chandler metro | $49–$62 | $24.61 | None listed |
California
| City | Per hour | Median wage | Listings |
|---|---|---|---|
| Los AngelesLos Angeles-Long Beach-Anaheim metro | $57–$72 | $28.65 | 77 licensed |
| San DiegoSan Diego-Chula Vista-Carlsbad metro | $59–$74 | $29.49 | 31 licensed |
Florida
| City | Per hour | Median wage | Listings |
|---|---|---|---|
| Jacksonville | No BLS wage | – | 9 licensed |
| MiamiMiami-Fort Lauderdale-West Palm Beach metro | $46–$58 | $23.22 | 3 licensed |
| TampaTampa-St. Petersburg-Clearwater metro | $49–$62 | $24.60 | 9 licensed |
| OrlandoOrlando-Kissimmee-Sanford metro | $45–$56 | $22.43 | 11 licensed |
| St. PetersburgTampa-St. Petersburg-Clearwater metro | $49–$62 | $24.60 | 3 licensed |
| Fort LauderdaleMiami-Fort Lauderdale-West Palm Beach metro | $46–$58 | $23.22 | 7 licensed |
| Port St. Lucie | No BLS wage | – | 3 licensed |
| HialeahMiami-Fort Lauderdale-West Palm Beach metro | $46–$58 | $23.22 | None listed |
| Cape Coral | No BLS wage | – | 2 licensed |
| Tallahassee | No BLS wage | – | 4 licensed |
Hawaii
| City | Per hour | Median wage | Listings |
|---|---|---|---|
| HonoluluUrban Honolulu metro | $67–$84 | $33.63 | 15 licensed |
| Pearl CityUrban Honolulu metro | $67–$84 | $33.63 | 1 licensed |
| HiloHawaii / Kauai nonmetropolitan area metro | $75–$94 | $37.70 | None listed |
| KailuaUrban Honolulu metro | $67–$84 | $33.63 | 3 licensed |
| KapoleiUrban Honolulu metro | $67–$84 | $33.63 | None listed |
Minnesota
| City | Per hour | Median wage | Listings |
|---|---|---|---|
| Minneapolis | No BLS wage | – | None listed |
| St. Paul | No BLS wage | – | None listed |
| Rochester | No BLS wage | – | None listed |
| Bloomington | No BLS wage | – | None listed |
| Duluth | No BLS wage | – | None listed |
Nevada
| City | Per hour | Median wage | Listings |
|---|---|---|---|
| Las VegasLas Vegas-Henderson-North Las Vegas metro | $65–$82 | $32.60 | 9 licensed |
| HendersonLas Vegas-Henderson-North Las Vegas metro | $65–$82 | $32.60 | 2 licensed |
| North Las VegasLas Vegas-Henderson-North Las Vegas metro | $65–$82 | $32.60 | None listed |
| Reno | No BLS wage | – | 3 licensed |
Texas
| City | Per hour | Median wage | Listings |
|---|---|---|---|
| HoustonHouston-Pasadena-The Woodlands metro | $45–$57 | $22.63 | None listed |
| San Antonio | No BLS wage | – | None listed |
| DallasDallas-Fort Worth-Arlington metro | $47–$58 | $23.25 | None listed |
| AustinAustin-Round Rock-San Marcos metro | $49–$61 | $24.32 | None listed |
| Fort WorthDallas-Fort Worth-Arlington metro | $47–$58 | $23.25 | None listed |
| El Paso | No BLS wage | – | None listed |
| ArlingtonDallas-Fort Worth-Arlington metro | $47–$58 | $23.25 | None listed |
| Corpus Christi | No BLS wage | – | None listed |
| PlanoDallas-Fort Worth-Arlington metro | $47–$58 | $23.25 | None listed |
| Lubbock | No BLS wage | – | None listed |
| Laredo | No BLS wage | – | None listed |
| IrvingDallas-Fort Worth-Arlington metro | $47–$58 | $23.25 | None listed |
| GarlandDallas-Fort Worth-Arlington metro | $47–$58 | $23.25 | None listed |
| FriscoDallas-Fort Worth-Arlington metro | $47–$58 | $23.25 | None listed |
| McKinneyDallas-Fort Worth-Arlington metro | $47–$58 | $23.25 | None listed |
| Amarillo | No BLS wage | – | None listed |
| Grand PrairieDallas-Fort Worth-Arlington metro | $47–$58 | $23.25 | None listed |
| Brownsville | No BLS wage | – | None listed |
Virginia
| City | Per hour | Median wage | Listings |
|---|---|---|---|
| Virginia BeachVirginia Beach-Chesapeake-Norfolk metro | $46–$58 | $23.04 | 18 licensed |
| ChesapeakeVirginia Beach-Chesapeake-Norfolk metro | $46–$58 | $23.04 | 5 licensed |
| NorfolkVirginia Beach-Chesapeake-Norfolk metro | $46–$58 | $23.04 | 9 licensed |
| Richmond | No BLS wage | – | 5 licensed |
| Arlington County | No BLS wage | – | 2 licensed |
| Alexandria | No BLS wage | – | 1 licensed |
Washington
| City | Per hour | Median wage | Listings |
|---|---|---|---|
| SeattleSeattle-Tacoma-Bellevue metro | $59–$74 | $29.63 | None listed |
| Spokane | No BLS wage | – | None listed |
| TacomaSeattle-Tacoma-Bellevue metro | $59–$74 | $29.63 | None listed |
| VancouverPortland-Vancouver-Hillsboro metro | $64–$80 | $31.88 | None listed |
| BellevueSeattle-Tacoma-Bellevue metro | $59–$74 | $29.63 | None listed |
Source: US Bureau of Labor Statistics, Occupational Employment and Wage Statistics (OEWS), May 2025, median hourly wage by metro area. The 2–2.5× billing multiple is our assumption; real quotes vary with the job, materials and season.
Sources
- Solar installers: Solar photovoltaic installers (SOC 47-2231)
- BLS OEWS wage tables