Hemnet Slutpriser Pro — Swedish Sold Prices & Market Analytics avatar

Hemnet Slutpriser Pro — Swedish Sold Prices & Market Analytics

Pricing

from $1.90 / 1,000 sold property / listing records

Go to Apify Store
Hemnet Slutpriser Pro — Swedish Sold Prices & Market Analytics

Hemnet Slutpriser Pro — Swedish Sold Prices & Market Analytics

Swedish sold prices (slutpriser) plus the analytics layer Hemnet does not publish: area x month median/p25/p75 kr/m2, sale-to-asking ratio, days on market, comparables, mäklare league tables and BRF org numbers.

Pricing

from $1.90 / 1,000 sold property / listing records

Rating

0.0

(0)

Developer

Karl Sundström

Karl Sundström

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share

Apify actor vhsgreed/hemnet-slutpriser. Swedish property sold prices (slutpriser) plus the market analytics layer Hemnet does not publish. Slutpris (final price), utgångspris (asking price), kr/m², boarea, avgift, BRF organisationsnummer — and, on top, the derived statistics a buyer cannot read off the source: area × month medians and percentiles, sale-to-asking ratios, days on market, comparables, and mäklare league tables.

Most Hemnet scrapers return asking prices because that is what listing pages lead with. The data buyers actually pay for is the slutpris — what the home sold for, and whether it went above or below asking — plus the area-level statistics nobody publishes.


What can a buyer NOT get by going to Hemnet themselves?

Hemnet shows one sold price at a time; it does not hand you a dataset, per-area statistics, a comparables engine, or change monitoring. This actor computes:

  1. Area × month aggregates — median_price_per_sqm_sek, p25_, p75_, sale_count, and the median sale_to_asking_ratio per area per month. Nobody publishes sale-to-asking by area.
  2. Sale-to-asking ratio — final ÷ asking, per record and per area × month.
  3. Days on market — matched listing → sale (built from listings you capture, plus the run watermark across scheduled runs).
  4. Per-record derived — price_per_sqm_derived, asking_vs_area_median_pct_derived, price_per_sqm_percentile.
  5. Comparables engine — the N most similar sold objects by area/size/rooms, each with its price/m² percentile.
  6. Mäklare league tables — per area × broker/agency: volume, median sale-to-asking, median days-on-market.
  7. BRF key + fee history — brf_org_number is always exposed as a join key, and a BRF fee history is reconstructed from our own accumulating sales over time. Note: the optional Bolagsverket financials lookup is best-effort and usually returns null — in testing, 0 of 6 real BRF numbers had a digitally filed report in that corpus, because Sweden's digital-filing duty covers aktiebolag rather than bostadsrättsföreningar. The fee history does not depend on it.
  8. Incremental monitor mode — a KV watermark emits change_type / field / old_value / new_value events so the actor can be scheduled instead of re-pulled.

Output

One dataset, several record_types:

record_typeWhat it is
soldA completed sale (slutpris). The flagship rows.
listingAn active/upcoming "till salu" object (only if includeListings is on).
area_aggregateArea × month median/p25/p75 kr/m², sale-to-asking, days on market.
changeIncremental change event vs the run watermark.
broker_leagueMäklare league row per area × broker/agency.
brf_fee_historyFee (avgift) series per BRF, built from our own sales.
brf_financials(optional, best-effort) Bolagsverket figures per BRF — usually absent.

Key sold fields

record_type, hemnet_id, listing_id, slug, url, street_address, location_description, area, municipality, zipcode, housing_form, tenure, asking_price_sek (utgångspris), asking_price_formatted, final_price_sek (slutpris), final_price_formatted, price_change_pct, price_per_sqm_sek (kr/m²), price_per_sqm_derived, asking_vs_area_median_pct_derived, living_area_sqm (boarea), land_area_sqm, rooms, fee_sek_month (avgift), build_year, sold_at, days_on_market, price_per_sqm_percentile, comparables[], brf_name, brf_org_number (NNNNNN-NNNN), broker_agency, coordinates, features[], plus source / source_url / fetched_at / actor_version on every record.


Input (highlights)

InputPrefillNotes
locationIds["18028"]Numeric Hemnet location ids. 18028 = Solna kommun.
maxRecords25Hard cap on delivered property records.
pagesPerLocation1Pages per location (50/page). 0 = walk to the ~2,500 ceiling.
includeListingsfalseAlso return active listings.
enrichBrfFinancialsfalseBest-effort Bolagsverket BRF financials probe — usually null (see above).
fetchDetailPagestrueAdds boarea, avgift, byggår, exact kr/m² and brf_org_number.
includeBrokerContactfalseMäklare name/email/phone — PII, off by default.
onlyNewSince(empty)Incremental mode; do not set in the default run.
proxyConfigurationdirectSwedish residential proxies help for high-volume runs.

Important: slice your area finely

An anonymous Hemnet sold search returns at most ~2,500 results per query (50/page; page 50 works, page 100 is empty). To cover a whole region, pass municipalities or districts as separate locationIds entries. Sub-area slices must be numeric ids — slug paths like /salda/<stadsdel> return 404.


Pricing (pay-per-event)

  • actor-start — $0.01, charged once, only after the first validated record (a failed or empty run is never charged).
  • sold-property — $0.0025 per delivered property record.

Leading competitor haketa/hemnet-scraper publishes $0.004/result; we sit below it on the per-result event. Two cheaper rivals exist (memo23 at $0.0015, ahmed_jasarevic ~$0.0012), so we are not the cheapest — the differentiation is the sold-field depth plus the analytics layer. Derived rows (aggregates, league tables, change events, BRF rows) are not charged.

Example: 1,000 sold records ≈ $0.01 + 1000 × $0.0025 = $2.51.


Use cases

  • Mäklare building a comparative-market analysis (jämförelseobjekt) for a valuation or pitch.
  • Valuers / AVM teams needing an index-ready slutpris time series per area.
  • Property investors screening yield and price-per-m² trends across municipalities.
  • BRF boards tracking comparable sales and fee trends in their own area.
  • Analysts & journalists turning slutpriser into market statistics faster than Svensk Mäklarstatistik.

Responsible use

This actor is a tool. It ships no data and does not run itself — whoever operates it chooses how, and is responsible for that choice.

  • Respect robots.txt, rate limits and Hemnet's terms of service in your own runs. Hemnet's robots.txt disallows only internal paths (/betalning/*, /raketen/*, /paket/*, /mitt_hemnet/, …); search and listing pages are crawlable — but verify and honour the current text yourself.
  • Keep the request delay reasonable (default 500 ms) and do not hammer the site.
  • Do not republish personal data unlawfully. includeBrokerContact is off by default; sold street addresses can indirectly identify private sellers. See the GDPR note in PLAN.md.

No warranty. The source is unofficial and can change at any time; the actor may break, and fixed prices reflect that risk.