Estimated time: 35–50 minutes. Includes the activity and its built-in responses. Extra assignments may take longer.

Week 7 · Minnesota Map Lab

Minnesota in Maps

Maps take millions of separate lives and compress them into patterns. Population gathers. Migration leaves fingerprints. Age, education, income, and poverty settle unevenly across the same landscape. The interesting part begins when one map starts talking to another.

Minnesota's people are not spread evenly across the state, and neither are age, race, ethnicity, education, income, or growth. This is less a reading than a map laboratory: keep changing the map and ask what remains in the same place.

Every map and image on this page can be clicked to open a much larger version. Keyboard users can focus a map and press Enter.
Map-lab question: What makes the same handful of places keep appearing across completely different maps, and what makes certain places break the pattern?
Minnesota now

A quick statewide snapshot

Minnesota's 2025 state estimate is just under 5.9 million people. Growth since 2020 has been uneven: some outer Twin Cities counties have grown quickly while other counties have lost population. Statewide growth, in other words, is not the same thing as growth everywhere.

5,891,1092025 state population estimate
+3.2%growth since the 2020 census
32counties that lost population since 2020
Wrightfastest-growing county, +11.5%
Start with density

Where Minnesotans actually gather

A county boundary is useful for government, but people do not arrange themselves evenly inside counties. This fixed population-density map shows the broad pattern clearly: the Twin Cities dominate, regional centers form smaller knots, and the rural landscape between them is much less densely settled.

Minnesota population density by census tract
Population density by census tract. The metropolitan core is unmistakable, but Duluth, Rochester, St. Cloud, Mankato, Moorhead, and other centers appear as smaller concentrations. Source: Minnesota State Demographic Center, based on Census data.
Interactive · Population through time

Watch the center of gravity tighten

Use the buttons rather than comparing tiny thumbnails. Each map gets the whole stage, and any map can be enlarged again with one click.

Minnesota map
Reading these historical maps: The 1910, 1960, and 1990 panels are newly drawn maps of historical Census county totals, not reproductions of the old MnGeo GIFs. All three use the same color classes. The density button changes both the measure and the geographical unit, so its colors should not be read as a fourth year in the same series.
Modern change map

Where growth is moving now

A historical map shows where people were; a change map asks which places are gaining or losing population now. The pattern below keeps the Twin Cities important, but it also separates faster-growing outer metropolitan counties and selected regional centers from counties that have recently lost population.

Minnesota county map showing population change from 2020 to 2025
Population change, 2020–2025. This atlas map uses the U.S. Census Bureau Vintage 2025 Population Estimates. The statewide snapshot at the top of this reading uses the Minnesota State Demographic Center estimate series. Those are separate official estimate programs with different methods, so their totals and growth percentages need not match exactly. That difference is itself a useful map-reading lesson: always check the source, date, denominator, and method.
Compare: How is a map of change different from a map of density? Which places become more important when the question changes?

People do not distribute themselves randomly

Dot-density maps let us ask a different question from county percentages. Instead of coloring an entire county, they show the approximate locations of individual people. The metropolitan pattern becomes much sharper, but so do smaller cities, reservations, and other concentrations that disappear in a county average.

Interactive · Six population geographies

Hold Minnesota still. Change who the dots represent.

These fixed maps are based mainly on the 2020 Census and 2021 American Community Survey. They are not meant to rank groups; they reveal how different settlement histories produce different spatial patterns.

Minnesota map

Scale changes the story

One of the most useful habits in geography is to change scale. A county average can make a place look uniform even when its cities and townships are very different. The next four map pairs let you switch between census tracts and counties and watch information appear or disappear.

Map pair · Age

Where is Minnesota younger, and where is it aging?

Census tracts reveal younger urban and college-centered places that can disappear inside an older county average.

Minnesota map
Map pair · Education

Universities leave spatial fingerprints too

At tract scale, higher educational attainment appears around the Twin Cities and regional university centers. County aggregation smooths much of that difference away.

Minnesota map
Map pair · Income

The metro pattern returns, but not alone

The highest household incomes cluster strongly in the seven-county metropolitan region, while Rochester provides one conspicuous regional exception. At tract scale, the pattern becomes much more intricate.

Minnesota map
Map pair · Poverty

Poverty is neither purely urban nor purely rural

Tract-level maps reveal pockets that county averages can blur. College towns can also look unusually poor because student cash income does not tell the whole story.

Minnesota map

Zoom in: migration inside the Twin Cities

Statewide maps are only the beginning. Hennepin and Ramsey Counties contain many different settlement patterns inside a small metropolitan space. These maps are intentionally shown one at a time so the neighborhoods are actually readable.

Interactive · Metropolitan settlement

Three communities, three urban geographies

Minnesota map

Three patterns to keep looking for

Metropolitan gravityPopulation, jobs, higher education, medical systems, transportation, and new housing repeatedly reinforce the Twin Cities and its outer ring.
Regional-center gravityRochester, St. Cloud, Duluth, Mankato, Moorhead, Bemidji, Winona, and other centers interrupt any simple metro-versus-rural story.
Historical persistenceMigration, reservations, institutions, old housing, and past economic booms leave patterns that can survive long after the original conditions have changed.
Try this: Pick two maps that look surprisingly similar, then pick two that do not. The explanation usually begins in the difference.

Quick map check

1. Why can a tract map tell a different story from a county map?
2. Why do regional centers repeatedly appear on demographic maps?
3. What is the safest way to read a demographic map?
Sources and map notes

Historical population maps, rebuilt September 22, 2026: U.S. Census Bureau, Bulletin 359, Population: Minnesota. Composition and Characteristics of the Population, Table I (1910), and 1990 Census of Population and Housing: Population and Housing Unit Counts, Minnesota, CPH-2-25, Table 3, printed pages 3–4 (1960 and 1990). All county counts sum to the published state totals: 2,075,708; 3,413,864; and 4,375,099. Census counts are historical evidence, not current estimates.

How the historical maps were drawn: Counts are joined to the U.S. county reference polygons distributed with Basemap, projected in NAD83 / UTM zone 15N and generalized for statewide display. The 1910 map combines the Lake of the Woods area with Beltrami County, as the later county did not yet exist. Other small historical boundary differences are not reconstructed. Henn. and Ram. abbreviate Hennepin and Ramsey; Wash. abbreviates Washington. The seven identical color classes map county totals, not people per square mile. These are new teaching maps, not replicas of the unavailable MnGeo originals.

State demographic maps: Minnesota State Demographic Center, Characteristic Distributions of the Population in Minnesota, using 2020 Census and 2021 ACS data for the fixed population, race/ethnicity, age, education, income, and poverty maps. The original Blogger-hosted images and their legends are retained.

Modern population-change map: U.S. Census Bureau, Vintage 2025 Population Estimates and 2020 TIGER/Line county boundaries. This is a separate official estimate series from the Minnesota State Demographic Center snapshot used near the top of the reading; small differences between estimate programs are expected.

Twin Cities settlement maps: Peter M. Grund, 2025, using the 2020 Census Detailed Demographic and Housing Characteristics File A. Hmong, Somali, and Mexican population maps are licensed CC BY-SA 4.0. Map artwork is unchanged; direct image addresses replace the redirect addresses. They show the numbers identifying with each group per tract, not migration flows or shares of the tract population.

Current statewide snapshot: Minnesota State Demographic Center 2025 estimates, released in 2026. These are separate from the historical maps and the 2020/2021 demographic panels.

Historical county counts used in the three maps

Use this table to check a county without relying on its color. A dash means the county was not separately reported for that year. The Lake of the Woods area is included in the 1910 Beltrami count, so Beltrami's three values do not all represent the same boundary.

County191019601990
Aitkin10,37112,16212,425
Anoka12,49385,916243,641
Becker18,84023,95927,881
Beltrami19,33723,42534,384
Benton11,61517,28730,185
Big Stone9,3678,9546,285
Blue Earth29,33744,38554,044
Brown20,13427,67626,984
Carlton17,55927,93229,259
Carver17,45521,35847,915
Cass11,62016,72021,791
Chippewa13,45816,32013,228
Chisago13,53713,41930,521
Clay19,64039,08050,422
Clearwater6,8708,8648,309
Cook1,3363,3773,868
Cottonwood12,65116,16612,694
Crow Wing16,86132,13444,249
Dakota25,17178,303275,227
Dodge12,09413,25915,731
Douglas17,66921,31328,674
Faribault19,94923,68516,937
Fillmore25,68023,76820,777
Freeborn22,28237,89133,060
Goodhue31,63733,03540,690
Grant9,1148,8706,246
Hennepin333,480842,8541,032,431
Houston14,29716,58818,497
Hubbard9,8319,96214,939
Isanti12,61513,53025,921
Itasca17,20838,00640,863
Jackson14,49115,50111,677
Kanabec6,4619,00712,802
Kandiyohi18,96929,98738,761
Kittson9,6698,3435,767
Koochiching6,43118,19016,299
Lac qui Parle15,43513,3308,924
Lake8,01113,70210,415
Lake of the Woods—4,3044,076
Le Sueur18,60919,90623,239
Lincoln9,8749,6516,890
Lyon15,72222,65524,789
McLeod18,69124,40132,030
Mahnomen3,2496,3415,044
Marshall16,33814,26210,993
Martin17,51826,98622,914
Meeker17,02218,88720,846
Mille Lacs10,70514,56018,670
Morrison24,05326,64129,604
Mower22,64048,49837,385
Murray11,75514,7439,660
Nicollet14,12523,19628,076
Nobles15,21023,36520,098
Norman13,44611,2537,975
Olmsted22,49765,532106,470
Otter Tail46,03648,96050,714
Pennington9,37612,46813,306
Pine15,87817,00421,264
Pipestone9,55313,60510,491
Polk36,00136,18232,498
Pope12,74611,91410,745
Ramsey223,675422,525485,765
Red Lake6,5645,8304,525
Redwood18,42521,71817,254
Renville23,12323,24917,673
Rice25,91138,98849,183
Rock10,22211,8649,806
Roseau11,33812,15415,026
St. Louis163,274231,588198,213
Scott14,88821,90957,846
Sherburne8,13612,86141,945
Sibley15,54016,22814,366
Stearns47,73380,345118,791
Steele16,14625,02930,729
Stevens8,29311,26210,634
Swift12,94914,93610,724
Todd23,40723,11923,363
Traverse8,0497,5034,463
Wabasha18,55417,00719,744
Wadena8,65212,19913,154
Waseca13,46616,04118,079
Washington26,01352,432145,896
Watonwan11,38214,46011,682
Wilkin9,06310,6507,516
Winona33,39840,93747,828
Wright28,08229,93568,710
Yellow Medicine15,40615,52311,684
Map viewing: The three historical maps are embedded in this page. The other images use their original image hosts. Click a map, or focus it and press Enter, to enlarge it; press Escape to close. An image-host error produces a retry message rather than an unexplained blank panel.
Enlarged map