Comparis Property Search Scraper avatar
Comparis Property Search Scraper

Pricing

from $3.00 / 1,000 results

Go to Apify Store
Comparis Property Search Scraper

Comparis Property Search Scraper

Efficiently scrape property listings from Comparis.ch, Switzerland's leading real estate comparison platform. Extract comprehensive rental and sale data including prices, locations, property types, and market ratings. Perfect for real estate agencies, market analysts, & property investment research

Pricing

from $3.00 / 1,000 results

Rating

0.0

(0)

Developer

Stealth mode

Stealth mode

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

5 days ago

Last modified

Share

Comparis.ch Property Search Scraper: Extract Swiss Real Estate Market Data

Understanding Comparis.ch and Its Value in Swiss Real Estate

Comparis.ch stands as Switzerland's premier comparison platform for real estate, insurance, and financial services. Its property section aggregates listings from multiple sources, creating the most comprehensive view of the Swiss rental and sales market. Unlike individual agency websites, Comparis provides standardized data across thousands of properties, making it invaluable for market intelligence.

The platform's unique Comparis Points rating system evaluates properties based on price-quality ratio, helping users identify good deals. For analysts, this standardized scoring enables quantitative comparison across different property types, regions, and price segments—insights impossible to gain from fragmented sources.

Switzerland's complex real estate market, with four language regions and significant cantonal variations in pricing and regulations, demands comprehensive data collection. Manually gathering property information across multiple searches, locations, and property types would require extensive time navigating search filters and copying details. The Comparis.ch Property Search Scraper automates this entire process, transforming search results into structured datasets ready for analysis, investment decisions, or competitive intelligence.

What This Scraper Extracts and Target Users

The Comparis.ch Property Search Scraper processes search result pages, extracting multiple property listings efficiently. This approach is optimal when building databases across different locations, price ranges, or property types without needing to access individual property detail pages.

Key Data Captured:

The scraper extracts essential property information including ad identifiers, titles, property types (apartment, house, commercial), addresses, prices with currency, essential information (rooms, square meters), listing dates, and high-quality image URLs. It captures Comparis-specific data like Comparis Points ratings, premium listing status, price development indicators, and partner information (real estate agencies). Additional fields include contact details, property type IDs, deal types (rent/sale), and pricing type classifications.

Who Should Use This Tool:

Real Estate Agencies monitor competitor listings, pricing strategies, and market inventory levels across different Swiss regions. Property Investment Firms analyze market trends, identify undervalued properties through Comparis Points, and assess regional price developments. Market Research Companies track rental and sales price evolution, inventory turnover rates, and regional market dynamics. Relocation Services build comprehensive property databases for international clients moving to Switzerland. PropTech Startups integrate Swiss market data into applications, comparison tools, or investment platforms. Cantonal Housing Authorities monitor affordability trends and housing availability for policy development.

Input Configuration: Navigating Comparis Search URLs

The scraper processes Comparis.ch search result URLs—the pages displaying multiple properties after applying filters. Understanding the URL structure is crucial for targeting specific market segments.

Example Input Configuration:

{
"proxy": {
"useApifyProxy": false
},
"max_items_per_url": 20,
"ignore_url_failures": true,
"urls": [
"https://www.comparis.ch/immobilien/result/list?requestobject=%7B%22DealType%22%3A10%2C%22SwapProperty%22%3Anull%2C%22SiteId%22%3A0%2C%22RootPropertyTypes%22%3A%5B%5D%2C%22PropertyTypes%22%3A%5B%5D%2C%22RoomsFrom%22%3Anull%2C%22RoomsTo%22%3Anull%2C%22FloorSearchType%22%3A0%2C%22LivingSpaceFrom%22%3Anull%2C%22LivingSpaceTo%22%3Anull%2C%22PriceFrom%22%3Anull%2C%22PriceTo%22%3Anull%2C%22ComparisPointsMin%22%3A0%2C%22AdAgeMax%22%3A0%2C%22AdAgeInHoursMax%22%3Anull%2C%22Keyword%22%3A%22%22%2C%22WithImagesOnly%22%3Anull%2C%22WithPointsOnly%22%3Anull%2C%22Radius%22%3Anull%2C%22MinAvailableDate%22%3A%221753-01-01T00%3A00%3A00%22%2C%22MinChangeDate%22%3A%221753-01-01T00%3A00%3A00%22%2C%22LocationSearchString%22%3Anull%2C%22Sort%22%3A3%2C%22HasBalcony%22%3Afalse%2C%22HasTerrace%22%3Afalse%2C%22HasFireplace%22%3Afalse%2C%22HasDishwasher%22%3Afalse%2C%22HasWashingMachine%22%3Afalse%2C%22HasLift%22%3Afalse%2C%22HasParking%22%3Afalse%2C%22PetsAllowed%22%3Afalse%2C%22MinergieCertified%22%3Afalse%2C%22WheelchairAccessible%22%3Afalse%2C%22LowerLeftLatitude%22%3Anull%2C%22LowerLeftLongitude%22%3Anull%2C%22UpperRightLatitude%22%3Anull%2C%22UpperRightLongitude%22%3Anull%2C%22ShowComparisPoints%22%3Afalse%7D&page=99"
]
}

Example Screenshot:

Parameter Explanation:

proxy configuration: Set to false in this example, meaning no proxy is used. For large-scale scraping or to avoid potential rate limiting, enable Apify's residential proxies by setting useApifyProxy: true and selecting appropriate proxy groups. Swiss-based proxies may improve access reliability.

max_items_per_url: Controls extraction volume per search page. Setting to 20 extracts up to 20 property listings from each URL. Comparis typically displays 20 properties per page, so this captures complete pages. Adjust higher (50-100) for comprehensive extraction if pages contain more results.

ignore_url_failures: When true, the scraper continues processing remaining URLs even if some fail. Essential when scraping multiple search pages—one broken URL won't stop your entire job. Set to false only when you need guaranteed success for every URL.

urls array: Contains search result page URLs to scrape. The complex requestobject parameter encodes all search filters (deal type, property types, rooms, price ranges, amenities, location). The page parameter enables pagination.

Understanding the Request Object: The URL-encoded JSON contains filters like:

  • DealType: 10 (rental), 20 (sale)
  • RoomsFrom/RoomsTo: Room count range
  • PriceFrom/PriceTo: Price range in CHF
  • LivingSpaceFrom/LivingSpaceTo: Square meter range
  • ComparisPointsMin: Minimum rating threshold
  • LocationSearchString: City/region targeting
  • Amenity filters: HasBalcony, HasParking, PetsAllowed, etc.
  • Sort: Sorting method (price, date, relevance)

Building Search URLs: Perform searches manually on Comparis.ch with desired filters, then copy the resulting URL. For pagination, increment the page parameter (page=1, page=2, etc.). For comprehensive market coverage, create multiple URLs with different location or price filters.

Pro Tip: Decode the requestobject parameter using a URL decoder to understand and modify search filters programmatically. This enables automated generation of search URLs for systematic market coverage.

Complete Output Structure and Field Definitions

The scraper returns JSON arrays with each property listing as an object. Understanding each field enables effective analysis and application integration.

Ad ID: Unique identifier for the property listing on Comparis. Purpose: Primary key for databases, tracking specific listings over time, avoiding duplicates in merged datasets, referencing properties in analysis.

Site ID: Identifies the source website or partner from which Comparis aggregated the listing. Purpose: Tracking which real estate portals contribute properties, analyzing source quality, filtering by preferred partners.

Ad Status: Current listing state (active, rented, sold, expired). Purpose: Filtering active opportunities, calculating absorption rates, analyzing time-on-market before status changes.

Title: Property listing headline as displayed in search results. Purpose: Quick property identification, keyword extraction for categorization, display in user interfaces.

Property Type Text: Human-readable property classification (e.g., "Apartment," "House," "Studio," "Commercial Space"). Purpose: Categorizing inventory by type, filtering searches, analyzing market composition by property category.

Address: Complete property address including street, postal code, and city. Purpose: Geographic analysis, location-based filtering, mapping properties, analyzing neighborhood-level pricing.

Essential Information: Condensed property details typically including room count and living space (e.g., "3.5 rooms, 85 m²"). Purpose: Quick filtering by size requirements, calculating price per square meter, standardizing property comparisons.

Price: Rental price (monthly) or sale price depending on deal type. Purpose: Primary valuation metric, price trend analysis, affordability calculations, market segmentation.

Currency: Always CHF for Swiss properties but included for data standardization. Purpose: International data integration, multi-currency analysis for cross-border investors.

Date: Listing publication or last update date. Purpose: Freshness indicator, calculating time-on-market, identifying newly listed properties, tracking inventory turnover.

Image URL: Direct link to primary property image. Purpose: Visual display in applications, image analysis (architecture styles, property condition), enhancing user engagement.

Is Premium Listed: Boolean indicating whether agency paid for premium placement. Purpose: Identifying highly promoted properties, analyzing premium listing effectiveness, competitive intelligence on agency marketing spend.

Comparis Points: Proprietary rating (typically 0-100) evaluating price-quality ratio. Purpose: Identifying good deals, quantitative property comparison, filtering by value threshold, market efficiency analysis.

Partner Logo URL: Link to real estate agency or partner logo. Purpose: Visual branding in displays, identifying listing sources, tracking agency market presence.

Partner Name: Real estate agency or portal name managing the listing. Purpose: Analyzing agency market share, filtering by preferred partners, competitive agency benchmarking.

Contact Information: Phone numbers, email addresses, or contact methods for inquiries. Purpose: Direct lead generation, contact preference analysis, integration with CRM systems.

Price Development Direction: Indicator showing if price increased, decreased, or remained stable since listing. Purpose: Identifying price-reduced properties (potential negotiation opportunities), tracking market dynamics, seller motivation signals.

Price Value: Numeric price for computational analysis (may differ from displayed price format). Purpose: Mathematical operations, price statistics, sorting and filtering algorithms.

Area Value: Numeric living space in square meters. Purpose: Calculating price per m², size-based filtering, standardized comparisons, market analysis by property size.

Property Type ID: Numeric code for property category. Purpose: Database normalization, programmatic filtering, classification algorithms, cross-referencing with property taxonomies.

Deal Type: Numeric code indicating rental (10) or sale (20) transaction. Purpose: Segmenting rental vs. sales markets, separate analysis of investment vs. rental trends.

Use Internal Links: Boolean indicating whether to use Comparis internal property URLs. Purpose: Navigation control in applications, determining whether to redirect users to Comparis or external partner sites.

Show Comparis Rating: Boolean controlling rating display visibility. Purpose: UI presentation logic, filtering properties with/without ratings.

Member Logo URL: Additional logo field for Comparis member agencies. Purpose: Enhanced branding for premium members, distinguishing member vs. non-member listings.

Show Default Personalization Segment: Boolean for personalized recommendation systems. Purpose: Algorithmic property matching, user preference learning systems.

Price Type Text: Classification like "Monthly Rent," "Purchase Price," "Annual Rent." Purpose: Clarifying pricing context, standardizing comparison (converting annual to monthly), display formatting.

Sample Output:

[
{
"ad_id": 36438977,
"site_id": 254,
"ad_status": 0,
"title": "Appartement rénové de 3.5 pièces, 102 m², vieille ville",
"property_type_text": "Wohnung",
"address": [
"Estavayer-le-Lac",
"1470 Estavayer"
],
"essential_information": [
"3.5 Zimmer",
"102 m²",
"1. Etage"
],
"price": "2'100",
"currency": "CHF",
"date": "2026-01-03T09:45:58",
"image_url": "https://assets.comparis.ch/image/upload/s--QIVXqSMG--/c_fill,f_auto,h_344,q_auto,w_458/v1/immobilien/Images/DataCollect/e40c17cc-310a-4537-2c69-bf9d24c178d9.jpg",
"is_premium_listed": false,
"comparis_points": null,
"partner_logo_url": "https://assets.comparis.ch/image/upload/s--afxjsdkP--/f_auto,q_auto/v1/immobilien/Images/Static/logo_large_site_254.jpg",
"partner_name": "Properstar",
"contact_information": {
"has_contact_form": true,
"has_missing_address_contact_form": false,
"has_missing_floor_plan_contact_form": true,
"contact_site_id": 254,
"contact_site_name": "Properstar",
"contact_site_logo_url": null,
"contact_form_type": 1,
"default_contact_message": "Guten Tag\r\nIch interessiere mich für das Objekt 'Appartement rénové de 3.5 pièces, 102 m², vieille ville' in Estavayer. Bitte kontaktieren Sie mich. Freundliche Grüsse",
"advertiser_information": null,
"vendor_information": null,
"visitation_contact_information": null,
"is_vendor_contact_form": false,
"online_application_url": null,
"online_application_remarks": null
},
"price_development_direction": null,
"price_value": 2100,
"area_value": 102,
"property_type_id": 1,
"deal_type": 10,
"use_internal_links": false,
"show_comparis_rating": false,
"member_logo_url": null,
"show_default_personalization_segment": false,
"price_type_text": "Mietpreis pro Monat",
"from_url": "https://www.comparis.ch/immobilien/result/list?requestobject=%7B%22DealType%22%3A10%2C%22SiteId%22%3A0%2C%22RootPropertyTypes%22%3A%5B%5D%2C%22PropertyTypes%22%3A%5B%5D%2C%22RoomsFrom%22%3Anull%2C%22RoomsTo%22%3Anull%2C%22FloorSearchType%22%3A0%2C%22LivingSpaceFrom%22%3Anull%2C%22LivingSpaceTo%22%3Anull%2C%22PriceFrom%22%3Anull%2C%22PriceTo%22%3Anull%2C%22ComparisPointsMin%22%3A0%2C%22ShowComparisPoints%22%3Anull%2C%22AdAgeMax%22%3A0%2C%22AdAgeInHoursMax%22%3Anull%2C%22Keyword%22%3A%22%22%2C%22WithImagesOnly%22%3Anull%2C%22WithPointsOnly%22%3Anull%2C%22Radius%22%3Anull%2C%22MinAvailableDate%22%3A%221753-01-01T00%3A00%3A00%22%2C%22MinChangeDate%22%3A%221753-01-01T00%3A00%3A00%22%2C%22LocationSearchString%22%3Anull%2C%22Sort%22%3A3%2C%22HasBalcony%22%3Afalse%2C%22HasTerrace%22%3Afalse%2C%22HasFireplace%22%3Afalse%2C%22HasDishwasher%22%3Afalse%2C%22HasWashingMachine%22%3Afalse%2C%22HasLift%22%3Afalse%2C%22HasParking%22%3Afalse%2C%22PetsAllowed%22%3Afalse%2C%22MinergieCertified%22%3Afalse%2C%22WheelchairAccessible%22%3Afalse%2C%22LowerLeftLatitude%22%3Anull%2C%22LowerLeftLongitude%22%3Anull%2C%22UpperRightLatitude%22%3Anull%2C%22UpperRightLongitude%22%3Anull%2C%22SwapProperty%22%3Anull%7D"
}
]

Step-by-Step Implementation Guide

1. Define Target Market: Identify your research scope—specific cantons, cities, property types (apartments vs. houses), deal types (rental vs. sale), or price ranges. Perform test searches on Comparis.ch to verify filters return relevant results.

2. Construct Search URLs: Manually execute searches with desired filters on Comparis.ch. Copy the resulting URLs. For comprehensive coverage, create URLs for different locations, property types, and price segments. Note the page parameter for pagination planning.

3. Configure Scraper Input: Build JSON configuration with collected URLs. Set max_items_per_url to 20 for standard pages. Enable ignore_url_failures for robustness when processing many URLs. Consider enabling proxies for large-scale extraction.

4. Execute Scraping Job: Launch through Apify console and monitor real-time progress. Processing 10 search pages with 20 items each typically completes in 2-4 minutes, varying with platform load and page complexity.

5. Validate Data Quality: Preview results in dataset tab. Verify critical fields (price, address, property_type) are populated. Check that property types and locations match your target criteria. Identify any systematic issues requiring URL adjustments.

6. Export and Analyze: Export in preferred format—JSON for application integration, CSV for spreadsheet analysis, Excel for business reporting. Clean data by filtering out non-active listings if only current inventory is needed.

7. Handle Pagination Systematically: For large datasets spanning multiple pages, either include all page URLs in one run (page=1, page=2, page=3...) or set max_items_per_url higher than single-page limits to automatically handle pagination.

Error Handling: If URLs consistently fail, verify they're search result pages, not individual property detail pages. Check that filter parameters in requestobject are valid—Comparis occasionally updates parameter structures. The activity log provides detailed error information.

Optimization Tips: For city-level analysis, create separate URLs for each major city rather than one national search. This produces cleaner datasets and enables more granular error handling. Schedule regular scraping to track market changes over time.

Strategic Applications for Swiss Real Estate Intelligence

Rental Market Analysis: Track rental price evolution across Swiss cities and cantons. Identify emerging expensive vs. affordable neighborhoods. Analyze room count distribution and amenity availability (parking, balconies) by location. Calculate price per square meter benchmarks by region and property type.

Investment Property Identification: Filter properties by Comparis Points to identify undervalued opportunities. Track price development direction—properties with reduced prices may indicate motivated sellers. Analyze premium listed properties to understand where agencies invest marketing budgets, signaling competitive or desirable markets.

Competitive Agency Intelligence: Track which agencies (partner_name) dominate specific regions or property types. Analyze their pricing strategies, inventory levels, and premium listing usage. Identify market gaps where fewer agencies operate—potential expansion opportunities.

Market Inventory Monitoring: Calculate property counts by type, location, and price range. Track how inventory levels change over time—increasing inventory signals buyer/renter markets, decreasing inventory indicates seller/landlord markets. Monitor time-on-market by tracking when listings first appear and when ad_status changes.

Affordability Studies: Combine price data with Swiss wage statistics to calculate affordability indices by canton. Identify regions where rental costs exceed recommended income percentages. Support housing policy development with quantitative data.

Amenity Value Analysis: Compare properties with specific amenities (parking, balconies, pet-friendly) against those without to quantify price premiums. Understand what features drive highest value in different market segments.

Partner Network Optimization: Real estate platforms can analyze which partners (site_id, partner_name) contribute highest-quality listings (measured by Comparis Points, image quality, information completeness). Prioritize partnerships with top-performing sources.

Geographic Price Mapping: Use address data to create heat maps showing price distributions across cities and regions. Identify micro-markets with price anomalies. Support location-based property recommendations.

Maximizing Data Value and Best Practices

Schedule Regular Extractions: Swiss real estate markets, especially rentals in major cities, change rapidly. Weekly scraping captures new listings and price adjustments. Store historical data to analyze seasonal patterns, long-term price trends, and market cycle phases.

Segment by Canton and Language Region: Switzerland's cantonal variations in regulations, taxes, and demographics create distinct sub-markets. Analyze separately: German-speaking (Zürich, Bern), French-speaking (Geneva, Lausanne), Italian-speaking (Ticino) regions for nuanced insights.

Calculate Price Per Square Meter: Use price_value and area_value to standardize comparisons across different property sizes. This metric reveals true value better than absolute prices and enables cross-property-type analysis.

Track Comparis Points Distribution: Analyze the distribution of Comparis Points across your target market. Properties scoring above 80 points represent excellent value; below 50 may indicate overpricing or quality issues. Use this for investment screening.

Enrich With External Data: Combine Comparis data with Swiss Federal Statistical Office data (population growth, income levels), public transport maps (proximity to stations), school ratings, and tax rates. Enhanced datasets support sophisticated investment models.

Monitor Premium Listing ROI: For agencies using the scraper competitively, track correlation between is_premium_listed status and time-to-rent/sale. Quantify whether premium placement justifies costs based on faster transaction times.

Quality Assurance Checks: Implement validation rules—prices shouldn't be zero, areas should be within reasonable ranges (10-500m² for apartments), addresses should contain valid postal codes. Flag anomalies for manual review before analysis.

Respect Data Freshness: Note the date field and prioritize recent listings. Properties listed over 90 days ago may have stale information or hidden issues preventing transactions. Implement aging filters in analysis.

Build Comparable Property Databases: Group properties by similar characteristics (location radius, size range, property type) to create comparable sets. This supports accurate market value assessments and investment property evaluation.

Create Alert Systems: Set up automated monitoring for properties meeting specific criteria (Comparis Points >85, specific locations, price reductions). Early identification of opportunities provides competitive advantage in fast-moving markets.

Data Governance and Compliance

Scraping Frequency Management: Balance data freshness needs against platform load. For general market monitoring, weekly extractions suffice. For competitive analysis or hot markets, daily scraping may be necessary. Avoid excessive concurrent requests.

Data Storage and Retention: Implement structured storage with timestamps and source URLs. Maintain historical snapshots to enable longitudinal analysis. Consider data retention policies complying with Swiss data protection regulations.

Privacy Considerations: Contact information (phone numbers, emails) may constitute personal data under Swiss Federal Act on Data Protection (FADP). Implement appropriate security measures, access controls, and use data only for intended purposes. Avoid republishing personal contact details without consent.

Terms of Service Compliance: Review Comparis.ch terms of service regarding automated access. Use scraped data for analysis and internal purposes. Avoid creating competing platforms that directly replicate Comparis functionality.

Data Accuracy Disclaimers: Property information on comparison platforms may lag behind source updates. Cross-reference critical data points before making significant decisions. Implement verification processes for investment-grade analysis.

Attribution Practices: When presenting analysis based on Comparis data, acknowledge the source. Maintain partner_name and site_id fields to credit original listing sources in any public-facing applications or reports.

Conclusion

The Comparis.ch Property Search Scraper transforms Switzerland's leading real estate comparison platform into actionable market intelligence. From rental affordability analysis to investment opportunity identification, this tool provides the comprehensive data foundation for informed real estate decisions. Whether you're optimizing agency operations, conducting cantonal market research, or building PropTech solutions, systematic Comparis data extraction delivers competitive advantage in Swiss real estate markets. Start extracting Swiss property insights today.