Redfin Chicago sale listings data
100 listings from one Listingrail API search, 2026-10-19. Mostly empty: agent (18%), listed_at (0%).
Field coverage
What the rows contain
Sample rows
Quartile-priced rows; raw and empty fields left out.
[
{
"id": "224451861",
"url": "https://www.redfin.com/IL/Chicago/2609-W-Gunnison-St-60625/unit-3/home/12639608",
"source": "redfin",
"title": "2609 W Gunnison St #3, Chicago, IL 60625",
"address": "2609 W Gunnison St #3, Chicago, IL 60625",
"city": "Chicago",
"region": "IL",
"postal_code": "60625",
"country": "US",
"lat": 41.969545,
"lng": -87.694328,
"price": 325000,
"currency": "USD",
"beds": 2,
"baths": 1,
"area_unit": "sqft",
"property_type": "condo",
"photos": [
"https://ssl.cdn-redfin.com/photo/68/bigphoto/663/12786663_0.jpg"
],
"agent": {
"name": "William Vezo"
}
},
{
"id": "224358727",
"url": "https://www.redfin.com/IL/Chicago/1901-S-Calumet-Ave-60616/unit-2706/home/12965155",
"source": "redfin",
"title": "1901 S Calumet Ave #2706, Chicago, IL 60616",
"address": "1901 S Calumet Ave #2706, Chicago, IL 60616",
"city": "Chicago",
"region": "IL",
"postal_code": "60616",
"country": "US",
"lat": 41.85628,
"lng": -87.618665,
"price": 500000,
"currency": "USD",
"beds": 2,
"baths": 2,
"area": 1245,
"area_unit": "sqft",
"property_type": "condo",
"photos": [
"https://ssl.cdn-redfin.com/photo/641/bigphoto/768/mredcs12727768_0.jpg"
]
},
{
"id": "223742349",
"url": "https://www.redfin.com/IL/Chicago/2028-W-Division-St-60622/unit-301/home/52637060",
"source": "redfin",
"title": "2028 W Division St #301, Chicago, IL 60622",
"address": "2028 W Division St #301, Chicago, IL 60622",
"city": "Chicago",
"region": "IL",
"postal_code": "60622",
"country": "US",
"lat": 41.9033705,
"lng": -87.6784401,
"price": 895000,
"currency": "USD",
"beds": 3,
"baths": 2,
"area_unit": "sqft",
"property_type": "condo",
"photos": [
"https://ssl.cdn-redfin.com/photo/641/bigphoto/641/2200232631646020641_0.jpg"
]
}
]Request
import os
import requests
r = requests.post(
"https://listingrail.com/v1/listings/search",
headers={"Authorization": f"Bearer {os.environ['LISTINGRAIL_KEY']}"},
json={"source":"redfin", "location":"Chicago, IL", "limit":100},
timeout=300,
)
r.raise_for_status()
listings = r.json()["listings"]
print(len(listings), listings[0]["price"], listings[0]["address"])Price context
Upper quartile 175% above the lower ($325,000).
5+ bed: 2.1× the studio median.
Cheapest per sq ft: 5+ bed ($222.0); dearest: 3 bed ($405.0).