Arcadium Data Scrapers
Home / Use cases / Property listings data

Property listings data

Collect asking prices and listing details for a market.

Steps

  1. Pick the area and filters.
  2. Schedule runs to follow price changes.

Actors for this job

Zillow Scraper

Give it a city, ZIP code, county, Zillow search URL, property URL or zpid and it returns Zillow homes for sale, for rent or recently sold, one JSON row per property: price, Zestimate, rent Zestimate, beds, baths, square feet, lot, home type, days on market, price cut, brokerage, photos and coordinates. With details: description, year built, facts, price history, tax history and schools. $2.10 per 1,000 properties, $3.20 per 1,000 with details; paid plans pay less. You pay only for rows you get.

$2.10 per 1,000 properties on the Free plan, down to $1.20 on higher plans

Apify Store · Guide · Comparison

Quick start

Run the first actor from Python (set APIFY_TOKEN):

# pip install apify-client
import os
from apify_client import ApifyClient

client = ApifyClient(os.environ["APIFY_TOKEN"])
run = client.actor("arcadium/zillow-properties").call(run_input={
    "locations": ["Austin, TX"],
    "maxResultsPerSearch": 50,
})
items = client.dataset(run.default_dataset_id).list_items().items  # apify-client 3.x returns a Run object
print(items)

Or give an AI assistant the actor as tools:

{
  "mcpServers": {
    "apify": {
      "url": "https://mcp.apify.com/?tools=arcadium/zillow-properties",
      "headers": {
        "Authorization": "Bearer <APIFY_TOKEN>"
      }
    }
  }
}