We all know that tech jobs are the way of the future and STEM education is all the rage, but does that mean we should all be stampeding to Silicon Valley?

In a recent study, NerdWallet answered just this question. By looking at the size of the tech industry, the average tech income and the average rent in America's 370 largest metro areas, they figured out which cities are really the best when it comes to tech opportunity.

And the results? Well, we don't mean to toot our own horn, but Utah had two in the top 100: one at No. 27 and one at No. 66.

So, starting with Utah's best tech city, here are the top 27 tech metros in America.

#27 - Provo, Utah
iStock

Metro: Provo-Orem, UT

Job ratio: 46.62 tech employees for every 1,000 jobs

Average tech job salary: $73,191.53

Median gross rent: $890.00

The Salt Lake City, UT metro area came in at No. 66.

#26 - Detroit, Michigan
Carlos Osorio, Associated Press

Metro: Detroit-Livonia-Dearborn, MI

Job ratio: 34.83 tech employees for every 1,000 jobs

Average tech job salary: $86,166.06

Median gross rent: $829.00

#25 - Madison, Wisconsin
iStock

Metro: Madison, WI

Job ratio: 46.93 tech employees for every 1,000 jobs

Average tech job salary: $72,557.78

Median gross rent: $875.00

#24 - Hartford, Connecticut
Bob Child, Associated Press

Metro: Hartford-West Hartford-East Hartford, CT

Job ratio: 40.07 tech employees for every 1,000 jobs

Average tech job salary: $91,626.25

Median gross rent: $978.00

#23 - Palm Bay, Florida
iStock

Metro: Palm Bay-Melbourne-Titusville, FL

Job ratio: 39.84 tech employees for every 1,000 jobs

Average tech job salary: $84,043.53

Median gross rent: $876.00

#22 - Des Moines, Iowa
iStock

Metro: Des Moines-West Des Moines, IA

Job ratio: 39.37 tech employees for every 1,000 jobs

Average tech job salary: $80,131.23

Median gross rent: $795.00

#21 - Baltimore, Maryland
iStock

Metro: Baltimore-Towson, MD

Job ratio: 45.73 tech employees for every 1,000 jobs

Average tech job salary: $98,439.93

Median gross rent: $1,132.00

#20 - Atlanta, Georgia
Robb D. Cohen, Invision, Associated Press

Metro: Atlanta-Sandy Springs-Marietta, GA

Job ratio: 43.74 tech employees for every 1,000 jobs

Average tech job salary: $87,779.10

Median gross rent: $947.00

#19 - Rochester, Minnesota
iStock

Metro: Rochester, MN

Job ratio: 36.54 tech employees for every 1,000 jobs

Average tech job salary: $84,516.56

Median gross rent: $763.00

#18 - Minneapolis, Minnesota
Jim Mone, Associated Press

Metro: Minneapolis-St. Paul-Bloomington, MN-WI

Job ratio: 44.50 tech employees for every 1,000 jobs

Average tech job salary: $86,452.42

Median gross rent: $911.00

#17 - Columbus, Ohio
iStock

Metro: Columbus, OH

Job ratio: 41.79 tech employees for every 1,000 jobs

Average tech job salary: $83,171.01

Median gross rent: $804.00

#16 - Trenton, New Jersey
iStock

Metro: Trenton-Ewing, NJ

Job ratio: 52.02 tech employees for every 1,000 jobs

Average tech job salary: $93,014.44

Median gross rent: $1,096.00

#15 - Colorado Springs, Colorado
iStock

Metro: Colorado Springs, CO

Job ratio: 52.58 tech employees for every 1,000 jobs

Average tech job salary: $85,434.58

Median gross rent: $976.00

#14 - Charlotte, North Carolina
Chuck Burton, Associated Press

Metro: Charlotte-Gastonia-Rock Hill, NC-SC

Job ratio: 41.65 tech employees for every 1,000 jobs

Average tech job salary: $90,666.03

Median gross rent: $835.00

#13 - Denver, Colorado
Shutterstock

Metro: Denver-Aurora-Broomfield, CO

Job ratio: 48.55 tech employees for every 1,000 jobs

Average tech job salary: $94,022.83

Median gross rent: $998.00

#12 - Cedar Rapids, Iowa
iStock

Metro: Cedar Rapids, IA

Job ratio: 40.43 tech employees for every 1,000 jobs

Average tech job salary: $80,076.22

Median gross rent: $672.00

#11 - Dallas, Texas
Brandon Wade, Associated Press

Metro: Dallas-Plano-Irving, TX

Job ratio: 50.26 tech employees for every 1,000 jobs

Average tech job salary: $86,579.70

Median gross rent: $908.00

#10 - Boston, Massachusetts
Michael Dwyer, Associated Press

Metro: Boston-Cambridge-Quincy, MA

Job ratio: 57.06 tech employees for every 1,000 jobs

Average tech job salary: $102,939.98

Median gross rent: $1,207.00

#9 - Austin, Texas
Harry Cabluck, Associated Press

Metro: Austin-Round Rock-San Marcos, TX

Job ratio: 58.82 tech employees for every 1,000 jobs

Average tech job salary: $84,366.35

Median gross rent: $1,000.00

#8 - Raleigh, North Carolina
Gerry Broome, Associated Press

Metro: Raleigh-Cary, NC

Job ratio: 56.55 tech employees for every 1,000 jobs

Average tech job salary: $87,311.41

Median gross rent: $908.00

#7 - Washington, D.C.
iStock

Metro: Washington-Arlington-Alexandria, DC-VA-MD-WV

Job ratio: 79.10 tech employees for every 1,000 jobs

Average tech job salary: $104,148.45

Median gross rent: $1,481.00

#6 - San Francisco, California
Marcio Jose Sanchez, Associated Press

Metro: San Francisco-San Mateo-Redwood City, CA

Job ratio: 72.47 tech employees for every 1,000 jobs

Average tech job salary: $113,093.16

Median gross rent: $1,435.00

#5 - Boulder, Colorado
iStock

Metro: Boulder, CO

Job ratio: 70.79 tech employees for every 1,000 jobs

Average tech job salary: $97,756.91

Median gross rent: $1,168.00

#4 - Durham, North Carolina
Shutterstock

Metro: Durham-Chapel Hill, NC

Job ratio: 66.16 tech employees for every 1,000 jobs

Average tech job salary: $94,535.35

Median gross rent: $870.00

#3 - Seattle, Washington
Ted S. Warren, Associated Press

Metro: Seattle-Bellevue-Everett, WA

Job ratio: 77.61 tech employees for every 1,000 jobs

Average tech job salary: $108,472.21

Median gross rent: $1,135.00

#2 - Huntsville, Alabama
iStock

Metro: Huntsville, AL

Job ratio: 68.02 tech employees for every 1,000 jobs

Average tech job salary: $92,296.22

Median gross rent: $725.00

#1 - San Jose, California
Jeff Chiu, Associated Press

Metro: San Jose-Sunnyvale-Santa Clara, CA

Job ratio: 126.27 tech employees for every 1,000 jobs

Average tech job salary: $130,179.80

Median gross rent: $1,640.00