Chaves na Mão Scraper 💰$0.90/1K Brazil Real Estate + Phones
Pricing
from $0.65 / 1,000 listings
Chaves na Mão Scraper 💰$0.90/1K Brazil Real Estate + Phones
Chaves na Mão scraper for Brazil property listings for sale, rent and new developments. Search a city, neighbourhood, street or coordinates, or paste URLs. Price, condo fee, IPTU, rooms, area, address, GPS, photos, amenities, plus agent phone, WhatsApp and CRECI. Past the 1,500 cap.
Pricing
from $0.65 / 1,000 listings
Rating
0.0
(0)
Developer
Muhamed Didovic
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
1
Monthly active users
14 days ago
Last modified
Categories
Features
Share
Chaves na Mão Scraper: Brazil Real Estate with Agent Phones
Extract property listings for sale, for rent and new developments (lançamentos) from ChavesNaMao.com.br, one of Brazil's large real estate portals with over a million homes, offices and plots. Type a city, neighbourhood, zone or street, give coordinates, or paste any Chaves na Mão search or listing URL. You get one clean row per property: price, condo fee, IPTU, rooms, area, address, GPS, description, features, condominium facilities, nearby places and photos, plus the advertiser's name, mobile and landline phones, WhatsApp, CRECI and Google rating. Big cities go past the website's 1,500-result limit. No login or API key needed, $0.90 per 1,000 listings.
| Input | Rows emitted |
|---|---|
Location ("Pinheiros, São Paulo") | One row per listing in that place, for sale or for rent |
Coordinates (-23.55, -46.63) | One row per listing in the nearest city |
Search URL (/apartamentos-para-alugar/sp-sao-paulo/) | One row per listing in the search, its filters kept |
Listing URL (/imovel/.../id-43457908/) | One row for that listing |

Why use this scraper
- Advertiser contacts on every row. Agency or broker name, mobile, landline and commercial phones, the numbers that take WhatsApp, CRECI licence number, verified badge, profile page and Google rating with review count. Owners selling directly are marked
advertiserType: "owner". - Past the 1,500-result limit. Chaves na Mão stops a search at 1,500 results. São Paulo alone lists over 960,000 homes for sale. The actor splits big searches into price ranges automatically, so
maxItems: 0returns the whole search. - No URL needed. Type
São Paulo,Pinheiros, São Paulo,Zona Sul, Rio de Janeiro,Avenida Paulista, a state code (SP) orBrasil. Or give latitude and longitude. - Every website filter. Sale, rent or both in one search, all 18 property types, price, area, bedrooms, bathrooms, parking, 32 amenities (pool, balcony, gym, furnished…), close to public transport, parks or a shopping centre, pets allowed, owner only or agencies only, and six sort orders including by area.
- New developments. Launches on plan, under construction or ready to move in, with their price, bedroom and area ranges and construction status.
- Costs broken out. Asking price or monthly rent, condo fee (condomínio) and IPTU as separate numbers in R$, plus price per m² (by plot size for land and farms).
- Location detail. Street and number when the advertiser publishes them, neighbourhood, zone, city, state, CEP, coordinates (with a flag saying whether they mark the address or the neighbourhood) and nearby bus stops, stations, schools, hospitals and parks with distances.
- Change tracking for monitoring. Give a scheduled search a project name and every row comes back marked
new,changedorunchangedsince the last run, with the previous price. Listings that disappeared from Chaves na Mão come back once asremoved. Turn on Only new or changed and you get, and pay for, only what moved. - Advertiser list. Every run also saves one record per agency, broker or owner in the results, with phones, WhatsApp, CRECI, Google rating, how many listings they have for sale and rent, price range and cities. JSON and CSV, free.
- All the photos. Search results carry each listing's first 5 photos in full size. One toggle adds every photo, at no extra charge.
Supported inputs
| Type | Example |
|---|---|
| 📍 City | São Paulo · Campinas · Curitiba |
| 📍 Neighbourhood or zone | Pinheiros, São Paulo · Copacabana, Rio de Janeiro · Zona Sul, Rio de Janeiro |
| 📍 Street | Avenida Paulista |
| 📍 State or country | SP · RJ · Brasil |
| 🧭 Coordinates | latitude: -22.9068, longitude: -43.1729 |
| 🔍 Search URL | https://www.chavesnamao.com.br/apartamentos-para-alugar/sp-sao-paulo/pinheiros/ |
| 🔍 Search URL with filters | https://www.chavesnamao.com.br/casas-para-alugar/pr-curitiba/?filtro=pmin:2000,pmax:5000 |
| 🏠 Single listing | https://www.chavesnamao.com.br/imovel/apartamento-a-venda-1-quarto-com-garagem-sp-sao-paulo-bela-vista-RS580000/id-43457908/ |
Use cases
- Lead lists for real estate services: agencies and brokers active in a neighbourhood, with phones, WhatsApp and CRECI, for mortgage brokers, photographers, portals and CRM vendors.
- Owner-direct listings: filter
listedBy: "owner"to find homes sold or rented without an agency. - Market research: asking prices, rents, condo fees and price per m² by city, zone and neighbourhood.
- Price monitoring: schedule a search with a change-tracking project and receive only new listings and price changes each day.
- Data for models: geocoded listings with rooms, area, features and nearby places for valuation and recommendation models.
How it works
- A location is matched against Chaves na Mão's own list of cities, zones, neighbourhoods and streets. When a name exists in several places, the one with the most listings wins, and a city or state after a comma picks another. Coordinates go to the nearest city.
- Your filters are applied the way the website applies them. A pasted search URL keeps its own filters.
- When a search holds more than 1,500 listings, the actor splits it by price until each part fits, and reads each part in turn.
- Rows are deduplicated by listing ID and saved to the dataset. With All photos on, each listing's full photo list is added.
Input configuration
| Field | Type | Default | Notes |
|---|---|---|---|
locations | array | São Paulo | City, Neighbourhood, City, Zone, City, street, state code or Brasil |
placeType | string | any | Force city, zone, neighborhood, street or state matching |
latitude, longitude | number | none | Searches the nearest city |
startUrls | array | none | Search and/or listing URLs, any mix |
dealType | string | sale | sale, rent, any (both) or new (new developments), for locations and coordinates |
constructionStages | array | all | With new: on_plan, under_construction, ready |
propertyTypes | array | all | apartment, house, condo_house, studio, flat, loft, penthouse, country_house, land, condo_land, office, commercial_house, shop, warehouse, commercial_land, building, garage, farm |
minPrice, maxPrice | integer | none | Asking price for sales, monthly rent for rentals, in R$ |
minArea, maxArea | integer | none | m² |
minBedrooms, minBathrooms, minParkingSpaces | integer | none | 2 means 2 or more |
listedBy | string | all | all, owner (direto com o proprietário) or agency. Not used for new developments |
amenities | array | none | pool, gym, balcony, furnished, elevator, air_conditioning, doorman and 25 more |
nearby | array | none | public_transport, parks, shopping |
petFriendly | boolean | false | Only listings that accept pets |
sortBy | string | relevance | relevance, newest, lowest_price, highest_price, smallest_area, largest_area |
maxItems | integer | 5,000 | Listings for the whole run. 0 = everything the searches match |
maxItemsPerSearch | integer | none | Cap for each location or search URL on its own |
trackChangesProject | string | none | Name for change tracking between runs; rows get changeType, previousPrice, firstSeenAt |
onlyNewOrChanged | boolean | false | With a project: leave unchanged listings out (not charged) |
includeRemoved | boolean | true | With a project: report listings that left Chaves na Mão as removed rows |
saveAdvertisers | boolean | true | Save the advertiser list (ADVERTISERS, ADVERTISERS.csv) to the run's key-value store |
includeAllPhotos | boolean | false | Every photo instead of the first 5. Slower, no extra charge |
includeRawData | boolean | false | Adds raw: the listing exactly as the website returns it |
maxConcurrency | integer | 4 | Result pages read in parallel |
proxy | object | none | Leave empty. Only your own proxy URLs are used; Apify Proxy is ignored |
Example input: owner-direct apartments with a pool
{"locations": ["São Paulo"],"dealType": "sale","propertyTypes": ["apartment"],"listedBy": "owner","amenities": ["pool"],"maxPrice": 900000,"maxItems": 200}
Example input: rentals in two neighbourhoods, newest first
{"locations": ["Pinheiros, São Paulo", "Copacabana, Rio de Janeiro"],"dealType": "rent","minBedrooms": 2,"sortBy": "newest","includeAllPhotos": true,"maxItems": 500}
Example input: new developments under construction or ready
{"locations": ["São Paulo"],"dealType": "new","constructionStages": ["under_construction", "ready"],"propertyTypes": ["apartment"],"maxItems": 100}
Example input: daily monitoring, only what changed
{"locations": ["Pinheiros, São Paulo", "Vila Mariana, São Paulo"],"dealType": "rent","maxItems": 0,"maxItemsPerSearch": 3000,"trackChangesProject": "sp-rentals-daily","onlyNewOrChanged": true}
Example input: search and listing URLs
{"startUrls": ["https://www.chavesnamao.com.br/casas-para-alugar/pr-curitiba/?filtro=pmin:2000,pmax:5000","https://www.chavesnamao.com.br/imovel/apartamento-a-venda-1-quarto-com-garagem-sp-sao-paulo-bela-vista-RS580000/id-43457908/"],"maxItems": 300}
Output
One row per listing. Sample (phone numbers masked, arrays shortened):
{"listingId": "27313295","url": "https://www.chavesnamao.com.br/imovel/apartamento-para-alugar-2-quartos-com-garagem-sp-sao-paulo-pinheiros-106m2-RS22000/id-27313295/","title": "Apartamento Residencial para venda e locação, Pinheiros, São Paulo - AP0206.","transaction": "rent","propertyType": "Apartamento","category": "residential","price": 22000,"priceText": "R$ 22.000","condoFee": 1869,"iptu": 500,"currency": "BRL","bedrooms": 2,"bathrooms": 3,"suites": 2,"parkingSpaces": 2,"usableAreaM2": 106,"totalAreaM2": 106,"neighborhood": "Pinheiros","zone": "Zona Oeste","city": "São Paulo","state": "SP","latitude": -23.5635787,"longitude": -46.6916068,"coordinatesPrecision": "address","description": "Apartamento para venda e locação em São Paulo/SP…","features": ["Área de serviço", "Cozinha"],"condoFeatures": ["Piscina", "Playground", "Salão de festas", "Sauna"],"nearbyPlaces": [{ "type": "bus_stop", "name": "Avenida Doutor Arnaldo", "distanceMeters": 30 }],"photoCount": 20,"photos": ["https://www.chavesnamao.com.br/imn/0000x0000/N/80/imoveis/236284/27313295/sp-sao-paulo-pinheiros-rua-oscar-freire-apartamento-para-alugar-2-quartos-676782fa-1.jpg"],"petFriendly": false,"acceptsTrade": true,"advertiserReference": "AP0206","advertiserName": "GATO IMÓVEIS","advertiserType": "agency","advertiserId": "236284","advertiserUrl": "https://www.chavesnamao.com.br/imobiliaria/gato-imoveis/id-236284/","advertiserCreci": "25171","advertiserVerified": false,"advertiserMobilePhone": "(11) 4407-XXXX","advertiserLandlinePhone": "(11) 94140-XXXX","advertiserWhatsapp": ["(11) 94140-XXXX"],"advertiserGoogleRating": 4.7,"advertiserGoogleReviews": 182,"contactOptions": ["message", "phone", "whatsapp", "visit", "video_visit"],"createdAt": "2024-12-20T12:29:52.000","updatedAt": "2026-06-04T00:17:50.000","scrapedAt": "2026-10-31T12:01:02.869Z"}
Key output fields
| Field | Description |
|---|---|
listingId, url, title | Chaves na Mão listing ID, page and headline |
transaction | sale or rent |
propertyType, propertyTypeId, category | Type as the website names it, its ID, residential or commercial |
price, priceText | Asking price or monthly rent in R$, as a number and as displayed |
priceMax | Top of the price range for new developments sold as a range |
priceHidden | True when the advertiser hides the price ("Confira") |
pricePerM2 | Price divided by usable area, or by plot size for land, farms and country houses |
isNewDevelopment, constructionStatus, constructionStatusText | Launches: on_plan, under_construction or ready |
condoFee, iptu | Condomínio and IPTU in R$ |
bedrooms, bathrooms, suites, parkingSpaces, commercialRooms | Rooms and parking |
bedroomsMax, bathroomsMax, suitesMax, parkingSpacesMax | Top of the range when a development offers several unit sizes |
usableAreaM2, totalAreaM2, usableAreaM2Max, totalAreaM2Max | Usable and total area, with the range top for developments |
street, streetNumber, addressComplement | Published only when the advertiser shows the address |
neighborhood, zone, city, state, zipCode | Location, CEP when published |
latitude, longitude, coordinatesPrecision | address = the listing's own point, neighborhood = centre of the neighbourhood |
googleMapsUrl | Google Maps link to those coordinates |
description | Full text with line breaks |
features, condoFeatures | Unit features and condominium facilities |
nearbyPlaces | Bus stops, metro stations, schools, hospitals, parks, malls, supermarkets, pharmacies, gyms and restaurants, with distance in metres |
photos, photoCount | Full-size photo URLs; photoCount is the listing's total |
videoUrl, virtualTourUrl | When the listing has them |
advertiserName, advertiserType | agency, broker, developer, owner or other |
advertiserMobilePhone, advertiserLandlinePhone, advertiserCommercialPhone, advertiserWhatsapp | Phones as published on the listing |
advertiserCreci, advertiserVerified, advertiserUrl, advertiserLogo | Licence, badge, profile page, logo |
advertiserGoogleRating, advertiserGoogleReviews, advertiserGoogleMapsUrl | The agency's Google rating, review count and Maps page, when the website shows them |
advertiserSince | Date the advertiser joined Chaves na Mão |
advertiserReference | The advertiser's own reference code |
contactOptions | Ways the listing accepts contact |
createdAt, updatedAt, daysOnMarket | Listing dates and days since it was first published |
active, highlighted | Listing flags |
changeType, previousPrice, firstSeenAt, lastSeenAt | With a change-tracking project: new, changed, unchanged or removed since the earlier runs, the earlier price when it moved, the date the listing was first seen, and for removed listings the last day it was seen |
Advertiser list
Next to the dataset, each run saves ADVERTISERS (JSON) and ADVERTISERS.csv in its key-value store (the run's Output tab links both): one record per advertiser in the results with advertiserName, advertiserType, advertiserCreci, mobilePhone, landlinePhone, commercialPhone, whatsapp, googleRating, googleReviews, listingsInResults, forSale, forRent, newDevelopments, minPrice, maxPrice, cities, neighborhoods, propertyTypes, advertiserUrl and a sample listing. It is not charged.
| raw | With includeRawData: the original record |
Pricing
| Event | When | Price |
|---|---|---|
| Apify plan | Per listing | Per 1,000 listings |
| --- | --- | --- |
| Free | $0.0009 ($0.001 from 15 November 2026) | $0.90 ($1.00 from 15 November 2026) |
| Bronze | $0.0009 | $0.90 |
| Silver | $0.00075 | $0.75 |
| Gold, Platinum, Diamond | $0.00065 | $0.65 |
Plus one actor start per run: $0.0009 per GB of run memory. All photos, advertiser contacts and change tracking are included in the listing price. Unchanged listings left out by Only new or changed are not charged; a removed row is charged as a listing. The advertiser list is free.
Free tier
| Free Apify account | |
|---|---|
| Listings per run | up to 100 |
| Searches per run | 1 (the first URL or location) |
Enough to check the fields against your own search. Paid plans lift both caps.
FAQ
Do I need a proxy? No. The default works out of the box and retries failed requests automatically, at no extra cost to you. The proxy field takes your own proxy URLs if you prefer; Apify Proxy is not used.
What do I type in Locations? A city (Belo Horizonte), a neighbourhood or zone with its city (Savassi, Belo Horizonte, Zona Norte, Rio de Janeiro), a street (Avenida Paulista), a state code (MG) or Brasil. Accents and capitals do not matter. If a name exists in several places, the one with the most listings is used: Pinheiros alone is the São Paulo neighbourhood, and Pinheiros, ES is the city in Espírito Santo. The log shows which place each location matched.
How long does a run take? Measured on Apify on 31 October 2026: 2,000 São Paulo listings in 38 seconds and 3,000 Rio de Janeiro rentals in 53 seconds. All photos adds one request per listing and slows a run down.
How do I get every listing in a city? Type the city and set maxItems to 0. The actor splits the search into price ranges that each fit under the website's 1,500-result limit. Listings without an asking price are picked up from the first 1,500 of the unsplit search.
How do I get only new listings and price changes every day? Schedule the actor with a trackChangesProject name and onlyNewOrChanged: true. The first run returns everything as new; each later run returns listings that appeared or whose price, fees, title, size, photos or construction stage changed, with previousPrice filled when the price moved, plus a removed row for each listing Chaves na Mão no longer has. Removed listings are only checked when a search is read to the end, so set maxItems to 0 (or high enough) on monitoring runs. The project's memory is kept in a key-value store named chavesnamao-change-tracking in your own Apify account.
Why does a narrow search return fewer listings than the website shows? When a search matches few listings, the website pads the page with "similar" listings that do not match your filters. The actor keeps only the exact matches.
Why is the street empty on some listings? The advertiser chose not to show the address. Neighbourhood, city and coordinates are still filled.
Are owner phone numbers included? Phones are included exactly as Chaves na Mão shows them on the listing. Many owners list through an agency; owners advertising directly appear with advertiserType: "owner".
Support
Found a bug or need a field? Open an issue on the actor's Issues tab.
Additional services
Need a custom field, another Brazilian portal or a scheduled export to your database? Open an issue and describe what you need.
Explore more scrapers
🤖 For AI Agents & LLM Apps
Purpose: Turn a Brazilian place name, coordinates, or Chaves na Mão search or listing URLs into structured property listings for sale, rent or new developments, with the advertiser's phones and WhatsApp.
Minimal input (tested):
{ "locations": ["Pinheiros, São Paulo"], "dealType": "rent", "maxItems": 20 }
or
{ "startUrls": ["https://www.chavesnamao.com.br/apartamentos-para-alugar/sp-sao-paulo/pinheiros/"], "maxItems": 20 }
Output fields (flat): listingId, url, title, transaction, propertyType, price, condoFee, iptu, bedrooms, bathrooms, suites, parkingSpaces, usableAreaM2, totalAreaM2, street, neighborhood, zone, city, state, zipCode, latitude, longitude, description, features[], condoFeatures[], nearbyPlaces[], photos[], advertiserName, advertiserType, advertiserMobilePhone, advertiserLandlinePhone, advertiserWhatsapp[], advertiserCreci, advertiserGoogleRating, createdAt, updatedAt.
Behaviors agents should know:
locationstake a city,Neighbourhood, City,Zone, City, a street, a state code orBrasil;dealTypepickssale,rent,anyornew.- Filters (
minPrice,maxPrice,minArea,maxArea,minBedrooms,minBathrooms,minParkingSpaces,propertyTypes,amenities,nearby,listedBy,petFriendly) apply to every search. maxItems: 0returns the full search, split past the 1,500-result limit by price.- Prices are numbers in BRL. Phones are strings in Brazilian format.
trackChangesProject+onlyNewOrChanged: trueturns a scheduled run into a feed of new, changed and removed listings.- Each run also stores a per-advertiser summary in its key-value store:
ADVERTISERS(JSON) andADVERTISERS.csv. - Billing is per dataset row plus one actor start. Cap spend with
maxItemsandmaxItemsPerSearch. - No login, API key or proxy setup needed.
⚠️ Disclaimer
This actor collects publicly available listing data from ChavesNaMao.com.br, including the contact details advertisers publish on their listings. Use it in line with Chaves na Mão's Terms of Use and applicable law, including Brazil's LGPD: contact details of individual owners are personal data, and you need a lawful basis to store or use them. You are responsible for how you use the data. The actor does not bypass logins or access controls.
SEO Keywords
Chaves na Mão scraper, chavesnamao scraper, lançamentos imobiliários, imóveis na planta, Chaves na Mão API, chavesnamao.com.br data, imóveis à venda scraper, imóveis para alugar scraper, apartamentos à venda São Paulo, Brazil real estate scraper, Brazil property data, real estate leads Brazil, imobiliárias contatos, corretores de imóveis telefone WhatsApp, CRECI lista, direto com o proprietário, Rio de Janeiro imóveis dados, Curitiba imóveis, Belo Horizonte imóveis, condomínio IPTU dados, real estate Brazil API, Chaves na Mão CSV, Chaves na Mão JSON, Apify Chaves na Mão.