Cities ranked by the real financial weight of buying and renting here — from Columbia County's river towns to Washington County's tech corridor and the Clackamas County suburbs.
If you're choosing between Portland Metro cities, the decision usually comes down to one real question: how far from the urban core are you willing to live, and what does that distance actually buy you? The region stretches from Columbia County's river towns along US-30 to the tech campuses of Washington County and the historic mill towns of Clackamas County — and the cost gap between those worlds is wide enough to matter. What ties this region together is easy freeway and highway access to Portland, but the daily experience of living in Cornelius versus living in Oregon City is genuinely different.
Cities where the commute is longer and the services fewer tend to carry lower price tags, while cities with strong employment anchors, light-rail access, or established suburban infrastructure carry premiums that reflect what residents don't have to give up. Moving inward toward Washington County's employment corridor or toward established Clackamas County suburbs, prices climb in step with convenience. This post walks through each city's typical home price, what drives it, and which kind of buyer each place genuinely suits — so you can match your budget to the trade-offs you're actually willing to make.
When I talk with buyers comparing Portland Metro cities on cost, the conversation almost always reveals that the real question isn't which city is cheapest — it's which trade-offs a household can actually live with day to day.
I've worked with buyers who chose St. Helens or Scappoose for the price and genuinely thrived there, and others who discovered six months in that the distance from Washington County's employment corridor was harder than they expected. The cities that tend to produce the happiest buyers are the ones where the choice was made deliberately, with a clear picture of what the commute, the services, and the local character actually look like on a Tuesday in January.
If you're weighing several cities on this list and want a candid conversation about which one fits your specific situation, I'm happy to walk through it with you — that's exactly the kind of conversation I find most useful before anyone makes an offer.
All prices reflect 2026 market data sourced from Zillow and cross-referenced with our individual city guides. County tax rates are verified effective rates.
Ranked by overall affordability. Click any city to jump to the full breakdown.
| # | City | Home Price | Monthly PITI | Income to Buy | Est. Rent |
|---|---|---|---|---|---|
| 1 | St. Helens Columbia County | $429,356 | $2,631/mo | $113,561/yr | $1,730/mo |
| 2 | Gresham Multnomah County | $470,730 | $2,970/mo | $125,589/yr | $1,600/mo |
| 3 | Cornelius Washington County | $485,070 | $3,004/mo | $127,116/yr | $1,557/mo |
| 4 | Scappoose Columbia County | $490,109 | $2,995/mo | $128,790/yr | $1,568/mo |
| 5 | Fairview Multnomah County | $478,412 | $3,019/mo | $129,561/yr | $1,900/mo |
| 6 | Aloha Washington County | $493,280 | $3,055/mo | $130,921/yr | $1,650/mo |
| 7 | Forest Grove Washington County | $526,407 | $3,260/mo | $136,862/yr | $1,600/mo |
| 8 | Hillsboro Washington County | $518,047 | $3,208/mo | $137,726/yr | $1,800/mo |
| 9 | Milwaukie Clackamas County | $522,702 | $3,290/mo | $139,344/yr | $1,650/mo |
| 10 | Gladstone Clackamas County | $518,084 | $3,261/mo | $139,483/yr | $1,650/mo |
| 11 | Beaverton Washington County | $527,947 | $3,270/mo | $139,670/yr | $1,800/mo |
| 12 | Portland Multnomah County | $534,270 | $3,389/mo | $144,700/yr | $1,850/mo |
| 13 | Canby Clackamas County | $598,201 | $3,765/mo | $148,741/yr | $1,600/mo |
| 14 | Clackamas Clackamas County | $588,708 | $3,705/mo | $159,955/yr | $1,650/mo |
| 15 | Oregon City Clackamas County | $605,330 | $3,810/mo | $161,794/yr | $1,713/mo |
| 16 | Tigard Washington County | $607,011 | $3,759/mo | $162,216/yr | $1,652/mo |
| 17 | Wilsonville Clackamas County | $630,814 | $3,970/mo | $168,335/yr | $1,925/mo |
| 18 | Tualatin Washington County | $635,314 | $3,935/mo | $170,651/yr | $1,793/mo |
| 19 | Sherwood Washington County | $629,598 | $3,899/mo | $171,112/yr | $1,900/mo |
| 20 | Happy Valley Clackamas County | $686,520 | $4,418/mo | $185,413/yr | $1,950/mo |
| 21 | Bethany Washington County | $766,000 | $4,744/mo | $199,749/yr | $1,900/mo |
| 22 | West Linn Clackamas County | $779,602 | $4,919/mo | $206,469/yr | $2,200/mo |
| 23 | Lake Oswego Clackamas County | $889,944 | $5,616/mo | $235,479/yr | $2,150/mo |
#1 Most Affordable · Columbia County
Best for buyers who want river-town character at a price well below the metro's core.
St. Helens sits along the Columbia River on US-30, far enough from the metro's core that it operates on its own terms rather than as a bedroom suburb. A $429,356 typical home price reflects that separation, combined with a small-city scale and a genuinely historic downtown that is unlike anything closer in. The trade-off is real: Columbia County's job market is thin, and most residents commute south or work remotely.
St. Helens suits buyers who want to stretch their dollar as far as it goes within Oregon's largest metro, and who don't need everything in town. It's a different lifestyle proposition than Gresham or Aloha — more rural in feel, more dependent on the car, but also quieter and less crowded than the Washington County cities.
#2 Eastern Metro Hub · Multnomah County
Best for buyers who need light-rail access and metro connectivity without Portland prices.
Gresham is the fourth-largest incorporated city in Oregon and the eastern anchor of Multnomah County, positioned along I-84 with light-rail connection to Portland — which means its cost structure reflects genuine metro access rather than edge-of-region trade-offs. A $470,730 typical home price reflects a city with real urban infrastructure, diverse neighborhoods, and direct rail connection to Portland, at a price that is noticeably below the core.
Buyers who want metro-level connectivity without metro-level prices tend to find Gresham compelling. It is a denser, more diverse, and more transit-served city than most options at this price point in the region — a meaningful difference for households without two cars or with a commuter who relies on the train.
#3 Lowest Rent · Washington County
Best for Washington County workers who want to stay west without the full convenience premium.
Cornelius is a small Washington County city on OR-8 — the Tualatin Valley Highway — sitting at the western edge of the metro's developed corridor. A $485,070 typical home price reflects its position in Washington County, where the job market is stronger than Columbia County but housing supply has kept purchase costs well within reach compared to more built-out neighbors. The city is compact, largely residential, and less commercially developed than its neighbors.
Cornelius tends to suit buyers who work in Washington County's tech and manufacturing corridor and want to stay on the western side of the metro without paying for the full convenience premium of a denser city. Forest Grove is just down the highway for amenities, which matters because Cornelius itself is a quieter, smaller place.
#4 Rural Columbia County · Columbia County
Best for buyers who want a semi-rural Columbia County town with room to breathe.
Scappoose sits in Columbia County on US-30, a few miles north of St. Helens and a meaningful drive from downtown Portland. A $490,109 typical home price reflects a small town with a semi-rural character, a strong sense of community, and a commute that most residents make by car. It's a working town with light industrial presence, not a suburb designed around commuter convenience.
The buyer who fits Scappoose well is someone who genuinely wants more land, more quiet, and more distance from the metro — and who has flexibility in how and where they work. It's a different proposition than Gresham or Fairview, where the metro is closer and the infrastructure is denser; Scappoose asks for more commitment to the rural trade-off in exchange for its price.
#5 Freeway-Close Village · Multnomah County
Best for buyers who want a quiet Multnomah County neighborhood close to the freeway.
Fairview is a small Multnomah County city tucked between Gresham and Troutdale along I-84 and US-30, with direct freeway access that keeps Portland genuinely close. A $478,412 typical home price sits within a narrow range of Gresham's, but Fairview is a much smaller place — quieter, less commercially developed, and more neighborhood-focused than its larger neighbor.
Fairview tends to appeal to buyers who want Multnomah County's location advantages — reasonable commute distance, good freeway access — without the scale and density of Gresham. It is a genuinely quiet place to live at a price that reflects its modest footprint and limited local services.
#6 Unincorporated West Side · Washington County
Best for buyers who want Washington County access in an unincorporated community setting.
Aloha is an unincorporated Washington County community along OR-8 and OR-10 — large enough to function as a mid-size city in practice, but without its own city government. A $493,280 typical home price reflects its position in the heart of Washington County's residential belt, with strong highway access and proximity to Hillsboro and Beaverton employment. The housing stock is mostly post-war single-family homes on relatively flat, accessible terrain.
Aloha suits buyers who want to be close to Washington County's major employers without paying the full convenience premium of a more built-out city, and who don't need a walkable downtown or city services in the traditional sense. The lack of incorporation is something buyers should understand before committing: county services replace city services here, and that shapes everything from planning to parks.
#7 College Town Fringe · Washington County
Best for buyers who value a walkable college-town character at the metro's western edge.
Forest Grove is a mid-size Washington County city at the western end of OR-8 and OR-47, anchored by Pacific University and a compact historic downtown. A $526,407 typical home price reflects a city with more local identity and amenities than Cornelius or Aloha — a walkable core, an arts and dining scene built partly around the university, and a genuine sense of place that the more residential suburbs lack.
The trade-off is distance: Forest Grove sits at the furthest edge of the western Washington County corridor, which means a longer drive to most major employers than more centrally located cities in the county. Buyers who value town character over commute convenience, and who want a genuine small-city feel within the metro, tend to find it a strong fit.
#8 Tech Corridor City · Washington County
Best for tech-corridor workers who want to live close to where they earn.
Hillsboro is the fifth-largest incorporated city in Oregon and the economic engine of Washington County, home to a dense concentration of semiconductor and technology employers along US-26 and OR-8. A $518,047 typical home price reflects a city where job proximity is baked into demand — Intel's largest campus, a thriving downtown, and light-rail access keep the cost of entry meaningful while remaining in a similar range to Beaverton and Milwaukie.
For households where at least one person works in Washington County's tech corridor, Hillsboro can actually reduce total cost of living by eliminating a long daily commute. It's a genuinely urban environment with services, transit, and employment density that Cornelius and Forest Grove cannot match — which is why it draws buyers who would otherwise consider Beaverton.
#9 Riverfront Inner Suburb · Clackamas County
Best for buyers who want Southeast Portland's character with a light-rail connection.
Milwaukie is a small Clackamas County city on OR-99E and OR-224, immediately south of Portland and served by a MAX light-rail line — which puts downtown Portland closer than almost any other city on this list outside the city itself. A $522,702 typical home price reflects that proximity and transit access, as well as a riverfront and established neighborhood character that have made it a consistent target for buyers priced out of Southeast Portland.
Milwaukie genuinely punches above its size in terms of connectivity — the light-rail link is a real commuter asset, and the Willamette River frontage adds a quality of life dimension that most cities at this price point in the region can't offer. Buyers cross-shopping Milwaukie with Gladstone or Gresham should weigh transit access heavily; it's the differentiator here.
#10 River Confluence Town · Clackamas County
Best for buyers who want a quiet Clackamas County address with river access nearby.
Gladstone is a small Clackamas County city at the confluence of the Willamette and Clackamas rivers, positioned along OR-99E just south of Milwaukie and Oregon City. A $518,084 typical home price reflects its in-between location — further from the metro core than Milwaukie, without Oregon City's historical draw or services, but with a quieter residential character that some buyers specifically seek out.
Gladstone tends to suit buyers who want Clackamas County's lifestyle — more space, a slower pace, river access nearby — at a price that reflects fewer services and less local infrastructure than more developed Clackamas County cities. It's a modest, stable community rather than a destination, which is precisely what makes it appealing to the buyer who wants to live affordably without leaving the metro entirely.
#11 Connected Washington County · Washington County
Best for buyers who want urban density and light-rail access in Washington County.
Beaverton is the seventh-largest incorporated city in Oregon and a full-service city in its own right — with multiple light-rail stations, a dense retail and restaurant corridor, and enough internal employment to function almost independently of Portland for many residents. A $527,947 typical home price reflects all of that: convenience, connectivity, and Washington County's strong job market built into a city that rarely asks you to drive far for anything.
The buyer who fits Beaverton well usually has one of two profiles: working in Washington County's tech sector and wanting to walk or take light rail to work, or moving from a dense urban area and wanting that density preserved without Portland's current headaches. Compared to Hillsboro, Beaverton sits closer to Portland; compared to Portland, it sits closer to the major campuses. That middle position is the whole value proposition.
#12 Urban Core City · Multnomah County
Best for buyers who need the city itself — transit, density, and the widest housing range.
Portland is the largest incorporated city in Oregon, spanning Multnomah County with the most extensive transit network in the state and the widest range of neighborhoods — from industrial close-in areas to deep southeast bungalow districts. A $534,270 typical home price for the city as a whole reflects that diversity — entry points exist in many neighborhoods at prices that would surprise buyers arriving from other major West Coast cities, while established close-in neighborhoods carry premiums that reflect genuine walkability and character.
Portland suits buyers who need to be in the city for work, who want the widest selection of housing types, or who specifically value urban density, transit access, and the cultural infrastructure that only the region's largest city can provide. The 55+ community Summerplace is an option for older buyers looking for an established active-adult environment within Portland's boundaries.
#13 Willamette Valley Town · Clackamas County
Best for families willing to commute in exchange for a small-town agricultural setting.
Canby is a small Clackamas County city on OR-99E, set in the Willamette Valley farming corridor south of the metro's main developed band. A $598,201 typical home price reflects a city that has attracted families who want more land, a slower pace, and a genuine small-town community — but it also reflects the cost of that lifestyle choice, which is a longer commute than most Clackamas County cities and limited local employment.
Canby tends to suit buyers for whom the trade-off is explicit and acceptable: you know you are choosing distance and rural character over convenience, and you are pricing that accordingly. It draws buyers who cross-shop it with Oregon City or Tigard and decide that the quieter, more agricultural setting is worth the extra drive time.
#14 Freeway Node Community · Clackamas County
Best for buyers who want freeway access and larger lots without a city government.
Clackamas is an unincorporated Clackamas County community with freeway-level access via I-205 and OR-212, a major retail concentration around Clackamas Town Center, and a housing stock that skews toward newer single-family homes on larger lots. A $588,708 typical home price reflects the convenience premium built into its location — strong highway access, proximity to established employers, and the services of a functionally urban area without a city government's overhead.
Like Aloha in Washington County, Clackamas's unincorporated status shapes the buyer profile: you get county services rather than city services, which suits buyers who prioritize space and highway access over walkability or civic identity. It suits buyers who want Clackamas County's lifestyle but with more immediate freeway access than Canby or Oregon City provide.
#15 Historic Clackamas County · Clackamas County
Best for buyers who want historic character and a Willamette River setting.
Oregon City is a mid-size Clackamas County city with a genuine identity — the end of the Oregon Trail, a vertical downtown built into a basalt bluff, and a Willamette River setting that makes it unlike any other city in the metro. A $605,330 typical home price reflects that combination of historic character, I-205 access, and Clackamas County's established residential market. Buyers consistently pay more here than in Gladstone or Milwaukie for reasons that go beyond square footage.
Oregon City tends to draw buyers who want a distinct sense of place and are willing to pay for it — it is not the economical Clackamas County option, but it is the one with the most local identity. Compared to Tigard, it offers a quieter and more historically rooted character; compared to Canby, it sits meaningfully closer to the metro's employment core.
#16 I-5 Corridor Suburb · Washington County
Best for I-5 corridor commuters who want a city with real services already in place.
Tigard is the eleventh-largest incorporated city in Oregon, a Washington County city positioned along I-5 and OR-217 with strong access to both Portland and the Washington County employment corridor. A $607,011 typical home price reflects a city with genuine infrastructure — established retail, good schools, proximity to major employers, and a developing downtown core — rather than a purely residential suburb. Summerfield is an established 55+ community within Tigard for buyers at that life stage.
Tigard suits buyers who need I-5 corridor access and want a city with real amenities rather than a bedroom community. Compared to Beaverton, Tigard sits closer to the I-5 corridor and Tualatin; compared to Oregon City, it is more commercially developed and less historically distinctive. The buyer who lands here usually decided that convenience and access were worth the price.
In this region, you are almost always trading commute time for cost savings — cities where prices are lower tend to sit farther from Portland's core, while cities priced higher tend to offer shorter drives, better services, or both. Knowing which trade-off matters more to your household is the decision most buyers wish they had made more deliberately.
Tell us what you need help with and we'll connect you with local resources.