QuintoAndar Scraper | $1.5 / 1k | Fast & Reliable avatar

QuintoAndar Scraper | $1.5 / 1k | Fast & Reliable

Pricing

from $1.50 / 1,000 results

Go to Apify Store
QuintoAndar Scraper | $1.5 / 1k | Fast & Reliable

QuintoAndar Scraper | $1.5 / 1k | Fast & Reliable

Extract structured Brazil property listings from QuintoAndar Imoveis with pricing, locations, seller details, media assets, and contact data. Built for enterprise-grade Brazil real estate intelligence, listing monitoring, lead enrichment and automated analytics pipelines.

Pricing

from $1.50 / 1,000 results

Rating

0.0

(0)

Developer

Fatih Tahta

Fatih Tahta

Maintained by Community

Actor stats

1

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

QuintoAndar Scraper

Slug: fatihtahta/quintoandar-scraper

Overview

QuintoAndar Scraper collects structured property listing data from QuintoAndar, including listing identifiers, pricing, location details, room counts, amenities, building features, and media assets. It is designed for teams that need consistent listing records for analysis, enrichment, reporting, or operational workflows. https://www.quintoandar.com.br is one of Brazil's best-known real estate platforms, making it a valuable source for tracking rental and sale inventory across major cities. The actor automates repetitive collection work so you can avoid manual searches and exports. Each run is built to deliver repeatable, ready-to-use JSON output that saves time across research and data pipelines.

Why Use This Actor

  • Market research and analytics: Track asking prices, listing mix, neighborhood coverage, and amenity trends across cities and segments.
  • Product and content teams: Build localized pages, comparison content, or housing datasets with structured listing, pricing, and location information.
  • Developers and data engineering pipelines: Feed warehouses, dashboards, ETL jobs, and downstream APIs with normalized JSON records.
  • Lead generation and enrichment: Identify active listings that match target neighborhoods, price bands, property types, or lifestyle filters.
  • Monitoring and competitive tracking: Watch market changes over time, including shifts in availability, furnishing preferences, transit proximity, and building features.

Input Parameters

Provide any combination of URLs, queries, and filters…

ParameterTypeDescriptionDefault
deal_typestringChoose which market to collect from. Allowed values: sale, rent.sale
sort_bystringControls result ordering before collection. Allowed values: closest, most_relevant, most_recent, lowest_price, highest_price.most_relevant
citystringCity slug to search. Allowed values: sao-paulo-sp-brasil (Sao Paulo), rio-de-janeiro-rj-brasil (Rio de Janeiro), belo-horizonte-mg-brasil (Belo Horizonte), porto-alegre-rs-brasil (Porto Alegre), brasilia-df-brasil (Brasilia), curitiba-pr-brasil (Curitiba), goiania-go-brasil (Goiania), campinas-sp-brasil (Campinas), canoas-rs-brasil (Canoas), guarulhos-sp-brasil (Guarulhos), jundiai-sp-brasil (Jundiai), nova-lima-mg-brasil (Nova Lima), novo-hamburgo-rs-brasil (Novo Hamburgo), niteroi-rj-brasil (Niteroi), osasco-sp-brasil (Osasco), santo-andre-sp-brasil (Santo Andre), sao-bernardo-do-campo-sp-brasil (Sao Bernardo do Campo), sao-caetano-do-sul-sp-brasil (Sao Caetano do Sul), barueri-sp-brasil (Barueri), sao-leopoldo-rs-brasil (Sao Leopoldo), florianopolis-sc-brasil (Florianopolis), sao-jose-sc-brasil (Sao Jose), palhoca-sc-brasil (Palhoca), contagem-mg-brasil (Contagem), taboao-da-serra-sp-brasil (Taboao da Serra), diadema-sp-brasil (Diadema), sao-jose-dos-pinhais-pr-brasil (Sao Jose dos Pinhais), varzea-paulista-sp-brasil (Varzea Paulista), pinhais-pr-brasil (Pinhais), santana-de-parnaiba-sp-brasil (Santana de Parnaiba), santos-sp-brasil (Santos), recife-pe-brasil (Recife), salvador-ba-brasil (Salvador), mogi-das-cruzes-sp-brasil (Mogi das Cruzes), sao-jose-dos-campos-sp-brasil (Sao Jose dos Campos), cotia-sp-brasil (Cotia), vitoria-es-brasil (Vitoria), ribeirao-preto-sp-brasil (Ribeirao Preto), sorocaba-sp-brasil (Sorocaba), sao-jose-do-rio-preto-sp-brasil (Sao Jose do Rio Preto), uberlandia-mg-brasil (Uberlandia), maua-sp-brasil (Maua), belem-pa-brasil (Belem), fortaleza-ce-brasil (Fortaleza), manaus-am-brasil (Manaus), valinhos-sp-brasil (Valinhos), vinhedo-sp-brasil (Vinhedo), indaiatuba-sp-brasil (Indaiatuba), nova-iguacu-rj-brasil (Nova Iguacu), americana-sp-brasil (Americana), hortolandia-sp-brasil (Hortolandia), paulinia-sp-brasil (Paulinia), praia-grande-sp-brasil (Praia Grande), guaruja-sp-brasil (Guaruja), carapicuiba-sp-brasil (Carapicuiba), votorantim-sp-brasil (Votorantim), sao-vicente-sp-brasil (Sao Vicente), duque-de-caxias-rj-brasil (Duque de Caxias), sao-goncalo-rj-brasil (Sao Goncalo), vila-velha-es-brasil (Vila Velha), betim-mg-brasil (Betim), aparecida-de-goiania-go-brasil (Aparecida de Goiania), suzano-sp-brasil (Suzano), itaquaquecetuba-sp-brasil (Itaquaquecetuba), sumare-sp-brasil (Sumare), embu-das-artes-sp-brasil (Embu das Artes), ferraz-de-vasconcelos-sp-brasil (Ferraz de Vasconcelos), poa-sp-brasil (Poa), gravatai-rs-brasil (Gravatai), viamao-rs-brasil (Viamao), alvorada-rs-brasil (Alvorada), jaboatao-dos-guararapes-pe-brasil (Jaboatao dos Guararapes), belford-roxo-rj-brasil (Belford Roxo), nilopolis-rj-brasil (Nilopolis), mesquita-rj-brasil (Mesquita), taubate-sp-brasil (Taubate), jacarei-sp-brasil (Jacarei), ribeirao-das-neves-mg-brasil (Ribeirao das Neves), ribeirao-pires-sp-brasil (Ribeirao Pires), brumadinho-mg-brasil (Brumadinho), itabirito-mg-brasil (Itabirito), lagoa-santa-mg-brasil (Lagoa Santa), sabara-mg-brasil (Sabara), vespasiano-mg-brasil (Vespasiano), rio-acima-mg-brasil (Rio Acima), santa-luzia-mg-brasil (Santa Luzia), marica-rj-brasil (Marica), cabo-frio-rj-brasil (Cabo Frio).
neighborhoodstringOptional neighborhood name to narrow the search within the selected city, such as Pinheiros or Jardim Paulista.
property_typearray[string]Property categories to include. Allowed values: apartment, house, condominium, studio. Leave empty to include all supported property types.
min_bedroomstringMinimum bedroom count. Allowed values: 1, 2, 3, 4, meaning 1+ through 4+ bedrooms.
min_bathroomstringMinimum bathroom count. Allowed values: 1, 2, 3, 4, meaning 1+ through 4+ bathrooms.
min_parkingstringMinimum parking spaces. Allowed values: 0, 1, 2, 3, meaning 0+ through 3+ spaces.
min_priceintegerLowest price to include in the results.
max_priceintegerHighest price to include in the results.
min_sqmintegerMinimum usable area in square meters.
max_sqmintegerMaximum usable area in square meters.
amenitiesarray[string]In-home features to require. Allowed values: penthouse_apartment, air_conditioning, bathtub, shower_enclosure, barbecue_grill, gas_shower, walk_in_closet, garden_private_outdoor_area, new_or_renovated, private_pool, single_house_on_the_property, laundry_sink, television, kitchen_utensils, ceiling_fan.
condo_amenitiesarray[string]Shared building features to require. Allowed values: gym, green_area, playroom, barbecue_area, elevator, laundry_room, swimming_pool, playground, 24_hour_concierge, sports_court, party_room, game_room, sauna.
furnishedstringFurnishing preference. Allowed values: all, furnished, unfurnished.all
pets_allowedbooleanWhen enabled, keeps only pet-friendly rental listings. It does not change sale searches.false
near_transitbooleanWhen enabled, keeps only listings marked as near public transit.false
limitintegerMaximum number of listings to save. Leave empty to collect all matching results for the configured search.
maximize_coveragebooleanWhen enabled, broad searches aim to collect a more complete set of matching listings.true

Example Inputs

Scenario: Broad sale search in Sao Paulo

{
"deal_type": "sale",
"city": "sao-paulo-sp-brasil",
"sort_by": "most_recent",
"property_type": ["apartment"],
"max_price": 1500000,
"limit": 150
}

Scenario: Furnished rental near transit in Jardim Paulista

{
"deal_type": "rent",
"city": "sao-paulo-sp-brasil",
"neighborhood": "Jardim Paulista",
"furnished": "furnished",
"near_transit": true,
"pets_allowed": true,
"condo_amenities": ["gym", "elevator"],
"limit": 75
}

Scenario: Family-focused house search in Campinas

{
"deal_type": "sale",
"city": "campinas-sp-brasil",
"property_type": ["house", "condominium"],
"min_bedroom": "3",
"min_bathroom": "2",
"min_parking": "2",
"min_sqm": 120,
"limit": 100
}

Output

6.1 Output destination

The actor writes results to an Apify dataset as JSON records. And the dataset is designed for direct consumption by analytics tools, ETL pipelines, and downstream APIs without post-processing.

6.2 Record envelope (all items)

Each record should be treated as having these stable identifiers for downstream normalization and storage:

  • type (string, required): Listing category. Typical values are sale_listing and rental_listing.
  • id (number, required): Numeric listing identifier.
  • url (string, required): Public listing URL.

Recommended idempotency key: type + ":" + id

If the same listing appears in multiple runs or search combinations, use this key for deduplication and upserts.

6.3 Examples

Example: sale listing (type = "sale_listing")

{
"type": "sale_listing",
"id": 893287484,
"url": "https://www.quintoandar.com.br/imovel/893287484",
"identity": {
"id": "893287484",
"fingerprint": "b2f43b05bbc118511247"
},
"source_context": {
"source_url": "https://www.quintoandar.com.br/comprar/imovel/sao-paulo-sp-brasil",
"page_index": 1,
"seed": {
"id": "c0cb59c07f0d",
"type": "location",
"value": "sao-paulo-sp-brasil"
}
},
"content": {
"title": "Comprar apartamento na Vila Andrade com 3 quartos, piscina e churrasqueira no condominio.",
"description": "Comprar apartamento na Vila Andrade com 3 quartos, piscina e churrasqueira no condominio.",
"short_sale_description": "Comprar apartamento na Vila Andrade com 3 quartos, piscina e churrasqueira no condominio."
},
"pricing": {
"amount": 1200000,
"currency": "BRL",
"rent_amount": 4112,
"sale_amount": 1200000,
"total_cost": 8138,
"iptu_plus_condominium": 3867,
"yield": 0.0023,
"yield_strategy": "calculator"
},
"availability": {
"visit_status": "accept_new",
"for_rent": true,
"for_sale": false,
"is_primary_market": false,
"is_secondary_house": false
},
"location": {
"label": "Vila Andrade, Sao Paulo, SP",
"street": "Rua Germano Ulbrich",
"neighborhood": "Vila Andrade",
"city": "Sao Paulo",
"state_code": "SP",
"region_name": "Panamby"
},
"media": {
"cover_image": {
"url": "893287484-156.7189085278339WhatsAppImage20210407at17.34.5211.jpeg",
"cover": true
},
"images": [
{
"url": "893287484-156.7189085278339WhatsAppImage20210407at17.34.5211.jpeg",
"cover": true
},
{
"url": "893287484-785.2715333777837WhatsAppImage20210407at17.37.548.jpeg",
"caption": "Cozinha"
},
{
"url": "893287484-994.551529881029WhatsAppImage20210407at17.34.5224.jpeg",
"caption": "Sacada"
}
]
},
"attributes": {
"business": "sale",
"property_type": "apartamento",
"amenities": [
"vista_livre",
"tomadas_novas",
"cortinas_black_out",
"espelho_no_banheiro",
"armarios_nos_banheiros",
"varal_de_roupas",
"box",
"fogao_incluso",
"sol_da_tarde",
"chuveiro_a_gas",
"pode_ter_animais_de_estimacao",
"tanque",
"apartamento_cobertura",
"energia",
"varanda",
"rua_silenciosa",
"armarios_embutidos_no_quarto",
"banheiro_de_servico",
"sol_da_manha",
"armarios_na_cozinha",
"luminosidade_natural",
"quarto_de_servico",
"varanda_gourmet"
],
"installations": [
"SALAO_DE_FESTAS",
"ACADEMIA",
"CHURRASQUEIRA",
"GAS_ENCANADO",
"QUADRA_ESPORTIVA",
"PISCINA",
"PERTO_DE_METRO_OU_TREM",
"PLAYGROUND"
],
"listing_tags": [
"NEW_AD",
"SALE_GOOD_PRICE"
],
"is_furnished": false,
"score_match_tags": [
"SAME_CITY_MATCH"
],
"matched_queries": [
"GEO_LOCATION_EXACT_MATCH_CITY_0"
],
"rooms": {
"bedrooms": 3,
"bathrooms": 5,
"suites": 3,
"parking_spaces": 3
},
"area": {
"usable_area": 403
}
}
}

Example: rental listing (type = "rental_listing")

{
"type": "rental_listing",
"id": 893885607,
"url": "https://www.quintoandar.com.br/imovel/893885607",
"identity": {
"id": "893885607",
"fingerprint": "582629d6b5adafe6d59e"
},
"source_context": {
"source_url": "https://www.quintoandar.com.br/alugar/imovel/sao-paulo-sp-brasil",
"page_index": 1,
"seed": {
"id": "c0cb59c07f0d",
"type": "location",
"value": "sao-paulo-sp-brasil"
}
},
"content": {
"title": "Apartamento mobiliado com 3 quartos para alugar no Jardim Paulista.",
"description": "Apartamento mobiliado com 3 quartos para alugar no Jardim Paulista.",
"short_rent_description": "Apartamento mobiliado com 3 quartos para alugar no Jardim Paulista."
},
"pricing": {
"amount": 21000,
"currency": "BRL",
"rent_amount": 21000,
"sale_amount": 3800000,
"total_cost": 25377,
"iptu_plus_condominium": 3567,
"yield": 0.0042,
"yield_strategy": "contract"
},
"availability": {
"visit_status": "accept_new",
"for_rent": true,
"for_sale": false,
"is_primary_market": false,
"is_secondary_house": false,
"active_special_conditions": [
"Exclusivity"
]
},
"location": {
"label": "Jardim Paulista, Sao Paulo, SP",
"street": "Alameda Jau",
"neighborhood": "Jardim Paulista",
"city": "Sao Paulo",
"state_code": "SP",
"region_name": "Jardim Paulista"
},
"media": {
"cover_image": {
"url": "893885607-134.05138198451237AlamedaJau18172.jpg",
"cover": true
},
"images": [
{
"url": "893885607-134.05138198451237AlamedaJau18172.jpg",
"cover": true
},
{
"url": "893885607-972.835934512894AlamedaJau18173.jpg",
"caption": "Sala"
},
{
"url": "893885607-452.22429938328355AlamedaJau181733.jpg",
"caption": "Cozinha"
}
]
},
"attributes": {
"business": "rent",
"property_type": "apartamento",
"amenities": [
"vista_livre",
"cooktop",
"quartos_e_corredores_com_portas_amplas",
"armarios_nos_banheiros",
"cozinha_americana",
"ar_condicionado",
"box",
"cama_de_casal",
"chuveiro_a_gas",
"area_de_servico",
"pode_ter_animais_de_estimacao",
"tanque",
"closet",
"rua_silenciosa",
"armarios_embutidos_no_quarto",
"geladeira_incluso",
"sol_da_manha",
"armarios_na_cozinha",
"luminosidade_natural"
],
"installations": [
"SALAO_DE_FESTAS",
"CORRIMAO",
"ACADEMIA",
"AREA_VERDE",
"VAGA_DE_GARAGEM_ACESSIVEL",
"PERTO_DE_METRO_OU_TREM",
"PLAYGROUND",
"RAMPAS_DE_ACESSO"
],
"listing_tags": [
"RENT_ON_TERMINATION",
"RENT_ON_TERMINATION_RENTFLOW_ENABLED"
],
"is_furnished": true,
"score_match_tags": [
"SAME_CITY_MATCH"
],
"matched_queries": [
"GEO_LOCATION_EXACT_MATCH_CITY_0"
],
"rooms": {
"bedrooms": 3,
"bathrooms": 3,
"suites": 3,
"parking_spaces": 2
},
"area": {
"usable_area": 250
}
}
}

Field reference

Sale listing fields (type = "sale_listing")

  • type (string, required): Normalized record type for sale listings.
  • id (number, required): Numeric listing identifier.
  • url (string, required): Public listing URL.
  • identity.id (string, required): Source listing identifier as provided by the platform.
  • identity.fingerprint (string, optional): Stable fingerprint for record matching.
  • source_context.source_url (string, required): Search page where the record was discovered.
  • source_context.page_index (number, optional): Results page number.
  • source_context.seed.id (string, optional): Seed identifier for the originating search.
  • source_context.seed.type (string, optional): Seed category, such as location.
  • source_context.seed.value (string, optional): Seed value used for the run.
  • content.title (string, required): Listing title.
  • content.description (string, optional): Full listing description.
  • content.short_sale_description (string, optional): Short sale-oriented summary.
  • pricing.amount (number, optional): Primary displayed price.
  • pricing.currency (string, optional): Currency code.
  • pricing.rent_amount (number, optional): Rental amount when shown alongside sale information.
  • pricing.sale_amount (number, optional): Sale amount.
  • pricing.total_cost (number, optional): Total monthly cost when available.
  • pricing.iptu_plus_condominium (number, optional): Combined tax and condominium cost.
  • pricing.yield (number, optional): Yield metric when available.
  • pricing.yield_strategy (string, optional): Yield calculation label.
  • availability.visit_status (string, optional): Visit booking status.
  • availability.for_rent (boolean, optional): Whether the listing is available for rent.
  • availability.for_sale (boolean, optional): Whether the listing is available for sale.
  • availability.is_primary_market (boolean, optional): Whether the property is a primary-market listing.
  • availability.is_secondary_house (boolean, optional): Whether the property is flagged as a secondary house.
  • location.label (string, optional): Full location label.
  • location.street (string, optional): Street name.
  • location.neighborhood (string, optional): Neighborhood name.
  • location.city (string, optional): City name.
  • location.state_code (string, optional): State abbreviation.
  • location.region_name (string, optional): Broader local region label.
  • media.cover_image.url (string, optional): Cover image URL or asset name.
  • media.cover_image.cover (boolean, optional): Whether the image is the cover image.
  • media.images[] (array, optional): Listing image collection.
  • media.images[].url (string, optional): Image URL or asset name.
  • media.images[].cover (boolean, optional): Whether the image is marked as the cover.
  • media.images[].caption (string, optional): Image caption.
  • attributes.business (string, required): Business mode. For this record type, typically sale.
  • attributes.property_type (string, optional): Property category label.
  • attributes.amenities[] (array[string], optional): In-home features.
  • attributes.installations[] (array[string], optional): Shared building features.
  • attributes.listing_tags[] (array[string], optional): Listing-level tags.
  • attributes.is_furnished (boolean, optional): Furnishing flag.
  • attributes.score_match_tags[] (array[string], optional): Match-scoring tags.
  • attributes.matched_queries[] (array[string], optional): Query or seed matches recorded for the listing.
  • attributes.rooms.bedrooms (number, optional): Bedroom count.
  • attributes.rooms.bathrooms (number, optional): Bathroom count.
  • attributes.rooms.suites (number, optional): Suite count.
  • attributes.rooms.parking_spaces (number, optional): Parking space count.
  • attributes.area.usable_area (number, optional): Usable area in square meters.

Rental listing fields (type = "rental_listing")

Rental records may also include the shared fields documented for sale_listing.

  • type (string, required): Normalized record type for rental listings.
  • id (number, required): Numeric listing identifier.
  • url (string, required): Public listing URL.
  • content.short_rent_description (string, optional): Short rental-oriented summary.
  • availability.active_special_conditions[] (array[string], optional): Special rental conditions or badges shown on the listing.
  • attributes.business (string, required): Business mode. For this record type, typically rent.

Data guarantees & handling

  • Best-effort extraction: fields may vary by region, session, availability, and site experiments.
  • Optional fields: null-check in downstream code.
  • Deduplication: recommend type + ":" + id.

How to Run on Apify

  1. Open the Actor in Apify Console.
  2. Configure your search parameters, including deal type, city, and any optional filters such as neighborhood, price, size, or amenities.
  3. Set the maximum number of outputs to collect.
  4. Click Start and wait for the run to finish.
  5. Download results in JSON, CSV, Excel, or other supported formats.

Scheduling & Automation

Scheduling

Automated Data Collection

Schedule recurring runs to keep your QuintoAndar dataset current without manual work. This is useful for market tracking, recurring exports, and any workflow that depends on fresh listing data.

  • Navigate to Schedules in Apify Console
  • Create a new schedule (daily, weekly, or custom cron)
  • Configure input parameters
  • Enable notifications for run completion
  • Optional: add webhooks for automated processing

Integration Options

  • Webhooks: Trigger downstream actions when a run completes
  • Zapier: Connect to 5,000+ apps without coding
  • Make (Integromat): Build multi-step automation workflows
  • Google Sheets: Export results to a spreadsheet
  • Slack/Discord: Receive notifications and summaries
  • Email: Send automated reports via email

Performance

  • Small runs (< 1,000 outputs): ~2-3 minutes
  • Medium runs (1,000-5,000 outputs): ~5-15 minutes
  • Large runs (5,000+ outputs): ~15-30 minutes

Execution time varies based on filters, result volume, and how much information is returned per record.

Compliance & Ethics

Responsible Data Collection

This actor collects publicly available property listing information from https://www.quintoandar.com.br for legitimate business purposes, including:

  • Real estate research and market analysis
  • Listing monitoring and reporting
  • Data enrichment and internal analytics

You are responsible for ensuring your use of the collected data complies with applicable laws, regulations, platform terms, and internal policies. This section is informational and not legal advice.

Best Practices

  • Use collected data in accordance with applicable laws, regulations, and the target site's terms
  • Respect individual privacy and personal information
  • Use data responsibly and avoid disruptive or excessive collection
  • Do not use this actor for spamming, harassment, or other harmful purposes
  • Follow relevant data protection requirements where applicable (e.g., GDPR, CCPA)

Support

For help, use the Issues tab or support section on the actor page in Apify Console. Include the input you used with sensitive values redacted, the run ID, a short description of expected versus actual behavior, and, if helpful, a small output sample.