49,013 properties
0 phones
0 emails
0 for sale
35 results · Page 1/1
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:

Simply Clean Laundry Service

1B

St. Louis, MO · 10420 Liberty Avenue

Laundromats
Phone Email

Sparta Laundry & Storage

2

Sparta, MO · 292 State Highway

Laundromats
Phone

KT Laundry

2

O'Fallon, MO · 127 O'Fallon Plaza

Laundromats
Phone Email

Highlander Center Coin Laundry

2

O'Fallon, MO · 328 Sonderen Street

Laundromats
Phone Email

Premier Dry Cleaners

2

MO · 1519 North Glenstone Avenue

Laundromats
Phone

Wash U

2

Saint Louis, MO · 2615 Hampton Avenue

Laundromats
Phone

Sit & Spin

2

MO

Laundromats
Phone Email

The Loop Laundry

2

MO · 877 Kingsland Avenue

Laundromats
Phone

The Wash House Laundry

2

Columbia, MO · 1804 Paris Road

Laundromats
Phone

E-Z Do Laundry

2

Chillicothe, MO · 1122 Walnut Street

Laundromats
Phone

Bundle it right

2

Springfield, MO · 1821 East Grand Street

Laundromats
Phone

Chambers Laundrymat

2

Moline Acres, MO · 2471 Chambers Road

Laundromats
Phone

The Wash Board

2

MO

Laundromats
Phone

Vivion West Laundry

3

Riverside, MO · 2310 Northwest Vivion Road

Laundromats
Phone

DeMun Professional Cleaners

3

Clayton, MO · 726 De Mun Avenue

Laundromats
Phone

Cleansing Waters Laundry

3

MO · 165 New Creation Rd

Laundromats

Gateway Laundry

3

Riverside, MO · 4605 Northwest Gateway Avenue

Laundromats
Phone Email

Dew Drop Laundromat

3

Florissant, MO · 4 Mullanphy Gardens Shopping Center

Laundromats
Phone

Best Wash Laundromat

3

Saint Louis, MO · 7241 Gravois Avenue

Laundromats
Phone

Washateria

3

Saint Louis, MO · 2901-2907 Shenandoah Avenue

Laundromats
Phone Email

Lee's Family Laundry

3

Saint Louis, MO · 3316 Union Boulevard

Laundromats

Midland Speedwash

3

Maryland Heights, MO · 20 Midland Avenue

Laundromats
Phone

Home Style Laundry

3

Gladstone, MO · 200 Northeast 72nd Street

Laundromats
Phone

Arena Village Laundry

3

Fayetteville, MO · 1229 West Martin Luther King Junior Boulevard

Laundromats
Phone

Carthage Laundry

3

MO

Laundromats

St. Andrews Coin Laundry

3

MO · 3111 West Clay Street

Laundromats

Koin Kleen

3

Kansas City, MO · 601 NW Englewood Road

Laundromats
Phone

Kansas Square Laundry

3

Springfield, MO · 1711 West Battlefield Rd

Laundromats
Phone

Custom Dry Cleaners

3

Kansas City, MO · 2300 East 12th Street

Laundromats
Phone Email

Main Street Laundry

3

Kansas City, MO · 3324 Main Street

Laundromats
Phone Email

Carol's Coin Laundry

3

Kansas City, MO · 1422 East 55th Street

Laundromats
Phone

Holiday Coin Laundry

3

Kansas City, MO · 3407 Independence Avenue

Laundromats
Phone

Penn Laundry

3

Rolla, MO · 103 East 14th Street

Laundromats
Phone

Express Laundry

3

MO · 11170 South 265th East Avenue

Laundromats
Phone

Spin City

3

MO · 300 South Davis Street

Laundromats
Phone
// 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