Fotocasa Scraper - Spain Real Estate avatar

Fotocasa Scraper - Spain Real Estate

Pricing

from $4.00 / 1,000 property scrapeds

Go to Apify Store
Fotocasa Scraper - Spain Real Estate

Fotocasa Scraper - Spain Real Estate

Scrape Fotocasa — Spain's top real estate portal. Homes for sale or rent with prices, m², rooms, energy rating, photos, geo, full description & agency leads (name, phone, profile). Filter by city, price, size. Monitor new listings & price drops. Export JSON, CSV, Excel.

Pricing

from $4.00 / 1,000 property scrapeds

Rating

0.0

(0)

Developer

Scrape Sage

Scrape Sage

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

Fotocasa Scraper — Spain Real Estate Listings, Prices, Energy Ratings & Agency Leads

Extract complete data from Fotocasa — Spain's leading real estate portal. Get homes for sale or for rent with prices, price per m², bedrooms, bathrooms, surface, energy certificate, full address with geo, every photo, the full description, and the advertising agency's name, profile and phone — all in one clean dataset.

No login, no cookies, no browser — fast, reliable extraction by city, filter, or pasted URL, with a built-in monitor mode to track new listings and price drops.

Why this Fotocasa scraper?

Generic "paste-a-URL" scrapers grab a handful of visible fields. This actor reads Fotocasa's own structured data and opens each listing's detail page, so it ships the richest dataset in the category — including the energy performance certificate and decoded property attributes that thin scrapers skip.

DataGeneric scrapersThis actor
Price, price per m², price dropspartial
Bedrooms, bathrooms, surface (m²)partial
Full address: neighborhood, district, city, province, zippartial
Geo coordinates (lat/lng)
Energy certificate (rating, consumption, CO₂ emissions)
Decoded features: orientation, condition, age, floor
Amenities (parking, lift, pool, terrace, A/C, heating…)partial
Full description + all photos (not just the cover)partial
Advertiser name, type, phone, profile, website
Deduplicated agency leads with lead score
Monitor mode (only new listings & price changes)

Use cases

  • Real estate market research & comps — pull every listing in a city or neighborhood with price per m², surface, energy rating and listing age to build comparables and price models.
  • Lead generation for proptech & services — each advertiser is a ready B2B lead: agency name, phone, Fotocasa profile and website, with active-listing counts and a 0–100 lead score. Perfect for CRM, mortgage, insurance, home-staging, photography and portal-tool vendors.
  • Investment & deal sourcing — filter by price, size and advertiser, and use monitor mode to get alerted the moment a new listing or a price drop appears.
  • Portal & app data — power your own search, alerts or valuation product with structured, geocoded Spanish property data.
  • Energy & sustainability analysis — every detail page carries the official energy-efficiency rating and CO₂ emissions for energy-performance studies.

How to use

  1. Sign up for Apify — the free plan is enough to try this actor.
  2. Open the Fotocasa Scraper, type a Location (e.g. Madrid, Barcelona, Valencia, Marbella), choose For sale / For rent and a Property type, and add any filters you like.
  3. Click Start and watch results stream into the dataset table.
  4. Export as JSON, CSV, Excel, XML, or RSS — or pull results programmatically via the Apify API.

Prefer pixel-perfect control? Apply every filter on fotocasa.es and paste the resulting URL into Start URLs — the scraper paginates it for you.

Input

{
"location": "Barcelona",
"transactionType": "buy",
"propertyType": "homes",
"minPrice": 150000,
"maxPrice": 700000,
"minRooms": 2,
"includePropertyDetails": true,
"includeAgencyLeads": true,
"maxResults": 100
}
  • location / locations — a Spanish city or area (Madrid, Barcelona, Valencia, Sevilla, Marbella…). Major markets resolve automatically; you can also pass a Fotocasa location slug (madrid-capital).
  • transactionTypebuy, rent, rent-to-own, share, or transfer.
  • propertyTypehomes (flats + houses), new-homes, apartments, houses, penthouses, studios, offices, commercial-premises, land, and more.
  • searchUrls (optional) — paste any Fotocasa search/listing URL; detail (/d) URLs are scraped as single properties.
  • propertyUrls (optional) — scrape specific listings by their detail URL.
  • FiltersminPrice/maxPrice, minRooms, minBathrooms, minSurface/maxSurface, onlyNewConstruction, onlyWithPhoto, onlyPriceReduced, advertiserType (agencies / private), maxAgeDays.
  • includePropertyDetails (default true) — open each listing for the energy certificate, decoded features and full photo set.
  • includeAgencyLeads (default true) — also output deduplicated advertiser leads.
  • monitorMode + monitorKey — output only new listings and price changes across runs.
  • maxResults / maxAgencyLeads — caps per run.
  • proxyConfiguration — defaults to Apify Residential, country ES (required for Fotocasa).

Output

Two record types land in the same dataset (use the Properties and Agency leads dataset views, or filter on the type field).

A property record (type: "property"):

{
"type": "property",
"id": 189463519,
"url": "https://www.fotocasa.es/es/comprar/vivienda/barcelona-capital/.../189463519/d",
"transactionType": "For sale",
"propertyType": "Flat",
"title": "Attic, 3 bed in Fort Pienc",
"price": 520000,
"currency": "EUR",
"pricePerSqm": 6500,
"previousPrice": null,
"priceReduced": false,
"rooms": 3,
"bathrooms": 1,
"surface": 80,
"neighborhood": "Fort Pienc",
"district": "Eixample",
"city": "Barcelona",
"province": "Barcelona",
"zipCode": "08013",
"latitude": 41.3984,
"longitude": 2.1812,
"amenities": ["Air conditioning", "Heating", "Elevator", "Furnished"],
"energyRating": "E",
"energyConsumption": 142.0,
"emissionsRating": "E",
"emissions": 30,
"orientation": "South",
"conservationState": "Good",
"antiquity": "Between 30 And 50 Years",
"floor": "6th Floor",
"description": "Piso exterior y muy luminoso…",
"images": ["https://static.fotocasa.es/images/ads/…?rule=original", "…"],
"imageCount": 27,
"listedDaysAgo": 12,
"publishedAt": "2026-06-07T10:21:00.000Z",
"advertiserType": "professional",
"agencyName": "CUATRO CASAS INMOBILIARIA",
"agencyUrl": "https://www.fotocasa.es/es/inmobiliaria-cuatro-casas/...",
"phone": "+34932651778",
"scrapedAt": "2026-06-19T22:34:00.000Z"
}

An agency lead record (type: "agencyLead") carries agencyName, advertiserType, phone, agencyUrl, agencyWebsite, activeListingCount, cities, neighborhoods, propertyTypes, minPrice/maxPrice, sampleListings and a 0–100 leadScore.

What to expect (field coverage)

Fotocasa is advertiser-entered data, so a few fields are present only when the agency filled them in. Verified across Madrid and Barcelona, with full details enabled you can typically expect:

Field groupCoverage
Price, price per m², rooms, baths, surface~100%
Address (neighborhood/city/province/zip) + geo~100%
Energy certificate, orientation, floor, condition, age~95–100% (from the detail page)
Amenities, full description, all photos~100%
Advertiser name, type, phone, profile~100%
Price drop / previous priceonly when the advertiser dropped the price

A blank field means the advertiser didn't publish it — not that scraping failed. Nothing is dropped, so you always get the richest dataset available.

Automate & schedule

Run this actor on autopilot and pull results into your own stack:

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'MY_APIFY_TOKEN' });
const run = await client.actor('scrapesage/fotocasa-scraper').call({
location: 'Barcelona',
transactionType: 'buy',
propertyType: 'homes',
maxResults: 100,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(`Got ${items.length} records`);

Integrate with any app

Connect the dataset to 5,000+ apps — no code required:

  • Make — multi-step automation scenarios.
  • Zapier — push new property leads straight into your CRM.
  • Slack — get notified when a monitored search adds listings or drops prices.
  • Google Drive / Sheets — auto-export every run to a spreadsheet.
  • Airbyte — pipe results into your data warehouse.
  • GitHub — trigger runs from commits or releases.

Use with AI assistants (MCP)

The output is clean, LLM-ready JSON. Call this actor from Claude, ChatGPT, or any agent framework through the Apify MCP server — ask your assistant to "find every 2-bed flat under €400k in Valencia with its energy rating and the agency's phone" and let it run the scraper for you.

Agent-ready: autonomous payments (x402 & Skyfire)

This actor is agent-ready — AI agents can discover it, run it, and pay for it autonomously, with no Apify account and no human in the loop. It uses pay-per-event pricing and limited permissions, so it qualifies for Apify's agentic-payment standards:

  • x402 — an open, HTTP-native payment protocol. Agents pay per run in USDC on the Base network directly through the Apify MCP server — no account, no API key.
  • Skyfire — agent-to-service payments for fully autonomous AI-agent workflows.

Building an AI agent, MCP tool, or autonomous data pipeline? This scraper is ready to plug in and pay as it goes.

More scrapers from scrapesage

Build a complete global real estate & lead-gen stack — one portal per market:

Tips

  • Focus your search for a clean, dense table — set a location plus price/size filters. Use Start URLs when you've already dialed in a search on fotocasa.es.
  • Full details on is the difference between a listing and an investable record — it adds the energy certificate, orientation, floor, condition and the complete photo set (one fast request per listing).
  • Agency leads: keep includeAgencyLeads on to turn every search into a prospect list, ranked by lead score.
  • Recurring monitoring: combine monitor mode with a Schedule to track a market and only pull new listings and price drops — no duplicates.

FAQ

How do I scrape a specific city or area? Type it in Location (Madrid, Barcelona, Valencia, Marbella…). For anything not auto-resolved, pass a Fotocasa location slug (madrid-capital) or paste a search URL.

Does it need the Fotocasa API or a key? No. This actor reads Fotocasa's public, server-rendered data and detail pages — no key, login, or browser needed.

Can I get for-rent listings? Yes — set transactionType to rent (or rent-to-own, share, transfer). Rental prices are monthly.

Can I export to Google Sheets, CSV, or Excel? Yes — one click in the dataset view, or automatically on every run via the Google Drive integration.

How do I monitor a market for new listings or price drops? Turn on monitor mode and create a Schedule (e.g. daily). The actor remembers what it has seen and outputs only new listings and price changes — add a webhook or Zapier zap to push them into your CRM.

Why residential proxy? Fotocasa serves its data to Spanish residential IPs. The default (Apify Residential, country ES) is set for you and is strongly recommended.

A field is empty — why? Some advertisers don't publish a price drop, an energy rating or a website. Fields are blank only when the advertiser didn't provide that data — never because the scraper skipped it.

Is scraping Fotocasa legal? This actor collects publicly available data only. You're responsible for using the data in compliance with applicable laws (e.g. GDPR for personal data) and Fotocasa's terms.

Need help?

Open an issue on the actor's Issues tab, or visit the Apify help center. Feature requests are welcome — this actor is actively maintained.