49,013 properties
0 phones
0 emails
0 for sale
1,589 results · Page 18/32
All (49,013) Self-Storage (6,315) Mobile Home Parks (7,982) Car Washes (7,857) Laundromats (5,362) RV Parks (8,082) Marinas (3,500) Budget Motels (9,891) Mailbox / Pack & Ship (24)
Map:

Riverside RV Park

2

Vassar, MI

RV Parks
Phone

Lake Linden Campground

2

Lake Linden, MI

RV Parks 26 Sites 💰 Valuation on file
Phone

Sleepy Hollow-Modern North Campground

2

Laingsburg, MI

RV Parks
Phone

Rifle River Grousehaven-Modern Campground

2

Lupton, MI

RV Parks
Phone

Riverview RV Resort

2

Clay Township, MI · 9700 N River Rd, Clay Township, MI 48001, USA

RV Parks
Phone

Melvindale Mobile home community

2

Melvindale, MI · Melvindale, MI 48122, USA

RV Parks
Phone

Champaign Park

2

Allen Park, MI · 18401 Champaign Rd, Allen Park, MI 48101, USA

RV Parks
Phone

Highland Recreation Area

2

White Lake Charter Township, MI · 5200 Highland Rd, White Lake, MI 48383, USA

RV Parks 30 Sites 💰 Valuation on file
Phone

Holt's Mobile Home Court, Sales and RV Park

2

Flint, MI · 6576 Dort Hwy # 4, Flint, MI 48505, USA

RV Parks
Phone

River Raisin Marina & Campground

2

MI

Marinas
Phone

Munising Bayshore Marina

2

Munising, MI

Marinas
Phone Email

Nates Landing & Marina

2

Drummond Island, MI · 25937 East Nates Road

Marinas
Phone

Straits State Harbor

2

Mackinaw City, MI · 409 South Huron Avenue

Marinas
Phone

Caseville Municipal Harbor

2

Caseville, MI · Main Street

Marinas
Phone

Piper Cove Marina

2

Monroe, MI · 13468 Laplaisance Road

Marinas
Phone

Suttons Bay Marina

2

MI

Marinas
Phone Email

Harbor Club Marina

2

MI

Marinas
⚠️ Phone

Scudder Marina

2

MI · 361 North Shore Road

Marinas
Phone

Luna Pier Harbor Club

2

Luna Pier, MI · 10420 South Harold Drive

Marinas
Phone

Ontonagon Marina

2

Ontonagon, MI · 125 River Road

Marinas
Phone

Frankfort Municipal Marina

2

MI

Marinas
Phone Email

East Jordan City Marina

2

East Jordan, MI

Marinas
Phone

Marooners' Rock Marina

2

MI

Marinas
Phone Email

Parkwood Lodge

2

MI

Budget Motels
⚠️ Phone Email

Rainbow Motel

2

MI

Budget Motels
Phone

Lamplighter Motel

2

MI

Budget Motels
Phone

Big Bear Hotel

2

Hawk Junction, MI · 109 Highway 547

Budget Motels
Phone

Super 8

2

Brooklyn, MI

Budget Motels
Phone Email

Tri Terrace Motel

2

West Branch, MI · 2259 South M-76

Budget Motels
Phone

Welcome Motel

2

West Branch, MI · 3308 M-76

Budget Motels
Phone

Water's Edge Motel

2

Alpena, MI · 1000 South State Avenue

Budget Motels
Phone

Riverside Cottages

2

Indian River, MI · 6157 Prospect Street

Budget Motels
Phone

Timberly Motel

2

Gaylord, MI · 881 South Otsego Avenue

Budget Motels
Phone

Starlite Motel

2

Fraser, MI · 31420 Groesbeck Highway

Budget Motels
Phone

Old Mill Motel

2

MI

Budget Motels
Phone

Sunset Motel on the Bay

2

Munising, MI · 1315 Bay Street

Budget Motels
Phone

Belle Vista - Lakefront Motel

2

MI

Budget Motels
⚠️ Phone

Haiwatha Motel

2

Escanaba, MI · 2400 Ludington Street

Budget Motels
Phone

Knights Inn Farmington Hill

2

Farmington, MI · 37527 Grand River Avenue

Budget Motels
Phone

Travel Inn

2

MI · 4850 East State Street

Budget Motels
Phone

Sierra Motel

2

Traverse City, MI · 230 Munson Avenue

Budget Motels
Phone

Riviera Motel

2

MI

Budget Motels
Phone Email

Model Towne Inn

2

Gwinn, MI · 190 East M-35

Budget Motels
Phone

The Village Inn Motel

2

MI

Budget Motels
Phone

Aurora Borealis Motor Inn

2

Saint Ignace, MI · 635 US Highway 2

Budget Motels
Phone

Colonial Motel

2

Manistique, MI · 1119 East Lakeshore Drive

Budget Motels
Phone

Budget Host Inn Manistique

2

Manistique, MI · 6031 US 2

Budget Motels
Phone

Gray Wolf Lodge

2

Manistique, MI · W6770 US 2

Budget Motels
Phone

North Shore Lodge

2

Grand Marais, MI · 22020 Coast Guard Point

Budget Motels
Phone

Thompson Cabins

2

Seney, MI · M 28

Budget Motels
Phone
← Prev 18 / 32 Next →
// Heat map modes // mapPoints format: [id, lat, lon, category, valuation, data_score, motivated_score] let heatLayer = null; let circleLayer = null; let currentMode = 'markers'; function clearOverlays() { if (heatLayer) { map.removeLayer(heatLayer); heatLayer = null; } if (circleLayer) { map.removeLayer(circleLayer); circleLayer = null; } } function setMapMode(mode) { currentMode = mode; clearOverlays(); // Update button states document.querySelectorAll('.map-mode-btn').forEach(b => b.classList.remove('active')); document.getElementById('btn-' + mode).classList.add('active'); if (mode === 'markers') { markers.addTo(map); return; } map.removeLayer(markers); if (mode === 'density') { // Pure density heatmap const pts = mapPoints.filter(p => p[1] && p[2]).map(p => [p[1], p[2], 1]); heatLayer = L.heatLayer(pts, {radius: 20, blur: 15, maxZoom: 10, max: 5, gradient: {0.2: '#ffffb2', 0.4: '#fd8d3c', 0.6: '#f03b20', 0.8: '#bd0026', 1: '#800026'} }).addTo(map); } else if (mode === 'valuation') { // Circle markers colored by valuation circleLayer = L.layerGroup(); const maxVal = Math.max(...mapPoints.map(p => p[4]).filter(v => v > 0)) || 1; mapPoints.filter(p => p[1] && p[2] && p[4] > 0).forEach(p => { const ratio = Math.min(p[4] / maxVal, 1); const r = Math.round(ratio * 255); const g = Math.round((1 - ratio) * 200); const color = `rgb(${r}, ${g}, 50)`; const radius = 4 + ratio * 10; L.circleMarker([p[1], p[2]], { radius: radius, fillColor: color, color: '#fff', weight: 1, fillOpacity: 0.7 }).bindPopup(`$${(p[4]/1000).toFixed(0)}K`).addTo(circleLayer); }); circleLayer.addTo(map); } else if (mode === 'quality') { // Circle markers colored by data_score circleLayer = L.layerGroup(); mapPoints.filter(p => p[1] && p[2]).forEach(p => { const score = p[5] || 0; const ratio = score / 10; // Green = high, Red = low const r = Math.round((1 - ratio) * 255); const g = Math.round(ratio * 200); const color = `rgb(${r}, ${g}, 50)`; L.circleMarker([p[1], p[2]], { radius: 3 + ratio * 5, fillColor: color, color: '#fff', weight: 0.5, fillOpacity: 0.6 }).addTo(circleLayer); }); circleLayer.addTo(map); } else if (mode === 'motivated') { // Heat map weighted by motivated score const pts = mapPoints.filter(p => p[1] && p[2] && p[6] > 0).map(p => [p[1], p[2], p[6] / 100]); heatLayer = L.heatLayer(pts, {radius: 25, blur: 20, maxZoom: 10, max: 1, gradient: {0.2: '#fff7bc', 0.4: '#fec44f', 0.6: '#fe9929', 0.8: '#d95f0e', 1: '#993404'} }).addTo(map); } }
🔒
Unlock owner contacts for 55,000+ properties
Get Access