Etuovi Scraper - Finnish Real Estate Listings avatar

Etuovi Scraper - Finnish Real Estate Listings

Pricing

from $1.20 / 1,000 result scrapeds

Go to Apify Store
Etuovi Scraper - Finnish Real Estate Listings

Etuovi Scraper - Finnish Real Estate Listings

Scrape real estate listings from Etuovi.com -- Finland's #2 property portal. Search apartments and houses for sale by city, region, or nationwide. Get prices, sizes, rooms, locations, coordinates, images, and agency details. No login needed.

Pricing

from $1.20 / 1,000 result scrapeds

Rating

0.0

(0)

Developer

Studio Amba

Studio Amba

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Categories

Share

Etuovi Scraper

Extract real estate listings from Etuovi.com -- Finland's #2 property portal with tens of thousands of active listings -- into structured JSON with prices, sizes, room layouts, locations, coordinates, images, and agency details.

What is Etuovi Scraper?

Etuovi Scraper extracts structured property data from Etuovi.com, helping you monitor the Finnish real estate market, compare prices across cities, and automate property research -- all without manual browsing or login.

  • Track property prices by city and district: extract listings with prices, living area in m2, and room counts to build price maps across Helsinki, Tampere, Turku, Espoo, and every Finnish municipality
  • Monitor new listings automatically: schedule daily runs and catch new apartments or houses the moment they appear on Etuovi
  • Build property datasets for analysis: export thousands of listings with GPS coordinates, agency info, and building details for valuation models, academic research, or investment screening
  • Compare neighbourhoods within a city: filter by district (e.g. Kallio, Munkkiniemi) or apply a price range to focus on a specific segment
  • Feed your CRM or dashboard: export structured data to Google Sheets, Airtable, or any BI tool via Apify integrations

Etuovi.com has no public API and no bulk export. This scraper reads the JSON state Etuovi embeds in every search page to deliver clean, structured data at scale. No login, no cookies, no browser extensions needed.

What data does Etuovi Scraper extract?

Each listing includes the following fields:

  • title -- built from property subtype and address, e.g. "Apartment, Perustie 18, Munkkiniemi Helsinki"
  • propertyType -- high-level category, always "residential" for now
  • propertySubtype -- building type, e.g. "Apartment", "Detached house", "Row house", "Terraced house"
  • listingType -- always "sale" (Etuovi.com lists for-sale property only; rentals live on the sister site vuokraovi.com)
  • price -- asking price in EUR
  • currency -- always "EUR"
  • pricePerSqm -- calculated price divided by living area
  • area / totalArea -- living area and total area in square meters
  • rooms -- raw room structure, e.g. "2h, k, vh"
  • roomCount -- normalized room count, e.g. "2", "3", "Studio"
  • address -- street address
  • district -- district or neighbourhood name
  • city -- city or municipality name
  • location -- full location string (address, district, city)
  • latitude / longitude -- GPS coordinates for mapping
  • constructionYear -- year the building was completed
  • floorLevel / buildingFloorCount -- unit floor and total building floors
  • isNewBuilding -- true if listed as a new-build property
  • publishedAt -- ISO 8601 timestamp the listing was published or last updated
  • imageUrl / imageUrls -- main property photo URL(s)
  • agencyName / agencyUrl -- the real estate agency or seller office marketing the property
  • url -- direct link to the listing on Etuovi.com
  • friendlyId -- Etuovi's public listing identifier
  • scrapedAt -- ISO 8601 timestamp when data was collected

How to scrape Etuovi data

The input is simple: pick a location, optional price range, and hit run. You can configure the scraper through the Apify Console UI or programmatically via the API.

Input fields

FieldTypeDefaultDescription
locationString--Finnish city or region, e.g. "Helsinki", "Tampere", "Turku", "Espoo". Leave empty for a nationwide search
searchQueryString--Free-text filter on title/district/city, e.g. "Kallio"
priceFromInteger--Minimum price in EUR
priceToInteger--Maximum price in EUR
maxResultsInteger50Maximum listings to return (0 = unlimited)
proxyConfigurationObject--Proxy settings (Finnish residential recommended)

Tips for best results

  • Default input works out of the box -- running with empty {} input returns a nationwide sweep of apartments and houses for sale
  • Use location for city-level filtering -- set it to "Helsinki" or "Tampere" to narrow results geographically
  • Use searchQuery for district-level filtering -- combine with location for precise results, e.g. location: "Helsinki", searchQuery: "Kallio"
  • Use price filters for budget ranges -- set priceFrom and priceTo to focus on your target segment
  • Finnish residential proxy recommended -- Etuovi works reliably from any residential IP. The default proxy config handles this automatically on Apify
  • Start small -- test with maxResults: 10 first, then scale up once you verify the output matches your needs

Output

Results are stored in a dataset that you can download in JSON, CSV, Excel, XML, or HTML format directly from the Apify Console.

JSON example

{
"title": "Apartment, Perustie 18, Munkkiniemi Helsinki",
"propertyType": "residential",
"propertySubtype": "Apartment",
"listingType": "sale",
"price": 273000,
"currency": "EUR",
"pricePerSqm": 6067,
"area": 45,
"totalArea": 45,
"rooms": "2h, k, vh",
"roomCount": "2",
"address": "Perustie 18",
"district": "Munkkiniemi",
"city": "Helsinki",
"location": "Perustie 18 Munkkiniemi Helsinki",
"latitude": 60.198,
"longitude": 24.880809,
"constructionYear": 1938,
"floorLevel": 2,
"buildingFloorCount": 6,
"isNewBuilding": false,
"publishedAt": "2026-08-04T16:52:33.494+03:00",
"imageUrl": "https://d3ls91xgksobn.cloudfront.net/1200x900/etuovimedia/images/property/import/42/2667042/0e76b9541118d347871c0e0e51d244c4/e7611b59e237da999ad015151beba90f/ORIGINAL.jpeg",
"imageUrls": [
"https://d3ls91xgksobn.cloudfront.net/1200x900/etuovimedia/images/property/import/42/2667042/0e76b9541118d347871c0e0e51d244c4/e7611b59e237da999ad015151beba90f/ORIGINAL.jpeg"
],
"agencyName": "Kiinteistomaailma Espoo Tapiola | Amuletti Asunnot Oy",
"agencyUrl": "http://www.kiinteistomaailma.fi/",
"url": "https://www.etuovi.com/kohde/50544969",
"friendlyId": "50544969",
"scrapedAt": "2026-08-04T14:22:47.062Z"
}

How much does it cost to scrape Etuovi?

Etuovi Scraper reads directly from the JSON state Etuovi embeds in its own search pages -- no browser rendering needed. This makes it fast and very affordable.

ScenarioEst. costTime
50 listings~$0.05~15 sec
500 listings~$0.25~1.5 min
5,000 listings~$1.50~8 min

Can I integrate Etuovi Scraper with other apps?

Yes. Etuovi Scraper connects with any tool through Apify integrations:

  • Google Sheets -- automatically export property data to a spreadsheet
  • Slack / Email -- get notified when new listings match your criteria
  • Zapier / Make -- trigger workflows when data is ready
  • Airtable -- build a searchable property database
  • REST API -- call the scraper programmatically from any language
  • Webhooks -- get notified when a run finishes

Can I use Etuovi Scraper as an API?

Yes. Use the Apify API to run Etuovi Scraper programmatically.

Python:

from apify_client import ApifyClient
client = ApifyClient("YOUR_API_TOKEN")
run = client.actor("studio-amba/etuovi-scraper").call(run_input={
"location": "Helsinki",
"maxResults": 200,
})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(f"{item['title']} -- EUR {item['price']:,} -- {item['city']}")

JavaScript:

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_API_TOKEN' });
const run = await client.actor('studio-amba/etuovi-scraper').call({
location: 'Helsinki',
maxResults: 200,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

Check the API tab for full documentation.

FAQ

What is Etuovi.com?

Etuovi.com is Finland's #2 real estate portal, operated by Alma Media. It lists tens of thousands of active properties -- apartments, detached houses, row houses, and terraced houses -- for sale across every Finnish municipality, from Helsinki and the greater capital region to smaller towns nationwide.

How does Etuovi Scraper work?

Every Etuovi search page (e.g. /myytavat-asunnot/helsinki) server-renders a window.__INITIAL_STATE__ JSON blob containing the current page of listings. The scraper reads that blob directly with plain HTTP requests -- no browser needed -- and pages through results using Etuovi's own ?sivu= (page) parameter, 30 listings per page.

Does Etuovi Scraper include rentals?

No. Etuovi.com only lists property for sale. Finnish rental listings live on the sister site vuokraovi.com, which is a separate portal outside this scraper's scope.

Can I filter by city or district?

Yes. Set location to any Finnish city or region name, e.g. "Helsinki", "Tampere", "Turku", "Oulu", "Espoo". For neighbourhood-level filtering within a city, combine location with searchQuery, e.g. location: "Helsinki", searchQuery: "Kallio".

Can I filter by price range?

Yes. Use priceFrom and priceTo to set a EUR price range. For example, apartments between 150,000 EUR and 400,000 EUR: priceFrom: 150000, priceTo: 400000.

This scraper extracts publicly available listing data that Etuovi.com displays to all visitors. The data is factual (prices, addresses, property specifications) and does not contain private personal information. As with any scraping tool, use the data responsibly and in compliance with applicable laws.

Limitations

  • Finland only, for-sale listings only. Etuovi.com covers Finnish real estate for sale; rentals are on vuokraovi.com and out of scope for this actor.
  • List-page data only. Fields come from Etuovi's search-result payload, not individual listing pages -- long-form descriptions are not included, but every structured field (price, size, rooms, location, coordinates, images, agency) is.
  • Some fields may be null. Not all sellers provide complete information -- constructionYear, floorLevel, or agencyUrl may be missing on some listings.
  • Finnish city/region names. The location filter matches Etuovi's own URL slugs; both accented ("Jyväskylä") and unaccented ("Jyvaskyla") spellings work.

Other Nordic and European real estate scrapers

Combine Etuovi Scraper with these actors for comprehensive European property market coverage:

Your feedback

Found a bug or have a feature request? Please open an issue on the Issues tab. We actively maintain this scraper and respond to all reports.