In [13]: # by_state.ipynb
Every wage figure on this page is read straight from the state files of the Bureau of Labor Statistics Occupational Employment and Wage Statistics release for May 2025, for SOC 15-2051 Data Scientists and SOC 15-1252 Software Developers. Where BLS publishes nothing, this page says so rather than filling the gap.
Occupation mapping
"Machine learning engineer" is not a Standard Occupational Classification title, so the BLS Occupational Employment and Wage Statistics survey publishes no wage series under that name. The figures on this page come from SOC 15-2051 Data Scientists, the closest published occupation. Read them as a floor and a shape for the market, not as a Machine learning engineer salary survey.
O*NET OnLine's occupation keyword search returns 15-2051.00 Data Scientists as the first match for the job title "machine learning engineer" (onetonline.org/find/quick?s=machine%20learning%20engineer, checked 6 September 2026).
Software Developers is the other SOC that absorbs machine learning engineering work. It is shown alongside Data Scientists so the bracket is visible rather than hidden behind a single choice. Both brackets are shown side by side below: 15-2051 Data Scientists at a national median of $120,230 and 15-1252 Software Developers at $135,980.
Data Scientists
SOC 15-2051 · primary bracket
BLS Occupational Employment and Wage Statistics, May 2025, SOC 15-2051. Snapshot taken 6 September 2026.
Software Developers
SOC 15-1252 · secondary bracket
BLS Occupational Employment and Wage Statistics, May 2025, SOC 15-1252. Snapshot taken 6 September 2026.
Highest median wage
Lowest median wage
Table 4.4b. Ranked over the 49 of 51 states and territories where BLS publishes a median for SOC 15-2051. States without a published median are excluded from the ranking rather than placed at the bottom. BLS Occupational Employment and Wage Statistics, May 2025, SOC 15-2051. Snapshot taken 6 September 2026.
| State | 15-2051 median | 15-1252 median |
|---|---|---|
| Alabama | $103,120 | $122,540 |
| Alaska | $84,110 | not published |
| Arizona | $107,240 | $129,690 |
| Arkansas | $109,390 | $104,490 |
| California | $141,590 | $174,410 |
| Colorado | $117,400 | $138,390 |
| Connecticut | $126,340 | $134,120 |
| Delaware | not published | $133,020 |
| District of Columbia | $126,490 | $136,880 |
| Florida | $115,820 | $130,980 |
| Georgia | $104,340 | $131,010 |
| Hawaii | $102,130 | $124,040 |
| Idaho | $89,380 | $131,590 |
| Illinois | $106,560 | $132,110 |
| Indiana | $91,470 | $105,920 |
| Iowa | $95,830 | $114,890 |
| Kansas | $98,130 | $113,420 |
| Kentucky | $91,760 | $109,010 |
| Louisiana | $78,760 | $102,800 |
| Maine | $90,880 | $123,120 |
| Maryland | $136,370 | $138,680 |
| Massachusetts | $131,750 | $165,210 |
| Michigan | $100,590 | $125,570 |
| Minnesota | $128,800 | $130,050 |
| Mississippi | $69,490 | $95,330 |
| Missouri | $97,090 | $126,120 |
| Montana | $100,490 | $121,990 |
| Nebraska | $98,230 | $110,900 |
| Nevada | $98,540 | $128,810 |
| New Hampshire | $100,620 | $139,720 |
| New Jersey | $135,280 | $135,940 |
| New Mexico | $95,850 | $124,520 |
| New York | $130,460 | $166,180 |
| North Carolina | $119,090 | $134,710 |
| North Dakota | $81,900 | $105,600 |
| Ohio | $102,630 | $114,090 |
| Oklahoma | $86,310 | $118,100 |
| Oregon | $125,990 | $142,720 |
| Pennsylvania | $106,850 | $126,550 |
| Rhode Island | $102,440 | $130,590 |
| South Carolina | $91,990 | $129,450 |
| South Dakota | $96,150 | $96,310 |
| Tennessee | $100,330 | $122,430 |
| Texas | $122,090 | $132,150 |
| Utah | $108,090 | $128,810 |
| Vermont | $127,070 | $125,280 |
| Virginia | $126,430 | $136,460 |
| Washington | $163,350 | $166,540 |
| West Virginia | $85,090 | $121,000 |
| Wisconsin | $106,680 | $122,660 |
| Wyoming | not published | $115,170 |
Table 4.4c. Annual wages for all 51 state-level areas (50 states plus the District of Columbia), alphabetical. BLS Occupational Employment and Wage Statistics, May 2025, SOC 15-2051. Snapshot taken 6 September 2026. BLS Occupational Employment and Wage Statistics, May 2025, SOC 15-1252. Snapshot taken 6 September 2026. Public domain; attribute to the Bureau of Labor Statistics.
Where this table abstains
These cells read "not published" above. No value is interpolated, carried over from an earlier vintage, or replaced with the national figure.
The wage column here is the same derived 15-2051 median as the table above. The cost-of-living index and the market notes are editorial, are not part of the BLS release, and exist only for the 10 states this site has carried an index for. The adjusted column divides the BLS median by that index.
| State | BLS median | Adjusted |
|---|---|---|
| Washington | $163,350 | $142,043 |
| Texas | $122,090 | $131,280 |
| Virginia | $126,430 | $122,748 |
| Oregon | $125,990 | $112,491 |
| Georgia | $104,340 | $112,194 |
| Colorado | $117,400 | $111,810 |
| Illinois | $106,560 | $108,735 |
| Massachusetts | $131,750 | $100,573 |
| California | $141,590 | $99,711 |
| New York | $130,460 | $95,926 |
Table 4.4d. BLS median column: BLS Occupational Employment and Wage Statistics, May 2025, SOC 15-2051. Snapshot taken 6 September 2026. Cost-of-living index and market notes: editorial, non-BLS, no citable primary source, retained from the earlier version of this page. Treat the adjusted column as an illustrative comparison, not a published statistic.
Out[13]:
Remote shift
Around 35 to 40 percent of ML engineer postings in 2026 are remote-eligible, although back-to-office has tightened this through 2025-26. Many employers apply location-adjusted pay: 80 to 90 percent of Bay Area rate for remote workers in lower-cost states. That posting-level observation is not a BLS figure. What the BLS data does show is the size of the gap the adjustment is arguing about: a 15-2051 median of $141,590 in California against $120,230 nationally.
In [ ]: # reader_questions.ipynb
Write in. A person opens every message, and the ones we can answer come back with the survey release or the public disclosure the number is drawn from, stated plainly enough that you can go and check it. We put no clock on a reply. Should an answer be worth reading twice we might set it out here stripped of anything identifying, and we will write and ask you before that happens.
Out[ ]:
Treat everything on this site as compensation reference assembled from published surveys and public filings, not as financial advice and not as a benchmark any single negotiation should be anchored to. Your own offer turns on the employer, the level it is pitched at, the equity instrument behind it and the market on the day it is made.