The Top 10 U.S. Cities for Tech Jobs

July 29, 2019, 4:18 PM UTC

The two coasts have long been magnets for tech talent, and that’s fine if you really like living there. Just one problem, and it’s a big one: Places like New York, Boston, and Silicon Valley have become so exorbitantly expensive that even a way-fatter-than-average paycheck is probably not enough to buy a sweeter-than-average quality of life, especially when it comes to housing.

So what’s a tech job hunter to do? How about moving to a smallish city in the heartland, like Columbus, Dallas, or Raleigh? Those towns take the top 3 spots on SmartAsset’s sixth annual list of locations where tech talent is in such short supply that salaries are soaring—yet the cost of living is not.

To arrive at this ranking, personal-finance site SmartAsset combed through data on 172 cities from the Census Bureau, the Bureau of Labor Statistics, and other sources. The researchers then compared the stats according to five criteria: Percentage of the local population employed in IT, average tech salaries, ratios of tech salaries to average salaries across all occupations in the same city, the unemployment rate for people with a bachelor’s degree or higher, and the cost of living, including what it will set you back to keep a roof over your head.

Given those metrics, it’s not hard to see why Columbus has won first place for three years running. Consider: The average tech employee in the capital of Ohio earns $92,440 — 80% more than the average pay across all other industries nearby. Yet the cost of living there is slightly below the national average. Second-ranked Dallas, which the report notes has “a fairly big tech scene” (hence even more job opportunities), isn’t bad, either. The overall cost of living is below the national average, too, and IT employees earn, on average, a little more than in Columbus: $93,820.

Here’s SmartAsset’s list of the Top Ten, with average IT salaries:

1. Columbus, OH — $92,440
2. Dallas, TX — $93,820
3. Raleigh, NC — $91,680
4. Cedar Rapids, IA — $83,260
5. Davenport, IA — $83,090
6. Des Moines, IA — $83,820
7. San Antonio, TX — $84,790
8. Huntsville, AL (tie) — $97,340
8. St. Louis, MO (tie) — $84,140
10. Temple, TX — $78,770

The list is evenly divided between two regions where many IT job seekers never think to look: The Midwest and the South (including three towns in Texas). Moreover, the numbers offer stark proof that, when you’re trying to decide where to hang your hat, it’s smart to take into account a lot more than just pay.

Temple, for instance, offers the lowest average compensation among the ten best cities, but that is still 79% higher than local residents make in other industries, and the relatively tiny cost of living there reflects that. “Essentially, you may not be making as much money in Temple,” the report says, “but you’ll be among the best-compensated workers in town, and your money will go far.”

Take that, California.

More must-read stories from Fortune:

—How this former Army sergeant found an entry-level job at IBM

—How an entry-level UX designer at Amazon got her foot in the door

—What it’s like to work an entry-level job at Madewell Corporate

—A look inside GM’s two-year, entry-level rotational program

—Listen to our new audio briefing, Fortune 500 Daily

Follow Fortune on Flipboard to stay up-to-date on the latest news and analysis.