Boligsiden.dk Scraper 🔥 Homes & Real Estate 🏠
Pricing
from $0.50 / 1,000 listings
Boligsiden.dk Scraper 🔥 Homes & Real Estate 🏠
Boligsiden.dk scraper: Danish homes for sale, rentals and foreclosure auctions. Price, every price cut, views, open house, energy label, GPS, photos, agent phone, email, CVR. Rent, deposit, move-in date. Auction court, bids, lawyer. Filter by area, type, price. New-listings mode.
Pricing
from $0.50 / 1,000 listings
Rating
0.0
(0)
Developer
Muhamed Didovic
Maintained by CommunityActor stats
0
Bookmarked
3
Total users
2
Monthly active users
20 days ago
Last modified
Categories
Share
Boligsiden.dk Homes & Real Estate Scraper
Paste any Boligsiden.dk search URL and export Danish homes for sale, rentals, or foreclosure auctions as clean JSON, CSV, or Excel. Each row carries the asking price, DKK per m², public valuation, energy label, rooms, GPS, photos, and the estate agent's name, phone, email, CVR, and rating. On top of that you get every price cut since the home was listed, how many people viewed and saved the listing, the next open house, and the building's heating and roof from BBR. Pagination, deduplication, and filtering are handled for you.
| Input | Rows emitted |
|---|---|
Municipality page /kommune/koebenhavn/tilsalg | One row per home for sale in that municipality |
City page /by/aarhus-c/tilsalg | One row per home in that city |
Zip-code page /postnummer/2100/tilsalg | One row per home in that zip code |
All of Denmark /tilsalg | Every home for sale on Boligsiden (40,000+) |
Any of the above with types or prices, e.g. /tilsalg/villa,raekkehus?priceMax=5000000 | Only the matching homes |
Rentals /lejeboliger (with /kommune/, /by/ or /postnummer/) | One row per rental: rent, deposit, move-in date, pets |
Foreclosure auctions /tvangsauktioner (optionally /kommune/aarhus or /landsdel/fyn) | One row per auction: court, date, bids, lawyer, case documents |
Pure HTTP against Boligsiden's own JSON API. No browser, no proxy, no third-party unblocking service.
How it works

- The actor reads the location (
/kommune/,/by/or/postnummer/), the property types after/tilsalg/, and anypriceMin,priceMax,areaMin,areaMaxfrom yourstartUrl. Input fields override the URL. - It queries
api.boligsiden.dk/search/cases, 200 homes per page, in the sort order you pick, and skips duplicate case IDs. - For each home it reads the listing timeline (opening price and every price change) and the listing's view, click and favourite counts, 10 at a time.
- Boligsiden serves at most 10,000 results per search. When a search matches more and you ask for more, the actor splits it into asking-price bands that each fit, so a whole-Denmark run can return every listing.
- Each home is flattened into a clean row, with the full source record nested under
raw, and saved to the dataset.
A run of 500 fully enriched homes takes about 10 seconds.
Why use this scraper
- Clean, flat rows. Address, price, DKK/m², rooms, energy label, GPS, and agent contact as top-level fields, ready for a spreadsheet.
- Agent lead lists. Every row has the estate agency's name, phone, email, CVR number, chain, website, and its seller and buyer rating on Boligsiden.
- Price-cut history.
originalPrice, every asking-price change with date and percent, andtotalDaysOnMarketacross relistings. Sort by biggest or most recent price drop. - Demand signal. Page views, clicks to the agent's site, and favourites for every listing.
- Scheduled monitoring.
onlyNewListingsreturns only homes your search has not seen before, so a daily run is a clean new-listings feed. - Rentals and foreclosures too. Switch
listingType(or paste a/lejeboligeror/tvangsauktionerURL) for rental listings with rent, deposit, and move-in date, or for every Danish foreclosure auction with court, minimum bid, highest bid, and links to the case documents. - Real filters. Municipality (one or several), city, zip code, 15 property types, price band, and size band, from the URL or from input fields.
- No 10,000-result ceiling. Large searches are split by price automatically.
- Cheap runs. No proxy and no browser, so compute cost stays low.
Input
| Field | Type | Required | Notes |
|---|---|---|---|
startUrl | string | yes | Boligsiden search URL with /tilsalg in the path. Default: Copenhagen municipality. |
listingType | string | no | auto (from the URL, default), forSale, rentals, foreclosures. |
municipality | string | no | Municipality slug, e.g. koebenhavn, aarhus. Several: odense,aalborg. Replaces the URL's location. |
propertyTypes | string[] | no | Any of villa, condo, terraced house, villa apartment, holiday house, cooperative, farm, hobby farm, full year plot, holiday plot, houseboat, cattle farm, pig farm, plant farm, forest. Replaces the URL's types. |
priceMin / priceMax | integer | no | DKK band: asking price (for sale), monthly rent (rentals), or public valuation (foreclosures). |
areaMin / areaMax | integer | no | Living area band in m². |
roomsMin / roomsMax / petsAllowed | integer / boolean | no | Rentals only. |
sortBy | string | no | default, newest, longestOnMarket, priceLow, priceHigh, sqmPriceLow, sqmPriceHigh, biggestPriceDrop, latestPriceDrop. |
includePriceHistory | boolean | no | Opening price and every price change. Default true. |
includeListingStats | boolean | no | Page views, agent-site clicks, favourites. Default true. |
onlyNewListings | boolean | no | Skip listings this search returned in earlier runs. Works for all three listing types. Default false. |
maxItems | integer | no | 1 to 50,000. Default 100. Free plan: 5 per run. |
proxy | object | no | Not needed. Set it only if your runs get blocked. |
Danish type slugs in URLs map as Boligsiden maps them: villa, ejerlejlighed (condo), raekkehus (terraced house), villalejlighed, fritidsbolig (holiday house), andelsbolig (cooperative), landejendom (farm and hobby farm), helaarsgrund, fritidsgrund, husbaad.
Example input
{"startUrl": "https://www.boligsiden.dk/kommune/aarhus/tilsalg/villa,raekkehus","priceMax": 5000000,"areaMin": 100,"sortBy": "biggestPriceDrop","maxItems": 500}
Output schema
Every row has a listingType of forSale, rentals, or foreclosures. The Output tab has a table view for each.
Homes for sale (listingType: "forSale")
Sample (trimmed):
{"caseId": "016da6bb-9e6e-46aa-8f34-fdeaa4525a53","url": "https://www.boligsiden.dk/cases/016da6bb-9e6e-46aa-8f34-fdeaa4525a53","address": "Istedgade 88, 4., 1650 København V","street": "Istedgade","houseNumber": "88","floor": "4","zipCode": 1650,"city": "København V","municipality": "København","province": "Byen København","propertyType": "condo","askingPrice": 12750000,"originalPrice": 15995000,"priceChangePercentage": -20.29,"numberOfPriceChanges": 3,"lastPriceChangeDate": "2026-09-16T15:36:21.407593Z","priceHistory": [{"date": "2026-05-14T10:03:28.311083Z","price": 15995000,"type": "open","changePercentage": null},{"date": "2026-06-03T07:43:25.448957Z","price": 15295000,"type": "price_change","changePercentage": -4.38},{"date": "2026-06-29T20:39:52.515866Z","price": 13750000,"type": "price_change","changePercentage": -10.1},{"date": "2026-09-16T15:36:21.407593Z","price": 12750000,"type": "price_change","changePercentage": -7.27}],"pricePerSqm": 67460,"housingArea": 189,"numberOfRooms": 6,"yearBuilt": 1875,"energyLabel": "c","latitude": 55.669266,"longitude": 12.553126,"daysOnMarket": 142,"totalDaysOnMarket": 142,"pageViews": 4172,"agentSiteClicks": 3062,"favourites": 91,"openHouseDate": "2026-10-04T10:00:00Z","openHouseSignUpUrl": "https://www.nybolig.dk/services/redirect/case/N260362/N2603620000644","publicValuation": 4000000,"downPayment": 640000,"monthlyExpense": 8234,"grossMortgageMonthly": 71242,"heating": "Fjernvarme/blokvarme","roofingMaterial": "Tegl","councilTaxPercentage": 23.5,"imageUrl": "https://images.boligsiden.dk/images/case/016da6bb-9e6e-46aa-8f34-fdeaa4525a53/1440x960/752420df-43b2-49dc-83bb-451178ee8831.webp","externalUrl": "https://www.nybolig.dk/services/redirect/case/N260362/N2603620000644","realtorName": "Nybolig Vesterbro - Enghave Plads","realtorPhone": "33889400","realtorEmail": "1670@nybolig.dk","realtorCvr": "42442690","realtorBranch": "Nybolig","realtorRating": 9.18,"realtorRatingCount": 11,"realtorBuyerRating": 7.71,"status": "open","raw": {"...": "full Boligsiden case record"}}
Rentals (listingType: "rentals")
Rentals share the for-sale columns (address, size, rooms, GPS, photos, agent, BBR, views) and add rent fields. askingPrice and pricePerSqm are null.
{"listingType": "rentals","caseId": "52ada1cd-dd1a-44d5-8bcc-6eaa601879f1","url": "https://www.boligsiden.dk/cases/52ada1cd-dd1a-44d5-8bcc-6eaa601879f1","address": "Hans Knudsens Plads 1A, 4. 7, 2100 København Ø","zipCode": 2100,"city": "København Ø","municipality": "København","propertyType": "condo","monthlyRent": 9500,"deposit": 28500,"prepaidRent": 9500,"utilitiesMonthly": 550,"rentPerSqmYear": 3257,"housingArea": 35,"numberOfRooms": 1,"energyLabel": "a2015","availableFrom": "2026-11-01","petsAllowed": false,"daysOnMarket": 1,"pageViews": 29,"favourites": 0,"realtorName": "home Sydhavnen & Projektsalg","realtorPhone": "33330305","realtorEmail": "177@home.dk","imageUrl": "https://images.boligsiden.dk/images/case/52ada1cd-dd1a-44d5-8bcc-6eaa601879f1/1440x960/a227bd47-ad6c-4cb3-92af-014ee5b05619.webp","status": "open","raw": {"...": "full Boligsiden rental record"}}
Foreclosure auctions (listingType: "foreclosures")
{"listingType": "foreclosures","foreclosureId": "696edb3b-6a9d-4599-8b9c-077b7837199e","url": "https://www.boligsiden.dk/tvangsauktioner/adresse/havnegade-6-5610-assens?id=696edb3b-6a9d-4599-8b9c-077b7837199e","address": "Havnegade 6, 5610 Assens","zipCode": 5610,"city": "Assens","municipality": "Assens","propertyType": "villa","status": "2. auktion","auctionDate": "2026-10-06T07:00:00Z","auctionCourt": "Retten i Odense","auctionAddress": "Albanigade 30, 5000 Odense","viewingDate": "2026-10-05T11:00:00Z","publicValuation": 1374000,"valuatedBid": 1374000,"highestBid": 1,"securityAmount": 268673,"livingArea": 176,"lotArea": 410,"numberOfRooms": 5,"yearBuilt": 1880,"claimant": "Nordea Kredit Realkreditaktieselskab","lawFirm": "Njord Law Firm","lawyerName": "Bettina Erringsø","contactPhone": "…","contactEmail": "…","courtCaseNumber": "AS 209/2026","statstidendeNumber": "S09092026-78","cadastralNumbers": ["605c, Assens Bygrunde"],"documents": [{"name": "Salgsopstilling","url": "https://tvang.boligsiden.dk/api/public/document-download/8ebc3d8d-fbf8-4b73-8462-26a18cc4770d"},{"name": "Salgsopstilling uden bilag","url": "https://tvang.boligsiden.dk/api/public/document-download/72d07784-9a21-416a-b51f-fb51ce208772"}],"description": "Ejendom i 1,5 plan i Assens by tæt på skole, butikker, havnemiljø mm. Tinglyst grundareal 410 m², heraf vej 0 m². Boliga…","raw": {"...": "full foreclosure record"}}
Key output fields
| Field | Meaning |
|---|---|
askingPrice | Asking price in DKK |
pricePerSqm | DKK per m² of living area |
housingArea / lotArea | Living area and plot size in m² |
energyLabel | Danish energy label, a2020 to g |
publicValuation | Latest public property valuation in DKK, when published |
downPayment / monthlyExpense | Required down payment and monthly owner cost in DKK |
daysOnMarket / totalDaysOnMarket | Days on market now, and in total including earlier listings of the same home |
originalPrice / priceChangePercentage | First asking price and the change since, negative for a cut |
priceHistory | Every listing event: opened, price change (with percent), closed |
pageViews / agentSiteClicks / favourites | How many people viewed, clicked through, and saved the listing on Boligsiden |
openHouseDate / openHouseSignUpUrl | Next open house and its sign-up link, when scheduled |
grossMortgageMonthly / netMortgageMonthly | Monthly mortgage cost before and after tax deduction, as listed |
heating / roofingMaterial / externalWallMaterial / yearRenovated | Main building from BBR (roof material flags asbestos-containing fibre cement) |
floorPlanImages | Floor-plan images, when the agent uploaded them |
province / councilTaxPercentage / landValueTaxPerThousand | Region and municipal tax rates |
cooperative | Co-op details for andelsbolig listings: max price, association debt, allocation |
images | Up to 5 photo URLs at 1440×960 |
externalUrl | The listing on the estate agent's own website |
realtorPhone / realtorEmail / realtorCvr | Agency contact and Danish company number |
realtorRating / realtorBuyerRating | Agency's seller and buyer rating on Boligsiden, 0 to 10 |
saleHistory | Earlier recorded sales of the address, with price and date |
buildings | Building records for the address (BBR) |
monthlyRent / deposit / prepaidRent / utilitiesMonthly | Rentals: monthly rent, deposit, prepaid rent, and utilities on account, in DKK |
rentPerSqmYear / availableFrom / petsAllowed / maxRentalMonths | Rentals: yearly rent per m², move-in date, pet policy, and maximum rental period |
auctionDate / auctionCourt / auctionAddress / status | Foreclosures: when and where the auction is held, and which round |
valuatedBid / highestBid / securityAmount | Foreclosures: the court's valuation bid, highest bid so far, and security a bidder must provide |
viewingDate / claimant / lawyerName / documents | Foreclosures: viewing time, who forces the sale, the lawyer handling it, and links to the case documents (sales statement, land registry, valuation) |
raw | The full source record from Boligsiden's API |
What makes this richer than the competition
Compared with Boligsiden actors that take only a search URL and a result limit:
| Capability | URL-only actors | This actor |
|---|---|---|
| Search URL input | Yes | Yes, including city, zip-code, and type-slug URLs |
| Filters as input fields | No | Municipality, 15 property types, price, size |
| More than 10,000 results | Not documented | Auto-split by price, up to 50,000 |
| Price-cut history | No | Opening price plus every change with date |
| Views, clicks, favourites | No | Yes |
| Sort order | No | 9 options, incl. biggest and latest price drop |
| New-listings-only mode | No | Yes, for scheduled runs |
| Rentals | No | Rent, deposit, move-in date, pets, rent per m² |
| Foreclosure auctions | No | Court, date, bids, lawyer, case documents |
Pricing
From $0.5 per 1,000 homes. You pay for each listing saved to the dataset, plus a small per-run start fee. The per-listing price drops with your Apify plan tier. See the Pricing tab for the exact rates.
| Event | When |
|---|---|
| Actor start | Once per run |
| Listing | Each home saved to the dataset |
The run stops on its own when your maximum cost per run is reached.
Use cases
- Track asking prices and DKK/m² across municipalities and property types.
- Build estate-agent lead lists with phone, email, and CVR.
- Compare energy labels, public valuations, and days on market.
- Watch new listings in an area on a daily schedule.
- Feed a spreadsheet, CRM, or pricing model without copying ads by hand.
- Compare rents and rent per m² across Copenhagen, Aarhus, or any zip code.
- Track every upcoming foreclosure auction with court date, minimum bid, and the lawyer to call.
Notes & limitations
- Covers homes for sale, rentals, and foreclosure auctions. Sold-home records are not a separate mode; each for-sale row carries the address's past sales in
saleHistory. - Rentals have no price history (Boligsiden's rental timeline tracks the deposit) and support the
newest,priceLow, andpriceHighsort options only. - Foreclosures: Boligsiden lists around 100 auctions nationwide at any time, so every run reads them all and applies your filters. Case documents and lawyer contact are present on roughly a quarter of auctions, when the lawyer published them on Boligsiden.
descriptionBodyis the roughly 500-character teaser Boligsiden publishes. The full ad text is on the agent's site atexternalUrl.- Boligsiden publishes up to 5 photos per listing, so
imagesholds at most 5. - Unknown property types are skipped with a warning instead of failing the run.
- With more than 10,000 matches the search is read in price bands, so
sortByorders listings within each band. onlyNewListingsremembers listings per search (location, types, price, size). Change any filter and it starts fresh.
FAQ
What URLs work? Any Boligsiden.dk homes-for-sale page (municipality, city, zip code, region, or the national /tilsalg page, with or without type and price filters), any /lejeboliger rental page, and any /tvangsauktioner foreclosure page.
Can I scrape rentals or foreclosure auctions? Yes. Paste a /lejeboliger or /tvangsauktioner URL, or set listingType to rentals or foreclosures. Rent, deposit, and room filters work for rentals; location, type, valuation, and size filters work for foreclosures.
How many listings can I pull? Up to 50,000 per run. Searches over 10,000 results are split by price automatically.
Why am I only getting 5 results? The free Apify plan caps each run at 5 listings. Upgrade to a paid plan to use your full maxItems.
Can I get only new listings every day? Yes. Schedule the actor with onlyNewListings: true and sortBy: "newest". Each run returns only homes that search has not returned before.
How do I find price cuts? Set sortBy to biggestPriceDrop or latestPriceDrop. Each row's priceHistory lists every change with its date.
Do I get the agent's contact details? Yes. Every row has the agency's name, phone, email, CVR, chain, website, and rating when Boligsiden lists them.
Is it legal to scrape Boligsiden? This actor collects public listing information. You are responsible for complying with Boligsiden's terms and applicable law, including GDPR for agent contact data. See Apify's legality guide.
Support
Issues, feature requests, or questions? Use the Issues tab on this actor's page.
Additional services
Need custom fields, a scheduled feed, an integration, or a scraper for another Danish property site? Open an issue on this actor's page to ask about custom work.
Explore more scrapers
Browse the Apify Store for more real-estate scrapers.
🤖 For AI Agents & LLM Apps
Purpose: Danish homes for sale, rentals, and foreclosure auctions from Boligsiden.dk, one row per listing, with price or rent, size, energy label, GPS, and agent or lawyer contact.
Minimal input:
{ "startUrl": "https://www.boligsiden.dk/kommune/koebenhavn/tilsalg", "maxItems": 50 }
Listing type: listingType = forSale (default), rentals, or foreclosures; or detected from a /tilsalg, /lejeboliger, or /tvangsauktioner URL. Rentals add monthlyRent, deposit, prepaidRent, utilitiesMonthly, rentPerSqmYear, availableFrom, petsAllowed, maxRentalMonths, landlordName. Foreclosure rows have their own shape: foreclosureId, url, address, auctionDate, auctionCourt, auctionAddress, status, publicValuation, valuatedBid, highestBid, securityAmount, viewingDate, claimant, lawFirm, lawyerName, contactPhone, contactEmail, courtCaseNumber, statstidendeNumber, documents, description.
Filters: municipality (slug, comma-separated for several), propertyTypes (enum list), priceMin/priceMax (DKK), areaMin/areaMax (m²). They override the URL. sortBy (e.g. newest, biggestPriceDrop), onlyNewListings for scheduled feeds, includePriceHistory and includeListingStats (both default true).
Output fields: caseId, url, address, street, houseNumber, floor, door, zipCode, city, municipality, propertyType, askingPrice, pricePerSqm, housingArea, lotArea, numberOfRooms, numberOfBathrooms, numberOfToilets, numberOfFloors, yearBuilt, energyLabel, hasBalcony, hasElevator, hasTerrace, latitude, longitude, daysOnMarket, totalDaysOnMarket, priceChangePercentage, isNewOnBoligsiden, originalPrice, numberOfPriceChanges, lastPriceChangeDate, priceHistory, pageViews, agentSiteClicks, favourites, openHouseDate, openHouseDurationMinutes, openHouseSignUpUrl, publicValuation, downPayment, monthlyExpense, grossMortgageMonthly, netMortgageMonthly, utilitiesConnectionFee, weightedArea, basementArea, province, placeName, bfeNumber, councilTaxPercentage, landValueTaxPerThousand, heating, roofingMaterial, externalWallMaterial, yearRenovated, floorPlanImages, floorPlanUrl, cooperative, descriptionTitle, descriptionBody, imageUrl, images, externalUrl, realtorName, realtorPhone, realtorEmail, realtorCvr, realtorBranch, realtorUrl, realtorRating, realtorRatingCount, realtorBuyerRating, realtorEmployees, saleHistory, buildings, status, raw.
Behavior: prices in DKK, areas in m², missing values are null. Billed per saved listing plus a start fee; the run stops at the caller's max cost. Free plan returns 5 rows. About 10 seconds per 500 rows.
⚠️ Disclaimer
Not affiliated with Boligsiden or the estate agents whose listings appear in the data. This actor collects publicly available listing information only. You are responsible for complying with Boligsiden's terms and applicable laws, including data-protection law for any personal data. Read more: Is web scraping legal?
SEO Keywords
Boligsiden scraper, Boligsiden.dk scraper, Boligsiden price drops, prisfald bolig, Boligsiden lejeboliger, Danish rentals, lejebolig København, rental apartments Denmark, tvangsauktioner, Danish foreclosure auctions, tvangsauktion scraper, Statstidende auctions, new listings Denmark, open house Denmark, åbent hus, Danish homes for sale, Denmark real estate data, Danish property listings export, boliger til salg, Copenhagen apartments for sale, Aarhus villas, Odense houses, Denmark house prices, DKK per square meter, energy label Denmark, public valuation, ejendomsvurdering, estate agent phone email CVR, ejendomsmægler leads, real estate lead generation Denmark, JSON CSV Excel export