Luxembourg Commune Commute-to-Price Arbitrage
Description
Luxembourg Commune Asking Prices and Modelled Commutes
Release 2026.10-5: 1600 rows across 1 tables. Observed/computed input dates: 2026-09-26 to 2026-10-14; source release assembled 2026-10-18.
Upstream source accuracy is not certified. A separate 24-page current-active spot-check found a legacy energy-class conflict and an active record whose retained description says sold. Exact membership of these adverts in this dated export is unverified; these findings do not measure the export error rate. No raw source facts were repaired or invented for this release. Exploratory comparison, not an investment ranking: 288/1206 numeric ratios carry a centroid warning; 34 use less than five extra modelled minutes. Rows retain both price samples and source centroid flags. Price, travel time and ±1-minute denominator sensitivity are shown separately. The perturbation is an arithmetic scenario, not a measured error bound.
Preview population: sale apartments, driving to Kirchberg in the morning. N=4953 advert price observations in the preview population, not unique properties. Rows are ordered by commune or dwelling/class identifier, not an investment score. Method: deterministic source joins; price disclosure gates remain 5 adverts per commune and 10 per energy-price cell. Missing values remain empty. Asking prices are advertised and travel is modelled.
Preview: commute_price_arbitrage
| commune_code | commune_name_en | property_type | hub_id | mode | price_sample | reference_price_sample | asking_price_eur_m2 | commute_minutes | extra_commute_minutes | origin_centroid_check | ratio_if_extra_minute_less | ratio_if_extra_minute_more |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0101 | Dippach | apartment | kirchberg | driving | 23 | 1371 | 8446 | 31.5 | 19.2 | consistent | 187.58 | 169.01 |
| 0102 | Garnich | apartment | kirchberg | driving | 12 | 1371 | 7201 | 30.1 | 17.8 | consistent | 277.32 | 247.82 |
| 0103 | Habscht | apartment | kirchberg | driving | 35 | 1371 | 7463 | 39.7 | 27.4 | consistent | 166.55 | 154.82 |
| 0104 | Käerjeng | apartment | kirchberg | driving | 139 | 1371 | 8173 | 36 | 23.7 | consistent | 162.42 | 149.27 |
| 0105 | Kehlen | apartment | kirchberg | driving | 71 | 1371 | 9499 | 32.5 | 20.2 | consistent | 122.97 | 111.37 |
| 0106 | Koerich | apartment | kirchberg | driving | 9 | 1371 | 6486 | 36.2 | 23.9 | consistent | 234.67 | 215.82 |
| 0107 | Kopstal | apartment | kirchberg | driving | 14 | 1371 | 9250 | 41 | 28.7 | differs_over_10_min | 94.22 | 87.88 |
| 0108 | Mamer | apartment | kirchberg | driving | 91 | 1371 | 10349 | 23.1 | 10.8 | consistent | 154.18 | 128.05 |
| 0110 | Steinfort | apartment | kirchberg | driving | 86 | 1371 | 8424 | — | — | not_checked | — | — |
| 0201 | Bettembourg | apartment | kirchberg | driving | 38 | 1371 | 7534 | 24.3 | 12 | consistent | 393.27 | 332.77 |
| 0202 | Differdange | apartment | kirchberg | driving | 269 | 1371 | 6625 | 37 | 24.7 | consistent | 220.89 | 203.7 |
| 0203 | Dudelange | apartment | kirchberg | driving | 180 | 1371 | 6384 | 27.9 | 15.6 | consistent | 375.07 | 329.88 |
| 0204 | Esch-sur-Alzette | apartment | kirchberg | driving | 371 | 1371 | 7295 | 30.2 | 17.9 | consistent | 270.12 | 241.53 |
| 0205 | Frisange | apartment | kirchberg | driving | 49 | 1371 | 8389 | 26.5 | 14.2 | consistent | 262.95 | 228.36 |
| 0206 | Kayl | apartment | kirchberg | driving | 65 | 1371 | 7733 | 34.5 | 22.2 | consistent | 194.67 | 177.89 |
| 0207 | Leudelange | apartment | kirchberg | driving | 30 | 1371 | 8864 | 19.7 | 7.4 | consistent | 468.13 | 356.67 |
| 0208 | Mondercange | apartment | kirchberg | driving | 27 | 1371 | 7128 | 26.2 | 13.9 | consistent | 366.82 | 317.58 |
| 0209 | Pétange | apartment | kirchberg | driving | 197 | 1371 | 6786 | 37.8 | 25.5 | consistent | 207.1 | 191.47 |
| 0210 | Reckange-sur-Mess | apartment | kirchberg | driving | 11 | 1371 | 9398 | 25.8 | 13.5 | consistent | 196.96 | 169.79 |
| 0211 | Roeser | apartment | kirchberg | driving | 49 | 1371 | 7988 | 19.3 | 7 | consistent | 645.33 | 484 |
Method and limits
- Join by exact four-digit official commune code; sale apartment and house medians remain separate.
- Savings = Luxembourg City asking median minus commune asking median; ratio = savings / (commune commute minutes minus city commute minutes), only for positive extra minutes.
- Use identical hub, mode and morning scenario for both journeys. Preserve negative savings and missing or expired journeys.
- Keep both price samples and source centroid checks. A ±1-minute denominator perturbation describes arithmetic sensitivity only; it is not a confidence interval or a measured model error.
- A comparison of unadjusted medians, not a valuation, causal effect, financial return or commuter recommendation.
- Cross-border extension is pending a validated country-specific price series. D
Producer
Latest update
October 25, 2026
License
Open Data Commons Open Database License (ODbL)
Metadata quality:
Data description filled
Files documented
License filled
Update frequency followed
File formats are open
Temporal coverage filled
Spatial coverage filled
Metadata quality
There are no reuses for this dataset yet.
There are no discussions for this dataset yet.
There are no community resources for this dataset yet.
Information
Tags
ID
6ade2d079fe1ba1f0b806eb3
Temporality
Creation
October 25, 2026
Frequency
Monthly
Temporal coverage
2026/09/26 to 2026/10/14
Latest update
October 25, 2026
Spatial coverage
Territorial coverage
Luxembourg
Territorial coverage granularity
Luxembourg
Actions
Embed
Extras
chathome:source-date
2026-09-26/2026-10-14
chathome:source-manifest
78508cadce20b9ba70791498641f8caab86ec011f6644414f4f035f9eb7f0af8
chathome:syndicated-release
2026.10-5
chathome:source-release-assembled-at
2026-10-18T22:40:40.398Z
chathome:release-manifest
5a6f16c7baba6af507579ba665dd6e4b9afc4658eb766b62f2fd9770501e982d