Subito Real Estate Scraper avatar

Subito Real Estate Scraper

Pricing

from $2.00 / 1,000 listings

Go to Apify Store
Subito Real Estate Scraper

Subito Real Estate Scraper

Scrape subito.it real estate listings.

Pricing

from $2.00 / 1,000 listings

Rating

0.0

(0)

Developer

Epic Scrapers

Epic Scrapers

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

🏠 Subito Real Estate Scraper

Scrape thousands of real estate listings from Subito.it β€” Italy's largest classifieds marketplace β€” with structured output, automatic pagination, optional enrichment, and built-in proxy support.


What It Does

This Actor connects to Subito.it's internal API (the same one the Android app uses) to extract real estate listings across all 8 property subcategories β€” apartments, villas, rooms, land, garages, lofts, holiday homes, and commercial spaces. It handles pagination automatically, resolves search URLs, enriches listings with phone numbers and seller info, and outputs clean JSON ready for analysis.

Who It's For

Real estate analysts, property investors, market researchers, lead generation teams, and anyone who needs Subito.it listing data at scale without writing custom scrapers or dealing with anti-bot protection.


Key Benefits

Instead of...This Actor...
Manually clicking through pages on Subito.itScrapes thousands of listings in one run with automatic pagination
Writing a custom scraper that breaks every weekWe maintain the scraper for you
Getting blocked and needing to rotate proxiesBuilt-in Apify proxy with Italian residential IPs
Copy-pasting phone numbers one by oneOptional phone number extraction built-in
Wondering if a seller is trustworthyOptional seller badges, listing history, and shop details
Parsing messy HTMLClean structured JSON with all real estate features extracted

Features

FeatureAdvantageBenefit
Start URLsPaste any Subito.it search URL, detail URL, or API URLStart scraping in 10 seconds without configuring filters
Keyword searchAdd keywords like "centro Milano trilocale"Find exactly what you need, even without a URL
Property filters11+ filter options (region, price, surface, rooms, floor, energy class, seller type, more)Narrow results precisely β€” no post-processing needed
Multiple queriesRun URLs and keywords in a single executionCombine different searches in one run
Max results controlLimit results per queryStay within API budgets and run predictable costs

Data Extraction

FeatureAdvantageBenefit
Structured real estate fieldsSurface area, rooms, bathrooms, floor, energy class, heating, building condition, parking, balcony, garden, elevator, and moreEvery real estate feature is extracted as a typed field β€” no regex or HTML parsing
Category-specific fieldsCIN code for holiday rentals, room type / gender / smoking for shared rooms, office type for commercial spacesComplete data for every property subcategory
Price formattingExtracted as both raw number and Italian-formatted stringReady for analysis and comparison
Image URLsAll listing images as CDN URLsBuild image galleries, train ML models, or archive listings
Geo dataCity, province, regionMap listings or filter by location programmatically

Enrichment

FeatureAdvantageBenefit
Phone numbersFetches seller phone via Subito's contact endpointBuild lead lists directly β€” no manual lookup
Shop detailsShop name, address, logo, website, listing count for professional sellersIdentify agencies, compare portfolio sizes
Seller account infoBadges (verified, premium), total listings, first listing dateAssess seller trustworthiness at a glance

Reliability & Performance

FeatureAdvantageBenefit
Automatic retries4 retries with exponential backoff + jitterSurvives rate limits and temporary failures
Proactive rate limiting150ms minimum gap between requestsAvoids triggering Subito's rate limits
Concurrent enrichmentProcesses 5 ads in parallel per pageFaster enrichment without overwhelming the API
Graceful exhaustionStops charging when budget runs out, exits cleanlyNo surprise failed runs or overcharges
Proxy supportApify proxy with Italian residential IPsWorks reliably at scale with minimal blocking

Example Output

{
"request_url": "https://www.subito.it/annunci-lazio/vendita/immobili/appartamenti/roma",
"category": "Immobili",
"sub_category": "Appartamenti",
"sub_category_slug": "appartamenti",
"type": "In vendita",
"type_key": "s",
"publication_date": {
"iso": "2026-07-07T14:30:00.000Z",
"date": "2026-07-07",
"time": "14:30:00",
"timestamp": 1751812200000,
"local": "7 luglio 2026 alle ore 14:30"
},
"advertiser_type": "privato",
"advertiser_name": "Mario Rossi",
"page_url": "https://www.subito.it/annunci-lazio/vendita/immobili/appartamenti/roma/monolocale-parioli-123456789.htm",
"title": "Monolocale in zona Parioli",
"description": "Bellissimo monolocale ristrutturato situato in zona Parioli...",
"geo": {
"city": "Roma",
"province": "Roma",
"province_code": "RM",
"region": "Lazio"
},
"features": {
"price": {
"value": 185000,
"formatted": "185.000 €",
"label": "Prezzo"
},
"surface": {
"value": 55,
"unit": "mq",
"formatted": "55 mq"
},
"rooms": 2,
"bathrooms": 1,
"floor": "3",
"building_condition": "Ottimo - ristrutturato",
"energy_class": "D",
"heating": "Autonomo",
"elevator": true,
"balcony": true,
"furnished": true
},
"images": [
"https://img-subito.kwcdn.com/v1/...",
"https://img-subito.kwcdn.com/v1/..."
],
"advertiser_shop_data": {
"name": "Agenzia Immobiliare XYZ",
"shop_id": "abc123",
"listing_count": null
},
"features_raw": [ ... ]
}

With enrichment enabled, additional fields appear:

{
"phone_number": "+39 345 1234567",
"advertiser_shop_data": {
"name": "Agenzia Immobiliare XYZ",
"shop_categories": ["Vendita", "Affitto"],
"address": "Via Roma 1, Roma, Lazio",
"listing_count": 47,
"impresapiu_shop_page": "https://www.subito.it/agenzie/xyz",
"website": "https://www.agenziaxyz.it",
"logo": "https://img-subito.kwcdn.com/..."
},
"advertiser_account": {
"user_id": "user_abc",
"first_ad_insertion_date": "2020-03-15",
"total_num_approved_ads": 89,
"badges": [
{
"name": "verified",
"description": "Account verificato",
"is_active": true
},
{
"name": "premium",
"description": "Utente premium",
"is_active": false
}
]
}
}

Input Options

FieldTypeDefaultDescription
startUrlsstring[][]Subito.it search URLs, detail URLs, or direct API URLs. Paste URLs from the browser β€” filters are extracted automatically.
searchKeywordsstring[][]Free-text keywords to search (e.g. "centro Milano trilocale", "villa giardino piscina"). Each keyword runs as a separate search.
propertyTypestring"appartamenti"One of: appartamenti, camere-posti-letto, ville-singole-e-a-schiera, terreni-e-rustici, garage-e-box, loft-e-mansarde, case-vacanza, uffici-locali-commerciali. Leave empty for all types.
adTypestring""s = sale, u = rent, h = holiday rental. Leave empty for all.
advertiserTypestring""private = only private sellers, professional = only agencies. Leave empty for both.
regionstring""Italian region slug (e.g. lombardia, lazio, sicilia). See schema for full list. Leave empty for all Italy.
minPriceintegerβ€”Minimum price in €
maxPriceintegerβ€”Maximum price in €
minSurfaceintegerβ€”Minimum surface area in mΒ²
maxSurfaceintegerβ€”Maximum surface area in mΒ²
minRoomsintegerβ€”Minimum number of rooms
maxRoomsintegerβ€”Maximum number of rooms
floorstringβ€”Preferred floor (1–7). 1 = ground floor.
energyClassstringβ€”Energy class filter (e.g. A4, B, D, G)
maxItemsPerQueryinteger100Maximum listings per URL or keyword. 0 = unlimited.
enrichPhonebooleanfalseFetch seller phone numbers (extra API call per listing)
enrichShopbooleanfalseFetch shop details for professional sellers
enrichUserAccountbooleanfalseFetch seller badges, total listings, account age
proxyConfigurationproxyApify IT residentialProxy configuration. Defaults to Italian residential proxies.

Quick Start Examples

You want...Input
Apartments for sale in MilanstartUrls: ["https://www.subito.it/annunci-lombardia/vendita/immobili/appartamenti/"]
Houses with pool under €500k in TuscanystartUrls: ["https://www.subito.it/annunci-toscana/vendita/immobili/ville-singole-e-a-schiera/?pr=,500000&q=piscina"]
Rentals near a specific addresssearchKeywords: ["trilocale corso venezia milano affitto"]
All garages in Rome on salepropertyType: "garage-e-box", region: "lazio", adType: "s"
Holiday homes in Sicily with phone numberspropertyType: "case-vacanza", region: "sicilia", adType: "h", enrichPhone: true
A single listing detail pagestartUrls: ["https://www.subito.it/...qualche-annuncio-123456789.htm"]

Common Use Cases

🏘️ Market Research

Track property prices, listing volumes, and trends across Italian regions and property types. Run weekly to build a historical dataset.

πŸ’° Price Monitoring

Monitor specific segments (e.g. 2-room apartments in Rome under €200k). Set a max price and run daily to catch new listings.

πŸ‘₯ Lead Generation

Extract contact information from listings with enrichPhone: true. Build prospect lists for agencies or investors.

πŸ“Š Inventory Tracking

Track how many listings a specific agency has active, what properties they offer, and at what prices β€” useful for competitive analysis.

πŸ” Niche Searching

Find specific features (garage, garden, elevator) in combination with price and location β€” Subito's web search can't combine all these filters on mobile; this Actor can.


Why This Actor?

It talks to the Subito API directly. Unlike HTML scrapers that parse rendered pages and break every time Subito updates its markup, this Actor uses the same API endpoints as the Android app. API responses are stable, structured JSON.

It's built for real estate. Instead of a generic scraper that treats every listing as title + price + description, this Actor extracts 25+ property-specific fields: surface area, rooms, bathrooms, floor, energy class, heating type, building condition, parking types, balcony, garden, elevator, furnished status, and more.

It's reliable at scale. Exponential backoff retries, proactive rate limiting, concurrent enrichment, and a shared throttle across all requests mean the Actor behaves well even on large runs and doesn't burn through your budget on retries.

It's transparent. Pay-per-event pricing means you only pay for what you use. The Actor exits gracefully when the budget is exhausted instead of failing mid-run.


FAQ / Common Issues

Does it require proxies?

No β€” the Actor works without proxies. However, if you're scraping at scale, it's recommended to use Apify's Italian residential proxies (enabled by default). The Actor automatically routes all requests through the configured proxy.

Can it scrape ALL listings?

It scrapes everything Subito's search API returns. Subito limits search results to a maximum number of pages for any single query. To get more results, use multiple more specific queries (narrower region, different property types, multiple keywords).

Does it support Italian regions?

Yes β€” all 20 Italian regions are supported via the region parameter. City-level filtering is available through URLs (pasting a Subito URL that already has a city filter).

Does it require login?

No. All API endpoints used by this Actor are public. No cookies, no authentication, no session management needed.

How much does it cost?

The Actor uses Apify's pay-per-event model:

  • listing-scraped β€” always charged (one unit per listing pushed to the dataset)
  • phone-number-enriched β€” charged when a phone number is retrieved
  • shop-details-enriched β€” charged when shop details are retrieved
  • seller-account-enriched β€” charged when seller account info is retrieved

If you don't enable enrichment, you pay only for the listings. Set maxItemsPerQuery to control how many listings are scraped per run.

What happens if Subito changes their API?

The Actor uses the same API as the Android app, which is backwards-compatible by design. Major API changes are extremely rare. If something breaks, enrichment failures are handled silently so the rest of the run completes.

Can I scrape a single listing detail page?

Yes β€” paste the detail URL (ending in -123456789.htm) into startUrls. The Actor detects it automatically and fetches that single ad by its numeric ID.

What if a URL doesn't work?

The Actor has three fallback mechanisms for URLs: (1) direct API URL passthrough, (2) Subito's deeplink resolver, and (3) a built-in URL parser that extracts region, ad type, category, and query parameters from the URL path. Usually at least one succeeds.


Try It

  1. Paste a URL β€” Copy any Subito.it real estate search URL into startUrls
  2. Add filters β€” Narrow by region, price, surface, rooms
  3. Enable enrichment β€” Turn on phone numbers, shop details, or seller account info
  4. Run it β€” Hit "Start" and get clean JSON in seconds
# Or run locally with Apify CLI
apify run --input my-search.json

Built for Apify. Works on the Apify platform and locally with the Apify CLI.