Homegate Scraper avatar

Homegate Scraper

Deprecated

Pricing

from $1.50 / 1,000 results

Go to Apify Store
Homegate Scraper

Homegate Scraper

Deprecated

Scrape homegate.ch for Swiss real estate listings: price, m², rooms, GPS, canton, features & descriptions. 37,500+ buy listings across all 26 cantons. No proxy required.

Pricing

from $1.50 / 1,000 results

Rating

0.0

(0)

Developer

Unfenced Group

Unfenced Group

Maintained by Community

Actor stats

1

Bookmarked

2

Total users

1

Monthly active users

8 days ago

Last modified

Share

Homegate.ch Scraper

homegate-scraper

Extract structured real estate listings from homegate.ch — Switzerland's leading property platform with 37,500+ buy listings across all 26 cantons. Retrieves full property details from server-side rendered data. No API key required.


Why this scraper?

🏔️ All 26 Swiss cantons

Scrape any combination of cantons — Zürich, Bern, Genf, Waadt, Tessin, and more — or scrape all of Switzerland in one run.

📊 Rich structured output

Captures price (CHF), living space (m²), room count, floor, build year, GPS coordinates, and 35+ property features including parking, balcony, garden, elevator, Minergie certification, mountain view, pet policy, child-friendliness, charging station, and more.

Returns all listing photos as a complete imageUrls array (typically 10–20+ images per property). Also extracts floorPlanUrls (PDF floor plans) and virtualTourUrl where available.

📝 Full descriptions

Property descriptions are extracted directly from the page's server-rendered data — no additional requests needed. Available as plain text, HTML, and Markdown.

🗺️ GPS coordinates

Latitude and longitude included for every listing where Homegate provides them, enabling map visualisation and proximity analysis.

👤 Agent & agency data

Captures listing agent name, phone number, email, agency ID, and agency logo URL for direct contact or lead enrichment workflows.

🏗️ New construction data

isNewBuilding and isNewConstruction flags identify new-build properties. newConstructionType and projectUrl provide further detail for development projects.

🔗 Direct URL support

Supply any Homegate search results URL directly to scrape a custom filter (price range, number of rooms, location, etc.) exactly as configured in the Homegate interface.


Input parameters

ParameterTypeDefaultDescription
startUrlsArray[]Homegate.ch search result URLs to scrape directly. Overrides cantons and propertyType.
cantonsArray[]Canton slugs to scrape, e.g. kanton-zuerich, kanton-bern, kanton-genf. Leave empty for all of Switzerland.
propertyTypeStringimmobilienimmobilien (all types), wohnung (apartments), or haus (houses).
maxItemsInteger200Maximum listings to return.
daysOldInteger0Return only listings published within this many days. 0 disables the filter.

Available canton slugs: kanton-zuerich, kanton-bern, kanton-genf, kanton-waadt, kanton-wallis, kanton-luzern, kanton-basel-stadt, kanton-basel-landschaft, kanton-aargau, kanton-solothurn, kanton-freiburg, kanton-tessin, kanton-graubuenden, kanton-thurgau, kanton-st-gallen, kanton-neuenburg, kanton-jura, kanton-zug, kanton-schwyz, kanton-uri, kanton-nidwalden, kanton-obwalden, kanton-glarus, kanton-appenzell-ausserrhoden, kanton-appenzell-innerrhoden, kanton-schaffhausen


Output schema

Listing identity & type

FieldTypeDescription
idStringHomegate listing ID.
urlStringFull URL of the listing detail page.
titleStringListing title as published by the seller.
offerTypeStringAlways "BUY" for sale listings.
propertyTypeStringInput property type filter used (immobilien, wohnung, haus).
categoriesArrayHomegate property categories, e.g. ["APARTMENT","FLAT"] or ["HOUSE","VILLA"].
listingTypeString | nullListing tier: "PREMIUM", "STANDARD", etc.
platformsArrayPlatforms the listing is syndicated to (e.g. ["homegate","immoscout24","tutti"]).

Price

FieldTypeDescription
priceNumber | nullSale price in CHF. Null if not published.
currencyStringAlways "CHF".
priceTextString | nullFormatted price string, e.g. "CHF 850'000".

Location

FieldTypeDescription
streetString | nullStreet address.
postalCodeString | nullSwiss postal code (4 digits).
localityString | nullCity or municipality name.
cantonString | nullFull canton name (e.g. "Zürich", "Bern", "Genf").
latitudeNumber | nullGPS latitude.
longitudeNumber | nullGPS longitude.

Characteristics — space & structure

FieldTypeDescription
livingSpaceNumber | nullNet living area in m².
totalFloorSpaceNumber | nullTotal floor space in m² (may include non-living areas).
lotSizeNumber | nullPlot/land size in m².
numberOfRoomsNumber | nullRoom count in Swiss format (e.g. 3.5, 4.0).
numberOfBathroomsNumber | nullNumber of bathrooms.
numberOfToiletsGuestNumber | nullNumber of guest toilets.
floorNumber | nullFloor the property is on.
numberOfFloorsNumber | nullTotal number of floors in the building.
ceilingHeightNumber | nullCeiling height in metres.
cubageNumber | nullVolume of the building in m³.
utilizationRatioNumber | nullPlot utilisation ratio (Ausnützungsziffer).
yearBuiltNumber | nullYear of construction.
yearLastRenovatedNumber | nullYear of last renovation.

Characteristics — features (Boolean | null)

FieldDescription
isNewBuildingNew-build property.
isOldBuildingListed as old/historic building.
isGroundFloorGround-floor unit.
hasParkingParking space included.
hasGarageGarage included.
hasBalconyHas balcony.
hasTerraceHas terrace.
hasGardenHas garden.
hasElevatorBuilding has elevator.
isWheelchairAccessibleWheelchair accessible.
hasNiceViewListed as having a notable view.
hasMountainViewHas mountain view.
isQuietListed as quiet location.
isSunnyListed as sunny.
isChildFriendlyChild-friendly.
arePetsAllowedPets allowed.
hasWashingMachineWashing machine included or connection available.
hasTumbleDryerTumble dryer included or connection available.
hasDishwasherDishwasher included.
hasFireplaceHas fireplace.
hasCableTvCable TV connection.
hasChargingStationEV charging station available.
isMinergieGeneralMinergie energy efficiency certified (general).
isMinergieCertifiedMinergie Plus / Eco certified.

Images & media

FieldTypeDescription
imageUrlsArrayAll listing photo URLs (typically 10–20+ per property).
imageCountNumberNumber of photos.
floorPlanUrlsArrayPDF floor plan URLs where provided.
virtualTourUrlString | nullVirtual tour link where provided.

Agent & agency

FieldTypeDescription
agentNameString | nullListing agent full name.
agentPhoneString | nullAgent phone number.
agentEmailString | nullAgent email address.
agentAvatarUrlString | nullAgent profile photo URL.
agencyIdString | nullHomegate agency / lister ID.
agencyLogoUrlString | nullAgency logo image URL.

New construction

FieldTypeDescription
isNewConstructionBoolean | nullPart of a new construction project.
newConstructionTypeString | nullProject type, e.g. "NEW_CONSTRUCTION_LIGHT".
projectUrlString | nullDeveloper project website URL.

Description

FieldTypeDescription
descriptionTextString | nullFull property description as plain text.
descriptionHtmlString | nullFull description as HTML.
descriptionMarkdownString | nullFull description as Markdown.

Dates & metadata

FieldTypeDescription
publishDateString | nullPublication date (YYYY-MM-DD).
publishDateISOString | nullPublication date in ISO 8601 format.
contentHashStringMD5 fingerprint of id + title + price for change detection.
isRepostBooleanAlways false.
originalPublishDatenullReserved.
originalUrlnullReserved.
sourceStringAlways "homegate.ch".
scrapedAtStringISO timestamp of when this record was scraped.

Example output record

{
"id": "4002873083",
"url": "https://www.homegate.ch/kaufen/immobilien/objekt4002873083",
"title": "4.5-Zimmer-Wohnung im OG mit zwei Balkonen",
"offerType": "BUY",
"propertyType": "immobilien",
"categories": ["APARTMENT", "FLAT"],
"listingType": "PREMIUM",
"platforms": ["homegate", "immoscout24", "alleimmobilien", "home", "anibis"],
"price": 1650600,
"currency": "CHF",
"priceText": "CHF 1.650.600",
"livingSpace": null,
"totalFloorSpace": 112,
"lotSize": 1778,
"numberOfRooms": 4.5,
"numberOfBathrooms": 2,
"floor": 1,
"yearBuilt": 2026,
"isNewBuilding": true,
"street": "Eichacherstrasse 21",
"postalCode": "8904",
"locality": "Aesch ZH",
"canton": "Zürich",
"latitude": 47.339204,
"longitude": 8.442492,
"hasBalcony": true,
"hasElevator": true,
"hasGarage": true,
"hasMountainView": true,
"isSunny": true,
"isQuiet": true,
"isChildFriendly": true,
"arePetsAllowed": true,
"isWheelchairAccessible": true,
"imageUrls": [
"https://media2.homegate.ch/listings/v2/e218sub/4002873083/image/9cc62bc8.jpg",
"https://media2.homegate.ch/listings/v2/e218sub/4002873083/image/37c2a85b.jpg"
],
"imageCount": 16,
"floorPlanUrls": ["https://media2.homegate.ch/listings/v2/e218sub/4002873083/document/6956d46f.pdf"],
"virtualTourUrl": "https://kuula.co/share/collection/7Ml1y?...",
"agentName": "Ramona Schiesser",
"agentPhone": "+41556104746",
"agentEmail": "ramona.schiesser@lerchpromotionen.ch",
"agencyId": "e218sub",
"agencyLogoUrl": "https://media2.homegate.ch/t_customer_logo/logos/l_e218sub_v2.jpg",
"isNewConstruction": true,
"newConstructionType": "NEW_CONSTRUCTION_LIGHT",
"projectUrl": "https://ameichacher.ch/",
"descriptionText": "Ruhe, Sonne und eine beeindruckende Weitsicht ...",
"descriptionHtml": "<p>Ruhe, Sonne...</p>",
"descriptionMarkdown": "Ruhe, Sonne ...",
"publishDate": "2026-01-26",
"publishDateISO": "2026-01-26T17:03:33.924Z",
"contentHash": "a3f9c12e4b7d8e1f",
"isRepost": false,
"source": "homegate.ch",
"scrapedAt": "2026-05-06T10:00:00.000Z"
}

Examples

All buy listings in Zürich:

{
"cantons": ["kanton-zuerich"],
"propertyType": "immobilien",
"maxItems": 200
}

Apartments in Bern and Genf:

{
"cantons": ["kanton-bern", "kanton-genf"],
"propertyType": "wohnung",
"maxItems": 500
}

Custom search URL (with price and rooms filter set in Homegate):

{
"startUrls": [
{ "url": "https://www.homegate.ch/kaufen/immobilien/kanton-zuerich/trefferliste?pr=500000-1500000&nrooms=3-5" }
],
"maxItems": 100
}

Recent new listings across all of Switzerland:

{
"propertyType": "immobilien",
"daysOld": 7,
"maxItems": 1000
}

💰 Pricing

$1.50 per 1,000 results — you only pay for successfully retrieved listings.

ResultsCost
100~$0.15
1,000~$1.50
10,000~$15.00
100,000~$150.00

Flat-rate alternatives typically charge $29–$49/month regardless of usage.


Performance

Run sizeApprox. time
200 listings1–2 min
1,000 listings5–8 min
5,000 listings25–40 min

Known limitations

  • Only buy (for-sale) listings are available — rental listings (/mieten) are not accessible from the scraper infrastructure.
  • Pagination is capped at 50 pages (1,000 results) per search URL. To exceed this, combine multiple canton filters or use startUrls with different search configurations.
  • Publish dates are available only when Homegate includes them in the server-rendered data.

Technical details

  • Source: window.INITIAL_STATE SSR injection (Vue/Pinia) — pure JSON-in-HTML, zero CSS selectors
  • Memory: 256 MB
  • Retry: Automatic retry on network errors, exponential backoff, 3 attempts per request
  • v2.0: Removed cheerio; full image galleries, agent data, and 20+ new fields extracted entirely from SSR state

Additional services

Need a custom actor, additional filters, scheduled runs, or integration support?.nl](mailto:info@unfencedgroup.nl) — we build on request.



Need a custom scraper?

Unfenced Group builds Apify actors for any website — for free.

If the site you need isn't in our portfolio yet, just ask. We scope, build, and publish it at no cost to you. You only pay for results — we absorb the compute and proxy costs ourselves. Same pay-per-result pricing, same quality, same standards as every actor in this portfolio.

Get in touch: www.unfencedgroup.nl