atHome.lu Scraper — Luxembourg Real Estate Listings
Pricing
Pay per event
atHome.lu Scraper — Luxembourg Real Estate Listings
Scrape property listings from atHome.lu, Luxembourg's largest real estate portal. Filter by city, property type, bedrooms, and price range for both sales and rentals.
Pricing
Pay per event
Rating
0.0
(0)
Developer
Studio Amba
Actor stats
0
Bookmarked
7
Total users
2
Monthly active users
14 days ago
Last modified
Categories
Share
atHome.lu Scraper
Extract real estate listings from atHome.lu — Luxembourg's number one property portal — with prices, GPS coordinates, energy ratings, and full property details in English, French, or German.
What is atHome.lu Scraper?
atHome.lu Scraper taps into Luxembourg's dominant real estate platform and delivers structured listing data via atHome's internal API. Luxembourg has one of the most expensive housing markets in Europe, and atHome.lu is where the vast majority of properties are advertised. This scraper gives you programmatic access to that data.
- Analyze Luxembourg's housing market: extract asking prices per square meter across communes to understand one of Europe's priciest markets — where average apartment prices exceed EUR 10,000/m2
- Monitor cross-border opportunities: many commuters from France, Belgium, and Germany buy or rent in Luxembourg. Track listings in border towns like Esch-sur-Alzette, Remich, or Wasserbillig
- Automate relocation research: expats moving to Luxembourg can set up scheduled scrapes filtered by budget, bedrooms, and neighborhood to catch new listings the moment they appear
- Build investment dashboards: combine price data with GPS coordinates, energy ratings, and property types to visualize the Luxembourg property market geographically
- Feed property comparison tools: structured data with bedrooms, bathrooms, surface, parking, and agency contacts makes it easy to build comparison applications or enrich CRM systems
The scraper uses atHome's internal listing API directly — no browser needed — making it fast, reliable, and cost-effective.
What data does atHome.lu Scraper extract?
🏠 Title — property type and city (e.g., "Apartment — Luxembourg") 💰 Price — asking price or monthly rent in EUR 🏗️ Property type — apartment, house, studio, duplex, penthouse, loft, office, commercial, garage, land 🔑 Transaction type — sale or rent 📍 Full address — street, postal code, city, district, region, country 🗺️ GPS coordinates — latitude and longitude for mapping 🛏️ Bedrooms, bathrooms, and total rooms 📐 Living surface and land area in square meters 🅿️ Parking — garages, indoor and outdoor spots 🏗️ New build flag — identifies newly constructed properties and development projects 📊 Energy rating — Luxembourg energy class (A to I) 🏢 Floor number for apartments 📸 All photos — full list of high-resolution image URLs 📝 Description — property description in your chosen language 🏪 Agency name and phone number 🆔 Listing ID — atHome's internal reference number 📅 Created and updated timestamps 🔗 Direct URL to the listing on atHome.lu
How to scrape atHome.lu
Configure the scraper through the Apify Console or via the API. All filters are optional — leave them blank to scrape all of Luxembourg.
Input options
| Input | Type | Default | Description |
|---|---|---|---|
| Transaction Type | rent / buy | rent | Rent or buy |
| Property Type | select | All types | Apartment, house, studio, duplex, penthouse, loft, office, commercial, garage, land |
| City | string | All Luxembourg | City name (e.g., Luxembourg, Esch-sur-Alzette, Differdange) |
| Search Query | string | — | Free-text search (e.g., garden terrace parking) |
| Min Price | integer | — | Minimum price in EUR |
| Max Price | integer | — | Maximum price in EUR |
| Min Bedrooms | integer | — | Minimum bedroom count |
| Max Results | integer | 100 | Maximum listings to return (1 – 10,000) |
| Language | en / fr / de | en | Language for descriptions and URLs |
| Proxy Configuration | object | — | Optional proxy for large scraping runs |
Tips for best results
- Use the language setting strategically: French (
fr) returns the most complete descriptions since most Luxembourg agencies write in French first - Combine city + property type for targeted datasets — e.g., apartments for rent in Luxembourg City
- New build projects are automatically expanded into individual units with their own prices and floor plans, so you get granular data even for large developments
- Proxy is optional for small runs — atHome's API is relatively permissive, but enable proxy for scraping 1,000+ listings to avoid rate limits
Output
Results are stored in a dataset you can download as JSON, CSV, Excel, XML, or HTML from the Apify Console.
JSON example
{"title": "Apartment — Luxembourg","price": 2450,"currency": "EUR","propertyType": "apartment","transactionType": "rent","url": "https://www.athome.lu/en/rent/apartment/luxembourg/id-387421.html","scrapedAt": "2026-04-03T09:30:00.000Z","listingId": "387421","address": "12 Boulevard Royal, 2449 Luxembourg","city": "Luxembourg","postalCode": "2449","district": "Centre","region": "Luxembourg","country": "lu","bedrooms": 2,"bathrooms": 1,"rooms": 4,"surface": 85,"floor": 3,"parking": 1,"garages": 1,"energyRating": "B","isNewBuild": false,"latitude": 49.6116,"longitude": 6.1319,"description": "Bright 2-bedroom apartment on Boulevard Royal with open-plan living, fitted kitchen, and underground parking. Walking distance to Kirchberg business district.","imageUrl": "https://i1.static.athome.eu/images/listings/387421/xl/001.jpg","imageUrls": ["https://i1.static.athome.eu/images/listings/387421/xl/001.jpg","https://i1.static.athome.eu/images/listings/387421/xl/002.jpg","https://i1.static.athome.eu/images/listings/387421/xl/003.jpg"],"agencyName": "Immobiliere Kass Selu","agencyPhone": "+352 26 48 72 10","createdAt": "2026-03-28T14:00:00.000Z","updatedAt": "2026-04-01T09:15:00.000Z"}
How much does it cost to scrape atHome.lu?
atHome.lu Scraper uses HTTP requests only (no browser), making it one of the cheapest real estate scrapers available. It fetches search pages to collect property IDs, then calls atHome's internal API for full details.
| Scenario | Est. cost | Time |
|---|---|---|
| 100 listings with full details | ~$0.80 | ~1 min |
| 500 listings | ~$3.50 | ~3 min |
| 1,000 listings | ~$6.50 | ~5 min |
The actor processes listings in parallel batches of 5 for optimal speed while respecting rate limits.
Can I integrate atHome.lu Scraper with other apps?
Yes. atHome.lu Scraper connects with any tool through Apify integrations:
- Google Sheets — export Luxembourg property data to a live spreadsheet, updated on every run
- Slack / Email — get instant alerts when new apartments appear in your target price range
- Zapier / Make — build automation workflows triggered by new listings
- Airtable — create a filterable Luxembourg property database with photos and GPS pins
- REST API — call the scraper on demand from any programming language
- Webhooks — receive a callback when scraping finishes to trigger downstream processing
Can I use atHome.lu Scraper as an API?
Yes. Use the Apify API to run atHome.lu Scraper programmatically.
Python:
from apify_client import ApifyClientclient = ApifyClient("YOUR_API_TOKEN")run = client.actor("studio-amba/athome-scraper").call(run_input={"transactionType": "rent","propertyType": "apartment","city": "Luxembourg","maxPrice": 3000,"maxResults": 200,"language": "en",})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(f"{item['title']} — €{item['price']}/month — {item.get('surface', '?')} m²")
JavaScript:
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'YOUR_API_TOKEN' });const run = await client.actor('studio-amba/athome-scraper').call({transactionType: 'buy',city: 'Esch-sur-Alzette',maxResults: 100,language: 'fr',});const { items } = await client.dataset(run.defaultDatasetId).listItems();items.forEach(item => console.log(`${item.title} — €${item.price.toLocaleString()}`));
Check the API tab for full documentation.
FAQ
What is atHome.lu?
atHome.lu is Luxembourg's largest and most-visited real estate portal, operated by the atHome Group. It lists the majority of properties available for sale and rent in the Grand Duchy, from studio apartments in Kirchberg to family homes in the Moselle valley. Virtually every Luxembourg real estate agency publishes their listings on atHome.lu.
How does atHome.lu Scraper work?
The scraper takes a two-step approach. First, it crawls atHome.lu search result pages to collect property IDs from the embedded dataLayer. Then it calls atHome's internal listing API (apigw.prd.athomegroup.lu) to fetch full structured data for each property — including fields that aren't visible on the website, like GPS coordinates and creation dates. No browser is needed, keeping costs minimal.
Does the scraper handle new build projects?
Yes. atHome.lu lists new construction projects as parent listings with multiple child units (individual apartments or houses within a development). The scraper automatically expands these into separate listings so you get individual prices, surfaces, and floor numbers for each unit.
Is it legal to scrape atHome.lu?
This scraper extracts publicly available property listing data that atHome.lu displays to all visitors. The data is factual real estate information (prices, addresses, property characteristics) published by agencies and developers. Use the data responsibly and in compliance with Luxembourg and EU regulations.
Can I get data in German?
Yes. Set language to "de" for German descriptions and URLs. You can also choose "fr" for French or "en" for English. Note that description completeness may vary by language — most agencies write their primary descriptions in French.
How fresh is the data?
Every listing includes createdAt and updatedAt timestamps from atHome's database. The scraper always fetches the latest version of each listing from the API. Schedule daily or weekly runs to maintain an up-to-date dataset.
Limitations
- Luxembourg only. atHome.lu exclusively covers the Grand Duchy of Luxembourg. For cross-border properties, combine with other scrapers listed below.
- No historical pricing. The scraper captures the current asking price at the time of scraping. To track price changes over time, schedule recurring runs and compare datasets.
- Price on demand listings return a price of
0. Some premium properties don't display their asking price publicly — the agency must be contacted directly. - Photo URLs point to atHome's CDN and may expire after the listing is removed. Download images promptly if you need them long-term.
- Large developments with many child units can produce more results than expected. A single project listing might expand into 20+ individual unit listings.
Other real estate scrapers
Build a Benelux-wide property dataset by combining atHome.lu Scraper with these actors:
- 🏛️ Biddit Scraper — Belgian notarial property auctions
- 🇫🇷 Logic-Immo Scraper — French real estate listings
- 🏡 Immovlan Scraper — Belgian property listings (VTM/DPG network)
- 🇱🇺 WortImmo Scraper — Luxembourg property listings (Wort media group)
Your feedback
Have a question, found a bug, or want a new feature? Open an issue on the Issues tab. We actively maintain this scraper and respond to all reports.