QuintoAndar Brazil Real Estate Scraper avatar

QuintoAndar Brazil Real Estate Scraper

Pricing

from $6.15 / 1,000 results

Go to Apify Store
QuintoAndar Brazil Real Estate Scraper

QuintoAndar Brazil Real Estate Scraper

Extract QuintoAndar Brazil real-estate listings for rent and sale. Scrape price, condominium fee, IPTU, area, bedrooms, parking, address, neighborhood and coordinates as JSON, CSV or Excel.

Pricing

from $6.15 / 1,000 results

Rating

0.0

(0)

Developer

Scrapers Lat

Scrapers Lat

Maintained by Community

Actor stats

0

Bookmarked

4

Total users

3

Monthly active users

20 hours ago

Last modified

Share

QuintoAndar Brazil Real Estate Scraper

QuintoAndar Brazil Real Estate Scraper

Here is one real result, with every field the actor returns:

{
"imageUrl": "https://www.quintoandar.com.br/img/med/original895521038-972.8344776874492image.jpg",
"photos": [
"https://www.quintoandar.com.br/img/med/895521038-972.8344776874492image.jpg",
"https://www.quintoandar.com.br/img/med/895521038-387.2821822511441image.jpg",
"https://www.quintoandar.com.br/img/med/895521038-353.0771382194889image.jpg"
],
"photosCount": 12,
"amenities": [
"ARMARIOS_EMBUTIDOS_NO_QUARTO",
"ARMARIOS_NA_COZINHA",
"PODE_TER_ANIMAIS_DE_ESTIMACAO"
],
"installations": ["PERTO_DE_METRO_OU_TREM"],
"specialConditions": ["Exclusivity"],
"listingTags": [],
"id": "895521038",
"url": "https://www.quintoandar.com.br/imovel/895521038",
"operation": "sale",
"propertyType": "Apartamento",
"salePrice": 2310000,
"totalMonthlyCost": 2384,
"currency": "BRL",
"condominiumFee": 2150,
"iptu": 234,
"area": 143,
"bedrooms": 3,
"bathrooms": 5,
"suites": 3,
"parkingSpaces": 3,
"isFurnished": true,
"isPrimaryMarket": false,
"visitStatus": "ACCEPT_NEW",
"address": "Rua Embuaçu",
"neighborhood": "Vila Mariana",
"region": "Vila Mariana",
"city": "Sao Paulo",
"latitude": -23.5944398,
"longitude": -46.6301529,
"observedAt": "2026-08-10T14:04:31.756Z",
"error": null
}

Note: the photos array above is trimmed to 3 of the 12 real URLs for readability; the actor returns the full gallery. All values shown are real.

The most complete QuintoAndar scraper available. It returns every field the QuintoAndar listing search exposes for each property, plus the full photo gallery and unit and building amenities, and gives you six inputs to target exactly the listings you need across 13 Brazilian metro markets.

📥 Input · 📤 Output · 💰 Pricing · ▶️ Examples

Apify Coverage Output Billing

Table of contents

What it does

The actor queries the QuintoAndar listing search for the city and operation (sale or rent) you pass as input, applies the optional bedroom and price filters, paginates through the matching properties, and writes one normalized record per listing to the run's dataset. Prices and fees that QuintoAndar reports with 0 or -1 sentinels are returned as null, the full photo gallery is expanded to CDN URLs, and unit amenities, building amenities and special conditions are captured as arrays so you can filter without extra parsing.

Coverage is concentrated in the 13 Brazilian metros where QuintoAndar operates: Sao Paulo, Rio de Janeiro, Belo Horizonte, Curitiba, Porto Alegre, Brasilia, Campinas, Recife, Guarulhos, Santo Andre, Sao Bernardo do Campo, Osasco and Niteroi.

Quickstart

Open the actor, paste this into the input, and press Run. It returns the 10 most recent apartments for sale in Sao Paulo.

{
"maxListings": 10,
"city": "sao-paulo-sp-brasil",
"operation": "sale"
}

Set operation to rent for rentals. Add minBedrooms, minPrice or maxPrice to narrow the search. Only city and operation are required.

Input reference

FieldTypeRequiredDefaultDescription
cityenumyessao-paulo-sp-brasilBrazilian city to search. One of the 13 covered markets, for example sao-paulo-sp-brasil, rio-de-janeiro-rj-brasil, belo-horizonte-mg-brasil, curitiba-pr-brasil, porto-alegre-rs-brasil, brasilia-df-brasil.
operationenumyessaleListing type: sale (comprar) or rent (alugar).
maxListingsintegerno10Maximum number of listings to collect. The source caps deep pagination near 1000 listings per query.
minBedroomsintegerno(any)Only return listings with at least this many bedrooms (1 to 10).
minPriceintegerno(any)Minimum price in BRL. Compared against sale price for sale, against total monthly cost for rent.
maxPriceintegerno(any)Maximum price in BRL. Compared against sale price for sale, against total monthly cost for rent.

Filters combine with logical AND. Price filters drop any listing whose reference price is not reported by the source.

Output reference

One dataset item per listing. Types: string, integer, number, boolean, string[], or null when the source value is absent.

FieldTypeDescription
imageUrlstringCover image URL for the listing.
photosstring[]Full photo gallery as CDN image URLs.
photosCountintegerNumber of photos in the gallery.
amenitiesstring[]Unit amenity codes, for example ARMARIOS_NA_COZINHA. Empty array when none.
installationsstring[]Building amenity codes, for example PERTO_DE_METRO_OU_TREM. Empty array when none.
specialConditionsstring[]Active special conditions, for example Exclusivity. Empty array when none.
listingTagsstring[]Marketing tags attached to the listing. Empty array when none.
idstringQuintoAndar listing ID (unique per listing).
urlstringCanonical listing URL on quintoandar.com.br.
operationstringsale, rent, or both.
propertyTypestringProperty type, for example Apartamento, Casa.
salePricenumberSale price in BRL, or null if not for sale or not reported.
totalMonthlyCostnumberTotal monthly cost in BRL (rent plus fees), or null.
currencystringCurrency of all monetary fields. Always BRL.
condominiumFeenumberMonthly condominium fee in BRL, or null.
iptunumberMonthly IPTU property tax in BRL, or null.
areanumberUsable area in square meters, or null.
bedroomsintegerNumber of bedrooms, or null.
bathroomsintegerNumber of bathrooms, or null.
suitesintegerNumber of en-suite bedrooms, or null.
parkingSpacesintegerNumber of parking spaces, or null.
isFurnishedbooleanWhether the unit is furnished, or null if unknown.
isPrimaryMarketbooleanWhether the listing is a primary-market (new development) unit, or null.
visitStatusstringVisit availability status, for example ACCEPT_NEW.
addressstringStreet address of the listing.
neighborhoodstringNeighborhood name.
regionstringRegion name reported by the source.
citystringHuman-readable city name derived from the city input.
latitudenumberLatitude of the listing, or null.
longitudenumberLongitude of the listing, or null.
observedAtstringISO 8601 timestamp of when the record was collected.
errorstringnull on success. On a failed run, a single item with a populated error field is written instead.

Example output record

Real record from a live run (input {"maxListings": 10, "city": "sao-paulo-sp-brasil", "operation": "sale"}):

{
"imageUrl": "https://www.quintoandar.com.br/img/med/original895521038-972.8344776874492image.jpg",
"photos": [
"https://www.quintoandar.com.br/img/med/895521038-972.8344776874492image.jpg",
"https://www.quintoandar.com.br/img/med/895521038-387.2821822511441image.jpg"
],
"photosCount": 12,
"amenities": ["ARMARIOS_EMBUTIDOS_NO_QUARTO", "ARMARIOS_NA_COZINHA", "PODE_TER_ANIMAIS_DE_ESTIMACAO"],
"installations": ["PERTO_DE_METRO_OU_TREM"],
"specialConditions": ["Exclusivity"],
"listingTags": [],
"id": "895521038",
"url": "https://www.quintoandar.com.br/imovel/895521038",
"operation": "sale",
"propertyType": "Apartamento",
"salePrice": 2310000,
"totalMonthlyCost": 2384,
"currency": "BRL",
"condominiumFee": 2150,
"iptu": 234,
"area": 143,
"bedrooms": 3,
"bathrooms": 5,
"suites": 3,
"parkingSpaces": 3,
"isFurnished": true,
"isPrimaryMarket": false,
"visitStatus": "ACCEPT_NEW",
"address": "Rua Embuaçu",
"neighborhood": "Vila Mariana",
"region": "Vila Mariana",
"city": "Sao Paulo",
"latitude": -23.5944398,
"longitude": -46.6301529,
"observedAt": "2026-08-10T14:04:31.756Z",
"error": null
}

Note: the photos array is trimmed to 2 of 12 real URLs for readability; the live record contains the full gallery.

Run via API and CLI

Start a run and wait for it to finish, then read the dataset. Replace <TOKEN> with your Apify API token.

Run synchronously and get dataset items in one call:

curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~quintoandar-scraper/run-sync-get-dataset-items?token=<TOKEN>" \
-H "Content-Type: application/json" \
-d '{"city":"sao-paulo-sp-brasil","operation":"sale","maxListings":25}'

Start a run asynchronously:

curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~quintoandar-scraper/runs?token=<TOKEN>" \
-H "Content-Type: application/json" \
-d '{"city":"rio-de-janeiro-rj-brasil","operation":"rent","minBedrooms":2,"maxPrice":5000}'

Apify CLI:

apify call scrapers_lat/quintoandar-scraper \
--input '{"city":"belo-horizonte-mg-brasil","operation":"sale","maxListings":50}'

Fetch results

Every run writes to a dataset. Fetch items as JSON, CSV, or Excel by changing format:

# JSON
curl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&clean=true&format=json"
# CSV
curl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&clean=true&format=csv"
# Paginate large datasets
curl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&offset=500&limit=500"

<DATASET_ID> is returned as defaultDatasetId in the run object. Use offset and limit to page through large result sets. clean=true drops empty and internal fields.

Billing and limits

  • Pay per result. You are charged per record returned (result event). See the pricing tab for the current per-result price.
  • No charge on failure. If a run errors, the actor writes a single item with a populated error field and does not charge for it. Empty runs cost nothing.
  • Spend cap respected. Set maxTotalChargeUsd on the run; once reached, the actor stops emitting and charging further billable results.
  • Free Apify plans are capped at 10 listings per run. Upgrade for higher maxListings.
  • Source pagination ceiling. The QuintoAndar search rejects offsets at or above 1000, so a single query returns up to roughly 1000 listings. For larger pulls, split the work with narrower filters or price ranges.

FAQ and troubleshooting

A run returned 0 records. Why? The filter combination matched nothing, or the city has no active listings for that operation. Loosen the filters (remove minBedrooms or widen the price range). Zero-result runs are not charged.

Which cities are supported? The 13 markets where QuintoAndar operates: Sao Paulo, Rio de Janeiro, Belo Horizonte, Curitiba, Porto Alegre, Brasilia, Campinas, Recife, Guarulhos, Santo Andre, Sao Bernardo do Campo, Osasco and Niteroi.

Why are some prices or fees null? QuintoAndar reports unknown prices and fees with 0 or -1 sentinels. The actor normalizes those to null rather than reporting a false zero.

Do the price filters use sale or rent price? For operation: sale they compare against salePrice. For operation: rent they compare against totalMonthlyCost (rent plus fees).

Can I get more than 1000 listings from one city? Not in a single query; the source caps deep pagination near 1000. Split the work with bedroom or price filters to reach different slices of the inventory.

Is this an official QuintoAndar tool? No. This actor is independent and has no affiliation with QuintoAndar. It reads only data that is publicly available on quintoandar.com.br.

More scrapers at scrapers.lat

Built and maintained by scrapers.lat, where we publish scrapers for US and Latin American public platforms: company registries, government data, finance, e-commerce and more. Browse the catalog or request a custom scraper at scrapers.lat.


Independent tool, not affiliated with QuintoAndar. Accesses only publicly available listing data.