Imovelweb Brazil Scraper avatar

Imovelweb Brazil Scraper

Pricing

from $1.30 / 1,000 results

Go to Apify Store
Imovelweb Brazil Scraper

Imovelweb Brazil Scraper

[💰 $1.3 / 1K] Extract real estate listings from Imovelweb Brazil — apartments, houses, land, and commercial for sale, rent, temporary stay, and new developments. Get price, beds, baths, area, address, GPS, photos, videos, amenities, seller/agency, and contact details.

Pricing

from $1.30 / 1,000 results

Rating

0.0

(0)

Developer

SolidCode

SolidCode

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

2

Monthly active users

3 days ago

Last modified

Share

Pull real estate listings from Imovelweb Brazil (imovelweb.com.br) at scale — asking price and condo fees, bedrooms, bathrooms and area in m², full-address and GPS coordinates, photo galleries, and advertiser contacts including WhatsApp. Search apartments, houses, land, and commercial property for sale, for rent, for temporary stay, or as new developments (lançamentos). Built for Brazilian real estate investors, agencies, proptech teams, and market researchers who need clean, structured listing data without copy-pasting from the site one card at a time.

Why This Scraper?

  • Four deal types in one actor — for sale (venda), for rent (aluguel), temporary stay (temporada), and new developments (lançamentos), switched with a single dropdown.
  • 14 property types — apartment, house, condo house, penthouse, flat, studio (kitnet), land, country house, farm, office, retail/shop, warehouse, whole building, or garage.
  • GPS coordinates on every listing — exact latitude and longitude, ready to map or geo-join, alongside street, neighborhood, city, state (UF), and CEP.
  • Owner-vs-agency advertiser filter — pull direct-owner listings only, real-estate-agency listings only, or both, and every row is tagged with which one it is.
  • Seven numeric range filters — minimum/maximum price in R$, minimum/maximum bedrooms, minimum bathrooms, minimum parking spaces, and minimum/maximum total area in m².
  • Paste a URL or build a search — drop in any imovelweb.com.br search or listing link and every filter is read straight from it, or build a search from scratch with plain dropdowns and number fields. The scraper handles both.
  • Full media on every row — photo gallery URLs plus video links and virtual-tour, video, and floor-plan availability flags.
  • Advertiser contacts included — agency or owner name, license, profile link and logo, phone, and WhatsApp number where the listing publishes them.
  • Flat one-row-per-property output — 40+ fields per listing in a single flat row that drops straight into Sheets, Excel, or a database, with no nested objects to untangle.

Use Cases

Market Research

  • Map inventory by city, neighborhood, or state across Brazil
  • Compare apartment vs. house pricing in the same district
  • Track new-development (lançamento) supply in growth corridors
  • Measure listing counts and median asking prices per neighborhood

Investment Analysis

  • Compute price per m² across neighborhoods using totalArea and usableArea
  • Benchmark asking prices against condo fees (condomínio) and IPTU
  • Identify undervalued listings within a tight price and area band
  • Build comparables (comps) sets for a target CEP or district

Lead Generation

  • Build advertiser contact lists with agency name, phone, and WhatsApp
  • Isolate direct-owner listings to reach sellers without an intermediary
  • Target real-estate agencies by volume of active listings
  • Feed fresh listings into a CRM as they appear

Proptech & Data Enrichment

  • Power a property portal or valuation model with live Brazilian inventory
  • Enrich an existing property database with coordinates and media
  • Feed dashboards that track supply, pricing, and days-on-market
  • Trigger alerts when new listings match a saved search

Price Benchmarking

  • Compare rent (aluguel) vs. temporary-stay (temporada) pricing per area
  • Track asking-price changes for a fixed neighborhood over time
  • Segment the market by property type, room count, and area

Getting Started

Search by Location

The simplest way to start — one city and a result cap:

{
"location": ["São Paulo SP"],
"maxResults": 100
}

For-sale apartments in a price and room band, agencies only:

{
"location": ["Pinheiros São Paulo"],
"dealType": "venda",
"propertyTypes": ["apartamento"],
"publisherType": "agency",
"minPrice": 800000,
"maxPrice": 1500000,
"minBedrooms": 2,
"minArea": 70,
"maxResults": 100
}

Paste Imovelweb URLs

Already built a search on the site? Paste the link and every filter is read from it:

{
"startUrls": [
"https://www.imovelweb.com.br/apartamentos-venda-sao-paulo-sp.html",
"https://www.imovelweb.com.br/casas-aluguel-rio-de-janeiro-rj.html"
],
"maxResults": 250
}

Each URL returns roughly its first ~100-120 listings, so this two-URL run collects up to ~240. To go deeper, split each search into narrower ones (by neighborhood, price band, or property type) and add them here — each added search returns its own ~120-listing batch.

Rentals across multiple cities with the full filter set:

{
"location": ["Belo Horizonte MG", "Copacabana Rio de Janeiro"],
"dealType": "aluguel",
"propertyTypes": ["apartamento", "cobertura", "flat"],
"publisherType": "all",
"minPrice": 2000,
"maxPrice": 8000,
"minBedrooms": 2,
"maxBedrooms": 4,
"minBathrooms": 2,
"minParking": 1,
"minArea": 60,
"maxArea": 200,
"maxResults": 300
}

This run fans out across two cities and three property types (six searches), each returning up to ~120 listings, so it can reach several hundred rows in one go.

Input Reference

What to Scrape

ParameterTypeDefaultDescription
startUrlsstring[]["https://www.imovelweb.com.br/apartamentos-venda-sao-paulo-sp.html"]Paste one or more imovelweb.com.br search-result or individual listing URLs. Every filter is read straight from each URL, so the Search Filters below are ignored for these.
locationstring[][]Where to search — a Brazilian city, neighborhood, or state, e.g. "São Paulo SP", "Copacabana Rio de Janeiro", or "Belo Horizonte MG". Each location is searched separately.

Search Filters

Apply only when startUrls is empty.

ParameterTypeDefaultDescription
dealTypeselectFor saleFor sale, For rent, Temporary stay, or New developments (lançamentos).
propertyTypesmulti-select[] (all)One or more of 14 types: Apartment, House, Condo house, Penthouse, Flat, Studio (Kitnet), Land / lot, Country house, Farm, Office, Retail / shop, Warehouse, Whole building, Garage.
publisherTypeselectAll advertisersAll advertisers, Real estate agencies only, or Direct owners only.

Price, Rooms & Size

ParameterTypeDefaultDescription
minPriceintegerOnly listings at or above this price, in Brazilian Reais (R$).
maxPriceintegerOnly listings at or below this price, in Brazilian Reais (R$).
minBedroomsintegerMinimum number of bedrooms.
maxBedroomsintegerMaximum number of bedrooms.
minBathroomsintegerMinimum number of bathrooms.
minParkingintegerMinimum number of parking spaces.
minAreaintegerMinimum total area, in square meters (m²).
maxAreaintegerMaximum total area, in square meters (m²).

Options

ParameterTypeDefaultDescription
maxResultsinteger100Maximum listings to collect across all URLs and locations. Each individual search returns roughly its first ~100-120 listings, so add more locations or URLs to reach higher totals. Set to 0 for unlimited (bounded by how deep each search can be read).

Output

Each listing is one flat row. Here is a representative result:

{
"id": "3022824235",
"postingCode": "3022824235",
"url": "https://www.imovelweb.com.br/propriedades/clacod-3022824235.html",
"title": "Apartamento à Venda - Pinheiros, 2 Quartos, 118 m²",
"description": "Excelente apartamento em Pinheiros, próximo ao metrô, com 2 dormitórios, sala ampla, varanda e 1 vaga de garagem...",
"dealType": "Venda",
"propertyType": "Apartamento",
"postingType": "PROPERTY",
"price": 1200000,
"currency": "BRL",
"priceText": "R$ 1.200.000",
"condoFee": 950,
"iptu": 320,
"bedrooms": 2,
"bathrooms": 2,
"suites": 1,
"parkingSpaces": 1,
"totalArea": 118,
"usableArea": 73,
"age": "10",
"street": "Rua dos Pinheiros",
"neighborhood": "Pinheiros",
"city": "São Paulo",
"state": "SP",
"postalCode": "05422-001",
"latitude": -23.5580084,
"longitude": -46.6755559,
"images": [
"https://imgbr.imovelwebcdn.com/avisos/1/30/22/82/42/35/1200x1200/example1.jpg"
],
"videos": [],
"amenities": ["Piscina", "Academia", "Portaria 24h", "Varanda"],
"hasVideos": false,
"hasTour": false,
"hasPlans": true,
"publishedAt": "2026-05-28",
"updatedAt": "2026-07-10",
"isFeatured": true,
"publisherType": "agency",
"seller": {
"id": 12345,
"name": "ZIMMERMANN IMÓVEIS",
"license": "CRECI 12345-J",
"url": "https://www.imovelweb.com.br/imobiliarias/zimmermann-imoveis.html",
"logo": "https://imgbr.imovelwebcdn.com/empresas/logo.jpg"
},
"phones": ["5511999998888"],
"whatsapp": "5511999998888"
}

Core Fields

FieldTypeDescription
idstringStable Imovelweb listing/posting ID
postingCodestringListing reference code
urlstringCanonical listing URL
titlestringListing title
descriptionstringListing description text
dealTypestringDeal type: Venda, Aluguel, Temporada, or Lançamento
propertyTypestringApartamento, Casa, Terreno, etc.
postingTypestringPROPERTY or DEVELOPMENT (new development)
isFeaturedbooleanWhether the listing is sponsored/featured
publishedAtstringPublication date
updatedAtstringLast-updated date

Price & Costs

FieldTypeDescription
pricenumberNumeric price
currencystringCurrency code (e.g. BRL)
priceTextstringPrice exactly as shown on the site
condoFeenumberMonthly condominium fee (condomínio) if present
iptunumberIPTU property tax if present

Rooms & Size

FieldTypeDescription
bedroomsintegerNumber of bedrooms
bathroomsintegerNumber of bathrooms
suitesintegerNumber of en-suite bedrooms
parkingSpacesintegerNumber of parking spaces
totalAreanumberTotal area (m²)
usableAreanumberUsable area (m²)
agestringProperty age where published

Address & Location

FieldTypeDescription
streetstringStreet/address label
neighborhoodstringNeighborhood (bairro)
citystringCity
statestringState (UF)
postalCodestringCEP if present
latitudenumberLatitude
longitudenumberLongitude

Media & Amenities

FieldTypeDescription
imagesstring[]Photo gallery URLs (up to 8 per search listing)
videosstring[]Video URLs where present
amenitiesstring[]Amenity and feature labels (e.g. Piscina, Academia)
hasVideosbooleanWhether the listing has video
hasTourbooleanWhether the listing has a virtual tour
hasPlansbooleanWhether the listing has floor plans

Advertiser & Contact

FieldTypeDescription
publisherTypestringagency or owner
sellerobjectAdvertiser: name, license, id, profile URL, logo
phonesstring[]Contact phone number(s)
whatsappstringWhatsApp number where the listing publishes it

Tips for Best Results

  • Start small — set maxResults to 50-100 on your first run to confirm the data matches your needs, then scale up.
  • Split searches to go deeper — each search returns roughly its first ~100-120 listings, because Imovelweb limits how deep an automated search can page. A single whole-city query therefore surfaces about 120 listings, not the whole market. To gather more, split into narrower searches — by neighborhood (bairro), price band, or property type — and run them together; each one returns its own ~120-listing batch, so ten tight searches collect roughly ten times what one broad query returns.
  • Paste a URL when you need a filter we don't list — any filter you can set on the site (recency, in-unit features, transit proximity) is honored when you paste the finished search URL into startUrls.
  • Use the advertiser filter for cleaner leads — set publisherType to Direct owners only to reach sellers directly, or Real estate agencies only to build an agency contact list.
  • Combine locations in one run — list several cities or neighborhoods in location and each is searched separately, then merged into one deduplicated dataset.
  • Filter by property type to cut noise — selecting only the types you care about avoids paying for listings you'll discard later.
  • Compare totalArea with usableArea — the gap between them reveals balcony/common-area loading and sharpens any price-per-m² comparison.

Pricing

From $1.30 per 1,000 results — a flat pay-per-result rate that undercuts other Imovelweb actors on the market. No compute or time-based charges — you pay per result, plus a small fixed per-run start fee. Bronze, Silver, and Gold subscribers pay progressively less; the table below shows total cost at each discount tier.

ResultsNo discountBronzeSilverGold
100$0.16$0.15$0.14$0.13
1,000$1.55$1.45$1.40$1.30
10,000$15.50$14.50$14.00$13.00
100,000$155$145$140$130

A "result" is any property row in the output dataset. Platform fees (compute, storage) are additional and depend on your Apify plan.

Integrations

Export data in JSON, CSV, Excel, XML, or RSS. Connect to 1,500+ apps via:

  • Zapier / Make / n8n — Workflow automation
  • Google Sheets — Direct spreadsheet export
  • Slack / Email — Notifications on new results
  • Webhooks — Trigger custom APIs on run completion
  • Apify API — Full programmatic access

This actor is designed for legitimate real estate research, market analysis, and lead generation. You are responsible for complying with applicable laws and Imovelweb's Terms of Service. Do not use extracted data for spam, harassment, or any unlawful purpose, and handle any personal contact data in line with Brazil's LGPD and other applicable privacy regulations.