Immobiliare.it Scraper & API: Listings, Price Drops | $0.4/1K
Under maintenancePricing
from $0.40 / 1,000 listing saveds
Immobiliare.it Scraper & API: Listings, Price Drops | $0.4/1K
Under maintenanceImmobiliare.it scraper and API: paste a search, agency or listing URL and get price, price drop, price per m², size, rooms, GPS, photos and the agency's name and phone. No 2,000-result cap. Track new, repriced and removed listings on a schedule. From $0.40/1K.
Pricing
from $0.40 / 1,000 listing saveds
Rating
0.0
(0)
Developer
Epic Scrapers
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
5 days ago
Last modified
Categories
Features
Share

Immobiliare.it Scraper and API: Italian property listings, price per m², price drops and agency phones
🇮🇹 Italiano: leggi la guida in italiano (API, prezzo al metro quadro, elenco agenzie immobiliari).
Immobiliare.it Scraper turns any Immobiliare.it search into a spreadsheet of property listings: price, price drop, price per m², size, rooms, floor, condition, full address, GPS coordinates, photos, and the agency's name and phone number. It is built for investors, agents, analysts and proptech teams who track asking prices, rents and new stock in Italy. Paste a search URL, an agency page or a single listing, and get one clean row per property.
- Your own search, every filter. Set up the search on immobiliare.it (city, zone, province, sale or rent, auctions, new builds, price, size, rooms, sort order), copy the address and paste it. The Actor reads every filter from the URL.
- No 2,000-result cap. The website stops at 80 pages. This Actor reads the whole search, so even all homes for sale in Rome or Milan come back in one run.
- Price drops built in. When an agency cuts the price, the row has
originalPriceandpriceDropPercent.pricePerSqmis filled for every listing with a surface. - Agency phone included.
agencyName,agencyIdandagencyPhonecome with the search data whenever the agency publishes a phone, at no extra cost. - Only what changed. Turn on monitoring, schedule the task, and each run saves only listings that are new, repriced or removed since the last run, with the previous price.
- Full records on demand. Turn on
includeDetailsfor the description, energy class, year built, condo fees, availability, agent name and every characteristic Immobiliare.it lists. - Your own Immobiliare.it API. Call it over HTTP from any language and get JSON back, no Immobiliare.it contract needed. Or export to CSV, Excel or Google Sheets.
- From $0.40 per 1,000 listings. Pay per listing, no subscription, proxy included.
Scope: Immobiliare.it in Italy. For Idealista (Italy, Spain, Portugal, France) use Idealista Scraper. For Italian classifieds, including private sellers, use Subito Real Estate Scraper.
What can you do with Immobiliare.it Scraper?
| Goal | How |
|---|---|
| Find motivated sellers | Search a city, then filter rows where priceDropPercent is set and sort by it. |
| Get alerts for new listings | Save the search as a task with Only new listings and price changes on and schedule it daily. |
| Measure time on market | Keep monitoring on: removed listings come back with firstSeenAt and removedAt. |
| Compare zones | Group by macrozone or microzone and take the median pricePerSqm. |
| Build a rental yield model | Run the same city for vendita and affitto and compare median pricePerSqm per zone. |
| Generate agency leads | Count listings per agencyName, with agencyPhone, or paste an agency page to get its whole portfolio. |
| Find renovation projects | Filter on condition = Da ristrutturare and a maximum price. |
| Map a market | Plot latitude and longitude. |
How it compares
| Immobiliare.it Scraper | Typical Immobiliare.it scrapers | |
|---|---|---|
| Price per 1,000 listings | From $0.40, no start fee | $0.50–$2.00, often plus a start fee |
| Searches over 2,000 listings | Read in full | Varies; the website itself stops at 80 pages |
| Input | Search, agency and listing URLs, as many as you like | Often one search URL per run |
| Price drop fields | originalPrice, priceDropPercent | Rarely |
| New, repriced and removed listings | Built in, removals checked against Immobiliare.it | Separate tools, extra cost or none |
| Agency phone | Included with the search data | Varies |
| Failed URLs | Logged, never charged | Sometimes saved as paid rows |
Quick start
- Click Try for free and sign in to Apify.
- Open immobiliare.it, set up your search and copy the address from the browser.
- Paste it into Immobiliare.it URLs. Set Maximum results to
100for a first run. - Click Start, then open the Output tab and export the data.
{"startUrls": ["https://www.immobiliare.it/vendita-case/milano/?prezzoMassimo=300000"],"maxResults": 100}
What URLs can you paste?
| URL | Example | What you get |
|---|---|---|
| Search for sale | https://www.immobiliare.it/vendita-case/roma/ | Every listing of the search, with all its filters |
| Search for rent | https://www.immobiliare.it/affitto-case/milano/?prezzoMassimo=1200 | Rentals; price is the monthly rent |
| Zone or province | https://www.immobiliare.it/vendita-case/genova-provincia/ | Everything in the area |
| Sorted search | https://www.immobiliare.it/vendita-case/roma/?criterio=data&ordine=desc | Newest first (any sort the site offers) |
| Auctions | https://www.immobiliare.it/aste-immobiliari/torino/ | Auction listings |
| New builds | https://www.immobiliare.it/nuove-costruzioni/milano/ | New developments |
| Agency page | https://www.immobiliare.it/agenzie-immobiliari/183304/ | All of the agency's listings |
| Single listing | https://www.immobiliare.it/annunci/130722394/ | One row with full details |
Searches drawn on the map (search-list/?vrt=…) are not supported; the run logs a message and moves on. Use the city or zone search instead.
Use it as an Immobiliare.it API
Immobiliare.it has no public API for reading listings: its APIs are for agencies publishing their ads and for its paid Insights market data. This Actor works as a listings API: send the input, get the listings back as JSON in the same HTTP call.
curl -X POST "https://api.apify.com/v2/acts/epicscrapers~immobiliare-scraper/run-sync-get-dataset-items?token=<YOUR_APIFY_TOKEN>" \-H "Content-Type: application/json" \-d '{"startUrls": ["https://www.immobiliare.it/vendita-case/milano/?prezzoMassimo=300000"], "maxResults": 100}'
The same works from Python or JavaScript with the Apify client, from Make, Zapier or n8n, or from an AI agent through the Apify MCP server. Build search URLs with the website's filters: prezzoMassimo, prezzoMinimo, superficieMinima, localiMinimo, criterio=data&ordine=desc (newest first).
Input reference
| Field | Type | Default | Effect |
|---|---|---|---|
startUrls | Array of URLs | Required | Immobiliare.it search, agency or listing URLs. Strings or { "url": "…" } objects. |
maxResults | Integer | 100 | Maximum listings saved in the run, across all URLs. Set it to the search's total to get everything. |
includeDetails | Boolean | false | Opens each listing for the description, energy class, year built, condo fees, availability, agent and all characteristics. Extra event per listing. |
monitoringMode | Boolean | false | Saves only new, repriced and removed listings since the last run of the same URL. |
proxyConfiguration | Object | Apify Proxy | Datacenter proxy works and is included. The Actor changes IP by itself when one is blocked. |
The Actor requests Italian texts, prices in EUR and surfaces in m², like the Immobiliare.it app. The same listing found by two URLs is saved once.
Output
Each listing is one row in the run's dataset. Export it as JSON, CSV, Excel, XML or HTML. A real row from a Genoa search with includeDetails on, photos and description shortened, phone masked:
{"id": 133099264,"url": "https://www.immobiliare.it/annunci/133099264/","title": "Appartamento","contract": "Vendita","typology": "Appartamento","category": "Residenziale","price": 99900,"priceFormatted": "€ 99.900","currency": "EUR","pricePerSqm": 1816,"originalPrice": null,"priceDropPercent": null,"surface": 55,"rooms": "2","bedrooms": 1,"bathrooms": 1,"floor": "4","elevator": false,"heating": "Autonomo","condition": "Buono / Abitabile","isLuxury": false,"isNewConstruction": false,"features": ["fibra ottica", "porta blindata", "armadio a muro"],"address": "Via delle Casette, 80","zipcode": "16132","city": "Genova","province": "Genova","provinceCode": "GE","region": "Liguria","macrozone": "Albaro, Sturla","microzone": "Sturla","latitude": 44.4021,"longitude": 8.9843,"advertiserType": "agency","agencyName": "Casa Gold Immobiliare","agencyId": 434097,"agencyPhone": "+39010…","images": ["https://pwm.im-cdn.it/image/2047873025/xxl.jpg"],"imageCount": 33,"createdAt": "2026-09-30T15:07:36.000Z","updatedAt": "2026-11-03T21:11:00.000Z","visibility": "Sky","description": "In una zona strategica del quartiere di Sturla, in Via delle Casette, proponiamo in vendita un accogliente appartamento di circa 55 mq…","energyClass": "F","energyConsumption": "≥ 175 kWh/m² anno","yearBuilt": 1920,"condoFees": "€ 60/mese","availability": "libero","agentName": "Laura Bertazzo","featureTags": ["Armadio a muro", "Esposizione esterna", "Fibra ottica", "Porta blindata"],"characteristics": {"Tipologia": "Appartamento | Intera proprietà | Classe immobile media","Cucina": "Cucina angolo cottura","Balcone": "No","Cantina": "No","Piani edificio": "4 piani","Riscaldamento": "Autonomo, a radiatori, alimentato a gas"}}
With monitoring on, rows also have changeType (new or priceChanged), previousPrice and firstSeenAt. A listing that was taken down comes back as a short row like this:
{"id": 128455012,"url": "https://www.immobiliare.it/annunci/128455012/","changeType": "removed","previousPrice": 245000,"firstSeenAt": "2026-10-01T06:00:12.000Z","removedAt": "2026-11-08T06:00:41.000Z"}
Notes on fields
priceis a number in EUR; for rentals it is the monthly rent. For auctions it is the starting bid, andpriceFormattedreadsda € ….originalPriceandpriceDropPercentare set only when the agency has cut the price.pricePerSqmispricedivided bysurface, rounded.roomsis text because Immobiliare.it uses values like"5+".bedroomsandbathroomsare numbers.createdAtandupdatedAtare ISO dates (UTC).- The fields from
descriptiontocharacteristicsare present only withincludeDetailson, or for listing URLs. - Missing values are
null.
Track Immobiliare.it over time with scheduled runs
Most of the value comes from running the same search again. Apify can run the Actor for you on a schedule and send the results wherever you need them.
1. Save your input as a task
Set your URLs, turn on Only new listings and price changes, set Maximum results at least as high as the search's total, and click Save as a new task. Monitoring remembers each URL separately, so one task can watch several searches.
2. Schedule the task
In Apify Console, go to Schedules, click Create new, choose how often to run and add your task. See Schedules.
| Use case | Frequency | Cron expression |
|---|---|---|
| New listing alerts | Daily at 06:00 | 0 6 * * * |
| Price drop watch | Twice a day | 0 6,18 * * * |
| Market report by zone | Weekly, Monday | 0 6 * * 1 |
3. Send the results to a spreadsheet or your inbox
Connect Google Sheets, Slack, email or a webhook in the task's Integrations tab, so each run's new listings land where you work:
4. Read the changes
- New listings:
changeType=new. - Price cuts and raises:
changeType=priceChanged, comparepricewithpreviousPrice. - Sold or withdrawn:
changeType=removed;removedAtminusfirstSeenAtis the time on market.
The first monitored run saves everything as new. Later runs save only changes.
Ready-to-run examples
Homes under €300,000 in Milan, newest first:
{"startUrls": ["https://www.immobiliare.it/vendita-case/milano/?prezzoMassimo=300000&criterio=data&ordine=desc"],"maxResults": 500}
Every rental in Bologna, with full details:
{"startUrls": ["https://www.immobiliare.it/affitto-case/bologna/"],"maxResults": 5000,"includeDetails": true}
Daily watch of Turin auctions and one agency:
{"startUrls": ["https://www.immobiliare.it/aste-immobiliari/torino/","https://www.immobiliare.it/agenzie-immobiliari/183304/"],"maxResults": 5000,"monitoringMode": true}
For AI agents
Call epicscrapers/immobiliare-scraper with a list of immobiliare.it URLs. Minimal input:
{ "startUrls": ["https://www.immobiliare.it/vendita-case/roma/"], "maxResults": 50 }
Key output fields: id, url, price, pricePerSqm, priceDropPercent, surface, rooms, bedrooms, bathrooms, city, macrozone, latitude, longitude, agencyName, agencyPhone, createdAt. Add "includeDetails": true for description, energyClass, yearBuilt and condoFees. To build a search URL, use the immobiliare.it path pattern /{vendita|affitto}-case/{city}/ with filters such as prezzoMassimo, superficieMinima and localiMinimo.
FAQ
Why did I get fewer results than my limit?
The search has fewer listings than maxResults, or the same listing appeared under several of your URLs and was saved once. The run log shows the total for each URL.
Can I get a whole city?
Yes. Set maxResults to the search's total (the log prints it). There is no 2,000-result cap, so a whole city fits in one run.
How fast is it?
Search data comes in at thousands of listings per minute. With includeDetails on, each listing needs one more request, so runs take a few times longer.
Should I turn on includeDetails?
Search rows already have the price, price drop, surface, rooms, floor, condition, address, coordinates, photos and agency phone. Turn it on when you need the description, energy class, year built, condo fees or the full characteristics list.
How does it know a listing was removed?
At the end of a complete monitored scan, every listing that the search no longer returns is checked with Immobiliare.it. Only listings Immobiliare.it no longer has are reported as removed; listings that just moved out of your filters (for example above your maximum price) are not.
Do I need proxies, an account or an API key?
No. Apify Proxy is used by default and included in the price.
Is it legal to scrape Immobiliare.it?
The Actor collects publicly visible listing data. You are responsible for how you use it, including Immobiliare.it's terms and laws such as GDPR, especially for phone numbers and agent names.
Cost
Pay per event, no subscription. Platform usage and proxy are included.
| Event | Free plan | Starter | Scale | Business and up |
|---|---|---|---|---|
| Listing saved | $0.80 / 1,000 | $0.60 / 1,000 | $0.50 / 1,000 | $0.40 / 1,000 |
Full listing details (includeDetails or listing URL) | $0.80 / 1,000 | $0.70 / 1,000 | $0.60 / 1,000 | $0.50 / 1,000 |
| Monitoring scan, per 1,000 listings checked | $0.01 | $0.01 | $0.01 | $0.01 |
| Run (Free plan) | Cost |
|---|---|
| 1,000 listings | $0.80 |
| 1,000 listings with full details | $1.60 |
| Daily monitoring of a 1,000-listing search, about 15 changes a day | about $0.66 per month |
Set a spending limit on the run and the Actor stops cleanly when it is reached, keeping what it saved.
Related Actors
- Idealista Scraper: Idealista listings in Italy, Spain, Portugal and France.
- Subito Real Estate Scraper: Italian property classifieds, including private sellers.
In italiano: Immobiliare.it API e scraper
Immobiliare.it Scraper trasforma qualsiasi ricerca di Immobiliare.it in un foglio di calcolo di annunci immobiliari: prezzo, ribasso, prezzo al metro quadro, superficie, locali, piano, stato, indirizzo, coordinate GPS, foto, nome e telefono dell'agenzia. È pensato per investitori, agenzie, analisti e aziende proptech che seguono prezzi di vendita, affitti e nuovi annunci in Italia.
Un'API per gli annunci di Immobiliare.it
Immobiliare.it non ha un'API pubblica per leggere gli annunci: le sue API servono alle agenzie per pubblicare e ai dati a pagamento di Insights. Questo Actor funziona come un'API di Immobiliare.it: invii l'URL di una ricerca e ricevi gli annunci in JSON nella stessa chiamata HTTP, senza contratto e senza account Immobiliare.it.
curl -X POST "https://api.apify.com/v2/acts/epicscrapers~immobiliare-scraper/run-sync-get-dataset-items?token=<IL_TUO_TOKEN_APIFY>" \-H "Content-Type: application/json" \-d '{"startUrls": ["https://www.immobiliare.it/vendita-case/milano/?prezzoMassimo=300000"], "maxResults": 100}'
Funziona anche da Python, JavaScript, Make, Zapier, n8n o da un agente AI tramite il server MCP di Apify.
Cosa ottieni
- Le tue ricerche, con tutti i filtri. Imposta la ricerca su immobiliare.it (città, zona, provincia, vendita o affitto, aste, nuove costruzioni, prezzo, superficie, locali, ordinamento), copia l'indirizzo e incollalo.
- Nessun limite di 2.000 risultati. Il sito si ferma a 80 pagine; l'Actor legge tutta la ricerca, anche un'intera città come Roma o Milano.
- Prezzo al metro quadro e ribassi.
pricePerSqmè calcolato per ogni annuncio con superficie;originalPriceepriceDropPercentindicano quando l'agenzia ha abbassato il prezzo. - Elenco agenzie immobiliari con telefono.
agencyName,agencyIdeagencyPhonesono inclusi nei dati di ricerca. Incolla la pagina di un'agenzia (immobiliare.it/agenzie-immobiliari/…) per avere tutti i suoi annunci. - Solo le novità. Con il monitoraggio attivo e un'esecuzione pianificata, ogni esecuzione salva solo gli annunci nuovi, quelli con il prezzo cambiato e quelli rimossi, con il prezzo precedente.
- Scheda completa su richiesta. Con
includeDetailsaggiungi descrizione, classe energetica, anno di costruzione, spese condominiali, disponibilità, nome dell'agente e tutte le caratteristiche.
A cosa serve
| Obiettivo | Come |
|---|---|
| Prezzo al mq per zona | Raggruppa per macrozone o microzone e calcola la mediana di pricePerSqm. Ad esempio, i prezzi delle case a Milano o a Roma quartiere per quartiere. |
| Trovare venditori motivati | Filtra gli annunci con priceDropPercent e ordinali per ribasso. |
| Avvisi sui nuovi annunci | Salva la ricerca come task con Only new listings and price changes e pianificala ogni giorno. |
| Tempo sul mercato | Con il monitoraggio, gli annunci rimossi hanno firstSeenAt e removedAt. |
| Rendimento degli affitti | Esegui la stessa città per vendita e affitto e confronta il prezzo al metro quadro per zona. |
| Lead per agenzie | Conta gli annunci per agencyName con agencyPhone, oppure scarica il portafoglio di un'agenzia. |
| Immobili da ristrutturare | Filtra condition = Da ristrutturare e un price massimo. |
Come iniziare
- Clicca Try for free e accedi ad Apify.
- Apri immobiliare.it, imposta la ricerca e copia l'indirizzo dal browser.
- Incollalo in Immobiliare.it URLs e, per la prima prova, imposta Maximum results a
100. - Clicca Start, poi apri la scheda Output ed esporta in Excel, CSV, JSON o Google Sheets.
Quanto costa
Paghi per annuncio, senza abbonamento, proxy incluso: da $0,80 per 1.000 annunci con il piano Free fino a $0,40 con i piani a pagamento più alti. La scheda completa costa da $0,50 a $0,80 per 1.000 annunci in più. I prezzi aggiornati sono nella scheda Pricing e nella sezione Cost.
Domande frequenti
Posso scaricare tutti gli annunci di una città? Sì. Imposta Maximum results al totale della ricerca (lo trovi nel log). Non c'è il limite di 2.000 risultati.
Funziona per affitti, aste e nuove costruzioni? Sì, con qualsiasi URL di ricerca di immobiliare.it. Le ricerche disegnate sulla mappa non sono supportate: usa la ricerca per città, zona o provincia.
Serve un account o una chiave API? No. Serve solo un account Apify; il proxy è incluso.
È legale? L'Actor raccoglie dati pubblicamente visibili. Sei responsabile dell'uso che ne fai, inclusi i termini di Immobiliare.it e il GDPR, soprattutto per numeri di telefono e nomi degli agenti.
Support
Report problems or request features in the Issues tab. Include the run ID, the input and what you expected.
This Actor is not affiliated with or endorsed by Immobiliare.it or Immobiliare.it Insights. "Immobiliare.it" is a trademark of its owner. Questo Actor non è un prodotto di Immobiliare.it né di Immobiliare.it Insights.