# Madlan Analytics - Israel Real Estate Market Data (`swerve/madlan-analytics`) Actor

Get Israeli real estate market analytics: median prices, price per sqm, demographics, school ratings, resident reviews, neighborhood boundaries, and transaction history from Madlan.co.il.

- **URL**: https://apify.com/swerve/madlan-analytics.md
- **Developed by:** [Swerve](https://apify.com/swerve) (community)
- **Categories:** E-commerce, Lead generation, Automation
- **Stats:** 28 total users, 11 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $10.00 / 1,000 results

This Actor is paid per event and usage. You are charged both the fixed price for specific events and for Apify platform usage.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

## Madlan.co.il Market Analytics & Neighborhood Data

Get comprehensive real estate market analytics from [Madlan.co.il](https://www.madlan.co.il), Israel's leading real estate data platform (by Localize.city).

### Features

- **Median prices by room count** - buy and rent prices with historical comparison
- **Price per sqm** - city/neighborhood level price density
- **ROI data** - rental yield percentages
- **Demographics** - socioeconomic index, age distribution, education levels, occupation
- **Community ratings** - safety, transport, parks, schools, walkability, shopping, and more
- **Analyst insights** - Hebrew text analysis of neighborhoods (education, livability, real estate)
- **Geographic hierarchy** - district, nearby cities, area structure
- **140+ Israeli cities** - all major cities pre-mapped

### Use Cases

- **Real estate investors** comparing ROI, median price/sqm, and yearly transaction volume across Israeli neighbourhoods to pick where to buy next
- **Relocation consultants** matching international clients to Israeli neighbourhoods based on school ratings, safety scores, and socioeconomic index
- **Urban planners and policy researchers** studying demographic shifts, ownership rates, and education levels at city and sub-city level
- **PropTech & mortgage startups** embedding neighbourhood scorecards (safety, transport, parks, walkability) directly in their product
- **Journalists and analysts** pulling up-to-date Israeli housing market statistics for articles, reports, and market commentary
- **Real estate agencies** arming buyers with data-rich neighbourhood briefings that competitors using only Yad2 can't match

### No Proxy Needed

Unlike web scrapers, this actor queries Madlan's public GraphQL API directly. No proxy or anti-bot bypass required.

### Input

| Field | Type | Description |
|-------|------|-------------|
| `city` | string | City name (Hebrew/English) or Madlan docId. Comma-separated or `"all"` |
| `dataTypes` | array | Data to fetch: `"all"`, `"prices"`, `"demographics"`, `"ratings"`, `"insights"`, `"information"` |

#### Example Input

```json
{
  "city": "Tel Aviv, Jerusalem, Haifa",
  "dataTypes": ["all"]
}
````

### Output

Each city returns one record with:

- **pricePerSqm** - median price per sqm (ILS)
- **yearlyDeals** - number of transactions per year
- **pricesByRooms** - array of `{ rooms, medianBuyPrice, previousBuyPrice, medianRent, rentRoi }`
- **roi** - rental yield percentage
- **bulletinsForSale / bulletinsForRent** - active listing counts
- **schoolsRating** - average school score
- **demographicIndex** - socioeconomic index (1-10)
- **ratings** - community scores: safety, transport, parks, schools, walkability, etc.
- **demographics** - age, education, occupation, ownership distributions
- **insights** - analyst-written Hebrew text insights
- **hierarchy** - district, nearby cities

### Supported Cities

All 140+ Israeli cities supported. Use English or Hebrew names.

### Keywords

Israeli real estate analytics, Madlan market data, Tel Aviv neighbourhood data, Jerusalem demographics API, Israel school ratings, Israeli housing market analytics, real estate ROI Israel, neighbourhood insights Israel, socioeconomic index Israel, price per sqm Israel, madlan.co.il analytics, Israel property market research

# Actor input Schema

## `city` (type: `string`):

City name in Hebrew (e.g. תל אביב) or English (e.g. Tel Aviv). Comma-separated for multiple cities. Use "all" for all 140+ cities.

## `neighbourhood` (type: `string`):

Optional neighbourhood name in Hebrew (e.g. נווה זמר, הצפון הישן). When set, fetches analytics at the neighbourhood level instead of the full city.

## `dataTypes` (type: `array`):

Which data to fetch. Select specific types or 'all' for everything.

## Actor input object example

```json
{
  "city": "Tel Aviv",
  "dataTypes": [
    "all"
  ]
}
```

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "city": "Tel Aviv"
};

// Run the Actor and wait for it to finish
const run = await client.actor("swerve/madlan-analytics").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = { "city": "Tel Aviv" }

# Run the Actor and wait for it to finish
run = client.actor("swerve/madlan-analytics").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "city": "Tel Aviv"
}' |
apify call swerve/madlan-analytics --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=swerve/madlan-analytics",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Madlan Analytics - Israel Real Estate Market Data",
        "description": "Get Israeli real estate market analytics: median prices, price per sqm, demographics, school ratings, resident reviews, neighborhood boundaries, and transaction history from Madlan.co.il.",
        "version": "1.0",
        "x-build-id": "4BGcBKcPBPEgOUD6t"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/swerve~madlan-analytics/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-swerve-madlan-analytics",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/swerve~madlan-analytics/runs": {
            "post": {
                "operationId": "runs-sync-swerve-madlan-analytics",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/swerve~madlan-analytics/run-sync": {
            "post": {
                "operationId": "run-sync-swerve-madlan-analytics",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "required": [
                    "city"
                ],
                "properties": {
                    "city": {
                        "title": "City",
                        "type": "string",
                        "description": "City name in Hebrew (e.g. תל אביב) or English (e.g. Tel Aviv). Comma-separated for multiple cities. Use \"all\" for all 140+ cities."
                    },
                    "neighbourhood": {
                        "title": "Neighbourhood (שכונה)",
                        "type": "string",
                        "description": "Optional neighbourhood name in Hebrew (e.g. נווה זמר, הצפון הישן). When set, fetches analytics at the neighbourhood level instead of the full city."
                    },
                    "dataTypes": {
                        "title": "Data Types",
                        "type": "array",
                        "description": "Which data to fetch. Select specific types or 'all' for everything.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "all",
                                "prices",
                                "demographics",
                                "ratings",
                                "insights",
                                "information",
                                "schools",
                                "reviews",
                                "neighborhoods",
                                "boundaries",
                                "description",
                                "deals"
                            ],
                            "enumTitles": [
                                "All Data",
                                "Prices (median buy/rent by rooms, price/sqm, ROI)",
                                "Demographics (age, education, socioeconomic index)",
                                "Community Ratings (safety, transport, parks, schools, etc.)",
                                "Analyst Insights (Hebrew text analysis of area)",
                                "Area Information (hierarchy, nearby cities, district)",
                                "Schools (individual schools with names, ratings, education level)",
                                "Resident Reviews (pros/cons, community, transport, shopping opinions)",
                                "Neighborhoods (all sub-areas with prices, nearby areas with listing counts)",
                                "Geographic Boundaries (polygon coordinates for mapping)",
                                "Area Description (rich Hebrew text about the area's history and character)",
                                "Recent Deals (real transactions with prices, dates, addresses, sqm)"
                            ]
                        },
                        "default": [
                            "all"
                        ]
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
