Rent Affordability for A Carpenter in Minnesota
A typical carpenter in Minnesota earns about $63,378 a year, which supports approximately $1,584 a month in rent under the 30% rule. Below, every tracked Minnesota city is ranked by how local rent compares against that affordability ceiling.
As of May 2026. 28 of 70 cities tracked stay within the 30% rule; 42 are rent-burdened on this salary.
| City↕ | Median rent↕ | % of income↑ | Affordability |
|---|---|---|---|
| Austin, MN | $947/mo | 17.9% | very comfortable |
| Albert Lea, MN | $960/mo | 18.2% | very comfortable |
| Waseca, MN | $990/mo | 18.7% | very comfortable |
| Winona, MN | $1,171/mo | 22.2% | affordable |
| Owatonna, MN | $1,183/mo | 22.4% | affordable |
| Mankato, MN | $1,232/mo | 23.3% | affordable |
| Saint Cloud, MN | $1,232/mo | 23.3% | affordable |
| Moorhead, MN | $1,258/mo | 23.8% | affordable |
| Waite Park, MN | $1,267/mo | 24% | affordable |
| Richfield, MN | $1,318/mo | 25% | affordable |
| Little Canada, MN | $1,400/mo | 26.5% | affordable |
| Brooklyn Center, MN | $1,408/mo | 26.7% | affordable |
| Fridley, MN | $1,410/mo | 26.7% | affordable |
| Bemidji, MN | $1,411/mo | 26.7% | affordable |
| North Saint Paul, MN | $1,410/mo | 26.7% | affordable |
| New Brighton, MN | $1,416/mo | 26.8% | affordable |
| West Saint Paul, MN | $1,428/mo | 27% | affordable |
| Anoka, MN | $1,439/mo | 27.2% | affordable |
| New Hope, MN | $1,442/mo | 27.3% | affordable |
| South Saint Paul, MN | $1,453/mo | 27.5% | affordable |
| Duluth, MN | $1,458/mo | 27.6% | affordable |
| Roseville, MN | $1,471/mo | 27.9% | affordable |
| Saint Paul, MN | $1,480/mo | 28% | affordable |
| Burnsville, MN | $1,486/mo | 28.1% | affordable |
| Buffalo, MN | $1,509/mo | 28.6% | affordable |
| Hopkins, MN | $1,539/mo | 29.1% | affordable |
| Maplewood, MN | $1,571/mo | 29.7% | affordable |
| Columbia Heights, MN | $1,566/mo | 29.7% | affordable |
| Monticello, MN | $1,623/mo | 30.7% | stretched |
| Forest Lake, MN | $1,625/mo | 30.8% | stretched |
| Eagan, MN | $1,632/mo | 30.9% | stretched |
| Northfield, MN | $1,640/mo | 31.1% | stretched |
| Brooklyn Park, MN | $1,649/mo | 31.2% | stretched |
| Crystal, MN | $1,679/mo | 31.8% | stretched |
| Minneapolis, MN | $1,686/mo | 31.9% | stretched |
| Bloomington, MN | $1,684/mo | 31.9% | stretched |
| White Bear Lake, MN | $1,683/mo | 31.9% | stretched |
| Rochester, MN | $1,702/mo | 32.2% | stretched |
| Coon Rapids, MN | $1,700/mo | 32.2% | stretched |
| Eden Prairie, MN | $1,772/mo | 33.6% | stretched |
| Saint Michael, MN | $1,778/mo | 33.7% | stretched |
| Shakopee, MN | $1,788/mo | 33.9% | stretched |
| Robbinsdale, MN | $1,789/mo | 33.9% | stretched |
| Spring Park, MN | $1,838/mo | 34.8% | stretched |
| Shoreview, MN | $1,848/mo | 35% | stretched |
| Wayzata, MN | $1,856/mo | 35.1% | stretched |
| Saint Louis Park, MN | $1,855/mo | 35.1% | stretched |
| Minnetonka, MN | $1,857/mo | 35.2% | stretched |
| Inver Grove Heights, MN | $1,861/mo | 35.2% | stretched |
| Chaska, MN | $1,883/mo | 35.7% | stretched |
| Saint Anthony, MN | $1,908/mo | 36.1% | stretched |
| Cottage Grove, MN | $1,916/mo | 36.3% | stretched |
| Plymouth, MN | $1,940/mo | 36.7% | stretched |
| Oakdale, MN | $1,937/mo | 36.7% | stretched |
| Apple Valley, MN | $1,955/mo | 37% | stretched |
| Ramsey, MN | $1,968/mo | 37.3% | stretched |
| Savage, MN | $1,979/mo | 37.5% | stretched |
| Rosemount, MN | $1,985/mo | 37.6% | stretched |
| Champlin, MN | $1,990/mo | 37.7% | stretched |
| Golden Valley, MN | $2,001/mo | 37.9% | stretched |
| Edina, MN | $2,009/mo | 38% | stretched |
| Rogers, MN | $2,020/mo | 38.2% | stretched |
| Lakeville, MN | $2,029/mo | 38.4% | stretched |
| Vadnais Heights, MN | $2,046/mo | 38.7% | stretched |
| Prior Lake, MN | $2,051/mo | 38.8% | stretched |
| Blaine, MN | $2,112/mo | 40% | stretched |
| Elk River, MN | $2,129/mo | 40.3% | rent-burdened |
| Woodbury, MN | $2,257/mo | 42.7% | rent-burdened |
| Maple Grove, MN | $2,261/mo | 42.8% | rent-burdened |
| Victoria, MN | $2,667/mo | 50.5% | severely rent-burdened |