# SUUMO Japan Used Condo Asking Price Statistics (`jpmarketdata/suumo-used-condo-price-statistics`) Actor

Summarize SUUMO Japan used-condo asking prices, JPY/m2 and floor area by city. One flat summary per city; 30–300 listing sample, saved Task/API friendly. $0.02 per nonempty city, zero free. No individual rows or yield. Unofficial.

- **URL**: https://apify.com/jpmarketdata/suumo-used-condo-price-statistics.md
- **Developed by:** [h ichi](https://apify.com/jpmarketdata) (community)
- **Categories:** Real estate, Automation, Developer tools
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

$20.00 / 1,000 used-condo area summaries

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

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

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
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.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## 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.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## SUUMO Japan Used Condo Asking Price Statistics

> **Unofficial** — independent tool, **not affiliated with, endorsed by, or sponsored by SUUMO**. It reads only publicly visible pages. Support, reliability guarantees and the full disclaimer are at the bottom of this page.

Compare advertised used-condo asking prices across a saved Japanese city watchlist. Enter city/area codes and receive one flat, typed market summary per city/area. This is an independent used-condo sale statistics entry; it analyzes this property type only and returns no indicative yield.

**Price:** $0.02 per city/area with priced listings. Source-confirmed empty cities are free. There is no listing-row fee and no optional individual rows in this Actor. Five successful cities cost $0.10. Provider/platform resource usage may apply separately under your Apify plan.

### Input

Use `cityCodes` with one to five 5-digit SUUMO city/area codes, such as `13113` (Shibuya), `13104` (Shinjuku) or `27127` (Osaka Kita). `maxSampleCondosPerCity` defaults to 60 and accepts 30–300. `convertToUsd` defaults to true; USD fields are optional if FX is unavailable.

```json
{"cityCodes":["13113","13104"],"maxSampleCondosPerCity":60,"convertToUsd":false}
```

Most city/ward codes match five-digit JIS municipality codes. SUUMO also groups some county areas under its own selectors (for example, `27320` is labelled 豊能郡 in the rental city index). Results refer to the exact source area code and verified area label, rather than an assumed government boundary.

### Output

One `sale_summary` row per valid city: source count, priced sample count, source-listed JPY price distribution, per-m2 distribution and capture time. Flat fields such as `askingPriceMedianJpy` and `askingPricePerM2MedianJpy` are directly usable in CSV or an API ingestion pipeline. `coverage` is always `bounded_sample`; `totalListingsFound` is the source advertising total. SUUMO consolidates listings, so this count can differ from displayed properties or rental-unit rows. Use the priced sample count as the statistics denominator; it is not a census. Condo fields also report median floor area, built year and the most frequent layout/count (first seen breaks ties). Asking prices are not completed transaction prices or property appraisals.

A source-confirmed zero returns `areaStatus: "no_listings"`, zero sample count, null price statistics, a timestamp and a hint, with no event charge. An invalid city, unreadable layout, positive source results without usable prices, authentication/rate-limit or acquisition failure is an error. Every requested city must be verified. If any city fails, the run fails before returning summaries or charging city fees. Source-confirmed zeros remain valid free results.

### Choose your workflow

Use this Actor for used-condo sale price summaries only. Use [SUUMO Rent, Condos & Gross Yield](https://apify.com/jpmarketdata/suumo-market-checker) when you deliberately want both types and their indicative area-level yield; its existing contracts remain available. For rental unit rows use [Residential Rental Listings Bulk](https://apify.com/jpmarketdata/japan-residential-rental-listings-bulk). [Investment Condo Listings Bulk](https://apify.com/jpmarketdata/japan-investment-condo-listings-bulk) is a different Yahoo! Real Estate source, not SUUMO condo coverage. The original SUUMO Actor also offers a bounded optional sample of listing rows.

For the other SUUMO property market, use [Rental Market Statistics](https://apify.com/jpmarketdata/suumo-rental-market-statistics).

### Repeat the city watchlist

Save the same input as an Apify Task, schedule it at the cadence you need and retain each run dataset. Compare by `cityCode`, `type` and `checkedAt`, with identical sample settings. Changing property mix can move a median without a same-property price change. This Actor does not persist a historical baseline or infer new/removed listings. Each run uses the same $0.02 per nonempty city rule.

### Limits

Up to five cities and 300 sampled units per city/area; 256 MB default and 600-second cloud timeout. Source acquisition stops after 540 seconds, reserving 60 seconds for result delivery, billing and run-summary storage. Acquisition is bounded to 100 HTTP requests per run with throttling, including robots, allowed city resolution, pagination and optional FX. A server disconnect before a response is retried once after two seconds; both attempts count toward the same request limit. Timeouts, authentication blocks, rate limits and other transport failures are not retried. Source totals, visible rows and coverage can change during collection. Used-condo pages and municipality links are resolved from allowed public canonical pages and checked against the requested city code. The source ordering and acquisition limits are disclosed with the sample; cross-run property mix can change. Samples are not official population indices, complete inventories or forecast returns. Public pages only, no account login or paid proxy dependency. Examples are illustrative contracts, not live price quotations.

### Privacy

Only aggregate market statistics and source-area identifiers are returned. No occupant, owner, agent contact, email, telephone, photographs or private account data is collected in the output. Unofficial; not affiliated with SUUMO or Recruit.

### If something goes wrong

- **Wrong number or a failed run?** Open a ticket on the **Issues** tab. I read every one and reply within 2 business days (Japan time).
- **You never get a fake "empty" result.** If the site can't be read, the run fails and says so.
- **Price:** $0.02 per delivered city with priced listings. Source-confirmed zeros and failed cities are free; no individual-listing fee.
- **Checked every week.** An automatic test runs this tool weekly; if the site changes, I fix it.
- **Public pages only.** No login, no personal data, and it goes easy on the site.

### More tools by the same author

- [SUUMO Japan Rent & Used Condo Price Summaries](https://apify.com/jpmarketdata/suumo-market-checker)
- [Japan Investment Condo Sale Listings — Bulk](https://apify.com/jpmarketdata/japan-investment-condo-listings-bulk)
- [Japan Rent Prices by Ward — Compare SUUMO & at home](https://apify.com/jpmarketdata/japan-rent-market-benchmark)
- [Japan Residential Rental Listings Bulk — SUUMO & Yahoo](https://apify.com/jpmarketdata/japan-residential-rental-listings-bulk)
- [LIFULL HOME'S Japan Home Prices by City and Building Age](https://apify.com/jpmarketdata/lifull-homes-property-price-checker)
- [Yahoo! Real Estate Japan Used Condo Prices by Area](https://apify.com/jpmarketdata/yahoo-realestate-condo-market-checker)
- [Mercari Japan Sold Price Summary & Listing Evidence](https://apify.com/jpmarketdata/mercari-japan-price-checker)
- [Yahoo! Auctions Japan Sold Price Summary & Monthly History](https://apify.com/jpmarketdata/yahoo-auction-sold-comps)

All tools (Japan marketplaces, real estate, jobs, racing, prediction markets): <https://apify.com/jpmarketdata>

### Disclaimer

Unofficial, independent tool — **not affiliated with, endorsed by, or sponsored by SUUMO**. Product names and logos belong to their owners and only say where the data comes from. Data is read from public pages, for market research; check before you act on it.

# Actor input Schema

## `cityCodes` (type: `array`):

Enter 1–5 SUUMO 5-digit city/area codes, e.g. 13113 (Shibuya) or 13104 (Shinjuku). Most match JIS municipality codes; SUUMO also has grouped county areas. Each area with priced listings costs $0.02; a source-confirmed zero is free.

## `maxSampleCondosPerCity` (type: `integer`):

Maximum source-listed units to inspect per area, 30–300; the priced sample can be smaller. The default is 60. This affects sample coverage, not the $0.02 per-area price. It is not a complete inventory or an official city index.

## `convertToUsd` (type: `boolean`):

Add USD price statistics when a current JPY/USD exchange rate is available. JPY source values remain the reference; missing FX does not discard valid market data.

## Actor input object example

```json
{
  "cityCodes": [
    "13113"
  ],
  "maxSampleCondosPerCity": 60,
  "convertToUsd": true
}
```

# Actor output Schema

## `summaries` (type: `string`):

One purpose-specific summary per city/area code; no other property type or individual rows.

# 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 = {
    "cityCodes": [
        "13113"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("jpmarketdata/suumo-used-condo-price-statistics").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 = { "cityCodes": ["13113"] }

# Run the Actor and wait for it to finish
run = client.actor("jpmarketdata/suumo-used-condo-price-statistics").call(run_input=run_input)

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

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

```

## CLI example

```bash
echo '{
  "cityCodes": [
    "13113"
  ]
}' |
apify call jpmarketdata/suumo-used-condo-price-statistics --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,jpmarketdata/suumo-used-condo-price-statistics"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/PpIC7YS9HkhnF1Aae/builds/rDFJJgMCGTgF9xqUo/openapi.json
