RE/MAX Portugal Scraper
Pricing
from $1.70 / 1,000 results
RE/MAX Portugal Scraper
Extract property listings from RE/MAX Portugal (remax.pt) — homes and commercial real estate to buy or rent. 60+ fields per property: descriptions in 6 languages, all photos, GPS, energy ratings, price history, and agent contacts. Search by location with price, bedroom, area, and type filters.
Pricing
from $1.70 / 1,000 results
Rating
0.0
(0)
Developer
SolidCode
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
2
Monthly active users
11 days ago
Last modified
Categories
Share
Pull live property listings from RE/MAX Portugal (remax.pt) at scale — asking prices, price-drop history, full photo galleries, GPS coordinates, plain-text descriptions in six languages, and direct agent phone and WhatsApp contacts for homes and commercial real estate across the entire country, to buy or to rent. Built for property investors, buyer's agents, relocation and expat services, and portal aggregators who need fresh Portuguese real-estate data without copy-pasting listings one page at a time.
Why This Scraper?
- 51 structured fields on every row — one flat schema that never changes shape between listings: price, price-per-m², usable and gross area, bedrooms, bathrooms, construction year, floor, full photo gallery, GPS, the five-level Portuguese address hierarchy, and agent plus office contacts.
- Descriptions in 6 languages, delivered as clean text — pick Portuguese, English, French, German, Spanish, or Italian and that is the language you get, with HTML markup stripped, entities decoded, and paragraph breaks preserved, so the text drops straight into a CMS or a valuation model with no cleanup pass.
- 21 RE/MAX property-type labels, never raw codes — Apartment, House, Land, Store, Warehouse, Business Office, Farm, Duplex, Studio, Hotel, Manor House, Storage Room and 9 more come back as readable English labels on every listing, residential and commercial alike.
- Price-drop tracking, deepest cut first —
previousPriceandpriceReductionPctshow exactly how much a seller has come down (cuts of up to 90% observed), and "Biggest price drop first" puts the largest reductions at the top of your dataset instead of the smallest. - A direct line to the listing agent — agent phone and RE/MAX office phone on 100% of rows, a one-tap
agentWhatsAppchat link on 99%, plus agent name, team, and office name for every property. - Photos guaranteed to belong to the listing — the full
images[]gallery, 3 to 50 photos per property and a median of 22, with animageCount, every URL matched to the property it is attached to rather than a shared thumbnail. - Five-level Portuguese address hierarchy — region (distrito), municipality (concelho), parish (freguesia), zone, and postal code as five separate fields on every row, plus GPS, so you can roll listings up to any administrative level.
- Residential and commercial, buy and rent — apartments, villas, land, garages, and farms alongside stores, offices, warehouses, hotels, and buildings, with 11 property-type filters and price, bedroom, bathroom, and area bands.
- District-accurate search anywhere in Portugal — type a location in Portuguese or English with accents optional (
Lisboa,Lisbon,Algarve,Coimbra), or paste a filtered remax.pt URL; a search for Braga comes back with Braga, not look-alike Bragança.
Use Cases
Investment Analysis
- Track price reductions across a target municipality to find motivated sellers
- Compare price-per-m² between parishes and zones before bidding
- Monitor new listings sorted newest-first for fast-moving markets
- Benchmark asking prices by property type, area band, and construction year
Lead Generation for Agents
- Build listing-agent contact lists with name, phone, WhatsApp, and RE/MAX office
- Identify competing offices and their active inventory by area
- Target sellers who have already cut their price and may negotiate
- Compile office-level contact directories for partnership outreach
Relocation & Expat Services
- Pull rental and buy listings with descriptions in your client's language
- Map properties by GPS to commute zones and schools
- Filter by bedrooms, bathrooms, and usable area for family requirements
- Shortlist by floor and elevator access for buggy, mobility, or top-floor requirements
Market Research
- Measure inventory by district, municipality, and property class
- Analyze rent vs. buy supply across Lisboa, Porto, and the Algarve
- Track construction-year distribution and property-type mix per zone
- Quantify how fast prices drop in slow-moving segments
Portal & Listing Aggregation
- Feed normalized listings into a comparison or search portal
- Sync full photo galleries — plus virtual-tour links where the agent published one — into your CMS
- Refresh pricing and availability on a schedule
- Deduplicate and enrich an existing Portuguese property database
Getting Started
Simple — a single location
Search homes for sale in Lisbon with default settings:
{"searchTerm": "Lisboa","maxResults": 50}
Filtered — rentals with criteria
Three-bedroom-plus apartments to rent in Porto, priced up to €2,000, biggest price drops first:
{"searchTerm": "Porto","businessType": "rent","propertyTypes": ["apartment"],"priceMax": 2000,"bedroomsMin": 3,"sortBy": "price-reduction","maxResults": 200}
Advanced — full filter set, English descriptions
Commercial real estate to buy in the Algarve, with area and price bands, descriptions returned in English:
{"searchTerm": "Algarve","businessType": "buy","listingClass": "commercial","propertyTypes": ["store", "office", "warehouse"],"priceMin": 100000,"priceMax": 1500000,"areaMin": 80,"areaMax": 500,"sortBy": "price-asc","descriptionLanguage": "en","includeDescriptions": true,"maxResults": 500}
Power user — paste a search URL
Skip the guided fields and paste a filtered remax.pt search straight from your browser:
{"startUrls": ["https://www.remax.pt/comprar/imoveis/habitacao/r/r/r/t?s=%7B%22rg%22%3A%22Cascais%22%7D"],"maxResults": 300}
Input Reference
Search
| Parameter | Type | Default | Description |
|---|---|---|---|
searchTerm | string | "Lisboa" | Location to search. Accepts Portuguese (Lisboa, Porto) or English (Lisbon, Algarve); accents optional. Ignored when Start URLs are provided. |
businessType | select | For Sale (Buy) | Whether to search properties to buy or to rent. Options: For Sale (Buy), For Rent. |
listingClass | select | All Listings | Limit to residential homes, commercial real estate, or include everything. Options: All Listings, Residential, Commercial. |
Filters
| Parameter | Type | Default | Description |
|---|---|---|---|
propertyTypes | select[] | [] | One or more property types; leave empty for all. Options: Apartment, House / Villa, Land / Plot, Store / Retail Space, Office, Warehouse, Building, Garage / Parking, Farm / Rural Estate, Hotel / Hospitality, Other. |
priceMin | integer | — | Only include properties at or above this price in euros. |
priceMax | integer | — | Only include properties at or below this price in euros. |
bedroomsMin | integer | — | Minimum number of bedrooms. |
bedroomsMax | integer | — | Maximum number of bedrooms. |
bathroomsMin | integer | — | Minimum number of bathrooms. |
areaMin | integer | — | Minimum area in square metres. |
areaMax | integer | — | Maximum area in square metres. |
sortBy | select | Newest first | Result order. Options: Newest first, Lowest price first, Highest price first, Largest area first, Biggest price drop first. |
Output Options
| Parameter | Type | Default | Description |
|---|---|---|---|
descriptionLanguage | select | Portuguese | Language for property descriptions. Options: Portuguese, English, French, German, Spanish, Italian. |
includeDescriptions | boolean | true | Include the full property description text. Turn off for lighter, faster results. |
Advanced & Options
| Parameter | Type | Default | Description |
|---|---|---|---|
startUrls | string[] | [] | Paste remax.pt search-result URLs (or individual property URLs) directly. Overrides the Location and Filters settings above. |
maxResults | integer | 100 | Maximum number of listings to collect across all searches and URLs. Set to 0 for unlimited. The final page may overshoot this cap by a few records. |
Output
Each property is one row in the dataset. Here is a representative record:
{"id": "7239850","url": "https://www.remax.pt/pt/imoveis/venda-apartamento-t3-lisboa-sao-vicente/124141126-48","title": "Apartment T3 for sale in São Vicente, Lisboa","businessType": "buy","listingClass": "residential","propertyType": "Apartment","price": 550000,"priceOnRequest": false,"previousPrice": 580000,"priceReductionPct": 5,"pricePerSqm": 5339.81,"currency": "EUR","description": "Bright three-bedroom apartment with a south-facing balcony...","mainImage": "https://i.maxwork.pt/l-feat/listings/12414/7239850/828f0432.jpg","images": ["https://i.maxwork.pt/l-feat/listings/12414/7239850/828f0432.jpg", "https://i.maxwork.pt/l-feat/listings/12414/7239850/9c31be07.jpg"],"imageCount": 37,"virtualTourUrl": "https://my.matterport.com/show/?m=example","totalArea": 103,"livingArea": 103,"lotSize": null,"builtArea": null,"bedrooms": 3,"bathrooms": 2,"constructionYear": 1985,"energyEfficiencyLevelId": 5,"conservationStatusId": 1,"floorLevel": "1st Floor","hasElevator": true,"hasParking": true,"hasGarage": true,"hasEvCharging": false,"publishedDate": "2026-08-28T16:20:01.89","modifiedDate": "2026-08-28T16:20:04.67","latitude": 38.71444,"longitude": -9.130388,"address": "Rua Bica do Sapato","region": "Lisboa","municipality": "Lisboa","parish": "São Vicente","zone": "Lisboa","postalCode": "1100-093","agentName": "Filipe Peralta","agentPhone": "+351 927 450 853","agentWhatsApp": "https://rply.link/l/rzeGIZOEpW","teamName": "RE/MAX Prime Team","officeName": "RE/MAX Consulting","officePhone": "+351 215 955 055","scrapedAt": "2026-08-29T14:30:00Z"}
Core Fields
| Field | Type | Description |
|---|---|---|
id | string | RE/MAX listing ID (the public reference code appears at the end of url) |
url | string | Canonical listing URL on remax.pt |
title | string | Readable listing title, e.g. Apartment T3 for sale in São Vicente, Lisboa |
businessType | string | buy or rent |
listingClass | string | residential or commercial |
propertyType | string | Property type as an English label, one of 21 (Apartment, House, Land, Store, Warehouse, Business Office, Farm…) |
description | string | Property description in the language you chose, as plain text with paragraph breaks kept |
scrapedAt | string | ISO timestamp of extraction |
Pricing
| Field | Type | Description |
|---|---|---|
price | number | Current asking price in euros (null when the listing is price-on-request) |
priceOnRequest | boolean | true when the seller hides the price ("price on request"); price is null in that case |
previousPrice | number | Prior asking price, when the seller has cut it. Around a quarter of general listings carry price history; on a "Biggest price drop first" search, effectively all of them do |
priceReductionPct | number | Whole-number percentage cut from the previous price (values from 1 to 90 observed) |
pricePerSqm | number | Price per square metre |
currency | string | Always EUR |
Property Details
| Field | Type | Description |
|---|---|---|
totalArea | number | Gross / total area (m²) |
livingArea | number | Usable living area (m²) |
lotSize | number | Plot size (m²) |
builtArea | number | Built area (m²) |
bedrooms | number | Bedroom count |
bathrooms | number | Bathroom count |
constructionYear | number | Year built |
energyEfficiencyLevelId | number | RE/MAX energy-efficiency level identifier |
conservationStatusId | number | Raw condition identifier |
floorLevel | string | Floor as a label, not a number — R/C (ground floor), C/V (basement), 1st Floor … Above 10th Floor, Bi-level apartment. Present on apartments and most commercial units; land and detached houses have no floor |
hasElevator | boolean | Elevator present |
hasParking | boolean | Parking present |
hasGarage | boolean | Garage present |
hasEvCharging | boolean | EV charging available |
publishedDate | string | First published date |
modifiedDate | string | Last modified date |
Media
| Field | Type | Description |
|---|---|---|
mainImage | string | Primary photo URL |
images | string[] | All gallery photo URLs |
imageCount | number | Number of photos |
virtualTourUrl | string | 360° / virtual-tour link, if any |
Location
| Field | Type | Description |
|---|---|---|
latitude | number | GPS latitude |
longitude | number | GPS longitude |
address | string | Full address (when the seller makes it public) |
region | string | Region / district (distrito) |
municipality | string | Municipality (concelho) |
parish | string | Parish (freguesia) |
zone | string | Zone / neighbourhood |
postalCode | string | Postal code |
Agent & Office Contacts
| Field | Type | Description |
|---|---|---|
agentName | string | Listing agent name |
agentPhone | string | Agent phone |
agentWhatsApp | string | One-tap link that opens a WhatsApp chat with the listing agent |
teamName | string | Agent team |
officeName | string | RE/MAX office name |
officePhone | string | Office phone |
Tips for Best Results
- Start small to verify — run with
maxResultsof 25–50 first to confirm the location and filters return what you expect, then scale up. - Paste a fully-filtered remax.pt URL for tricky searches — set up the exact filters you want in your browser, copy the address bar, and drop it into
startUrls. It overrides the guided fields and reproduces your search precisely, including the property-type slug. - Use "Biggest price drop first" to find motivated sellers — combine
sortBy: "price-reduction"with a target location to put the deepest cuts at the top of your dataset. Price history is the exception rather than the rule across a general search, so use this sort when reductions are what you are after. - Pick your description language up front — set
descriptionLanguageto your audience's language and every description arrives in it, with no separate translation step. RE/MAX agents write their fullest copy in Portuguese and sometimes leave a one-line summary in the other five, so chooseptwhen you want maximum text and can translate downstream. - Some listings show "price on request" — when a seller hides the figure,
priceisnullandpriceOnRequestistrueeven though the rest of the record is complete; filter onpriceOnRequestdownstream if you only want priced listings. - Some details are the seller's to publish, and some RE/MAX never publishes —
addressappears only when the seller releases the street, though GPS, parish, and zone are always there for mapping. RE/MAX itself does not publish energy-certificate letters, agent email addresses, or office street addresses anywhere on remax.pt, so those are not in the output; agent phone, WhatsApp, and office phone are on essentially every row instead. - Turn off descriptions for lean lead lists — set
includeDescriptionsto false when you only need pricing, location, and agent contacts for faster, lighter runs.
Pricing
From $1.70 per 1,000 results — flat, transparent pay-per-result pricing that undercuts other RE/MAX Portugal scrapers with no surprise run-start fee. No compute charges — you only pay per result returned. Bronze, Silver, and Gold subscribers pay progressively less; the table below shows total cost at each discount tier.
| Results | No discount | Bronze | Silver | Gold |
|---|---|---|---|---|
| 100 | $0.20 | $0.19 | $0.18 | $0.17 |
| 1,000 | $2.00 | $1.90 | $1.80 | $1.70 |
| 10,000 | $20.00 | $19.00 | $18.00 | $17.00 |
| 100,000 | $200.00 | $190.00 | $180.00 | $170.00 |
A "result" is any property row in the output dataset. Platform usage fees depend on your Apify plan and are additional.
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
Legal & Ethical Use
This actor is designed for legitimate real estate research, market analysis, and lead generation. You are responsible for complying with applicable laws and RE/MAX Portugal's Terms of Service. Do not use extracted data for spam, harassment, or any unlawful purpose, and handle any personal data (such as agent contacts) in line with GDPR and other applicable privacy regulations.