UQO Working Paper No. 14· v3.0· November 2026· 67 pages
Hedonic House Pricing with Language-Model and Vision Features
Evidence from Quebec Real-Estate Listings
On brokered listings, attributes read from the façade photograph add +3.9 points of out-of-sample R² to a linear hedonic model (95% CI [+3.4, +4.5]), more than switching to a random forest; attributes read from the text add +0.7.
Two AI layers under strict output schemas enter a hedonic regression on 19,123 Quebec house listings as ordinary, named regressors and raise in-sample R² from 0.717 to 0.755. Results are reported by platform because for-sale-by-owner descriptions embed a structured property sheet that inflates the pooled text gain. Coefficients are predictive associations on asking prices, and no human-labelled ground truth exists for the extracted attributes.
Simon-Pierre Boucher — contact@spboucher.ai
0.717 → 0.755
In-sample R² of the preferred log-linear specification when the two AI layers are added: 3.0 of the 3.8 points come from the façade photograph and 0.8 from the text.
+3.9 pp [+3.4, +4.5]
Out-of-sample R² added to OLS by the façade layer on Realtor.ca (+2.4 for gradient boosting); the text layer adds +0.7 and +1.4. The increments are preserved when entire postal areas are held out.
+4.9 pp [+3.8, +6.3]
On Realtor.ca, paired advantage of adding the vision layer to OLS over switching from OLS to a random forest; it is less than switching to gradient boosting (−1.6 [−2.7, −0.6]), and the pooled comparison is not informative (CI [−9.1, +5.5]).
+2.3% [0.7, 4.0]
Asking-price difference associated with one point of visual curb appeal (wild cluster bootstrap); a visible luxury cue 5.2% [3.1, 7.4], brick and stone façades 3.4% and 3.7%, vinyl siding −4.4%, a renovated kitchen read from the text 2.6%. Associations, not causal effects.
18 → 6 / 7
AI coefficients individually significant at 5% under the wild cluster bootstrap, and those that survive a Holm or a Romano–Wolf correction; the paper's claims rest on the joint tests and the out-of-sample gains rather than on any single price.
3.3 → 3.5 points
DuProprio text gain in in-sample R² before and after removing the asking price, the assessment and every dollar amount from the descriptions: unchanged. Removing the whole embedded structured sheet halves it (1.5), so the sheet, not the price, inflates the gain.
+10.5 pp vs +0.9
Out-of-sample R² added to OLS by a 256-dimensional embedding of the same descriptions versus the eighteen interpretable schema fields: the accuracy cost of named, auditable regressors.
Abstract
Hedonic house-price models are bounded by what an analyst can measure, while much of a home's value appears only in the text and photographs of its listing. We treat general-purpose AI models as a measurement technology: a language model converts each description into schema-constrained specifications and a vision–language model converts the façade photograph into visual attributes, both entering a hedonic regression as regressors. On 19,123 Quebec house listings both layers raise in-sample R² from 0.717 to 0.755. On the brokered platform, where the text never contains the asking price, the façade layer adds +3.9 points of out-of-sample R² to OLS (95% CI [+3.4, +4.5]), more than switching to a random forest, and the text layer +0.7; pooled gains are inflated by the for-sale-by-owner segment. Curb appeal carries an implicit price of 2.3% per point (95% CI [0.7, 4.0]). Attribute reliability is bounded by test–retest and cross-model agreement, not human labels.
JEL: R31, C21, C55, R21
Key Results
AI models as a measurement technology with priced outputs
Both extractions are constrained to a fixed schema of human-readable attributes (18 text and 21 façade regressors), so every machine-generated regressor has an implicit price with a clustered standard error, a wild-bootstrap interval and a multiplicity-adjusted p-value.
Measurement versus estimator
On identical folds and with paired tests, the paper measures how much of the gap between a linear hedonic model and the predictive frontier is closed by better measurement rather than by a better estimator, and what the interpretable schema forgoes relative to a dense embedding.
An audit of what the text contains
Every DuProprio description embeds a structured property sheet including the asking price; re-extraction on purged text shows the gain comes from the structured fields, and the Realtor.ca estimates are kept as the clean reference for the text layer.
Language premium reread as sorting
Within Realtor.ca, English descriptions carry a conditional premium of 4.0% that is concentrated in high-priced postal areas, which reads as between-area sorting rather than a within-neighbourhood price of language; the AI implicit prices are unchanged by language controls.
Spatially grouped validation
Holding out entire postal areas costs the full-specification OLS 7.2 points of out-of-sample R² and gradient boosting 3.7, while preserving the text and vision increments.
Quality control
This paper went through a multi-stage quality control: 6 quality-control reports and 94 points checked. The version presented on this page is the revised manuscript. Scores are on a 0–100 scale and are a diagnostic of the manuscript, not an acceptance probability.
Score after revision
69.6/100
57.3 before quality control · +12.3
Quality control dated November 4, 2026
- Quality-control decision
- major revision
- Scientific integrity
- PASS
- Reproducibility
- R1reproduced from documented analysis data
- Maturity
- Bone revision cycle from submission
- Quality-control reports
- 6
- Points checked
- 94
Scores by dimension
Before quality controlAfter revision
- Originality & contribution60.5 → 63.0
- Scientific rigor56.8 → 70.0
- Identification & methodology60.2 → 68.0
- Data & reproducibility43.8 → 72.0
- Robustness & validation63.5 → 74.0
- Writing67.5 → 72.0
- Figures & tables50.8 → 78.0
- Literature positioning59.2 → 74.0
Revised manuscript67 pages6 figures20 tables15 equations70 references27,084 words
What quality control changed
Quality control led the paper to report its results by platform and to replace the earlier explanation of the for-sale-by-owner text gain. The gain is not caused by the asking price embedded in those descriptions but by the structured property sheet they contain. Inference was redone with multiplicity control, and the limits on attribute reliability are now stated in the abstract.
- For-sale-by-owner text gain: attributed to asking-price leakage → unchanged after purging every dollar amount (3.3 → 3.5 points) and halved only when the embedded structured sheet is removed (1.5).
- Vision layer versus a change of estimator: claimed for the pooled sample → holds on Realtor.ca only (+4.9 points [+3.8, +6.3]); the pooled comparison is not informative ([−9.1, +5.5]).
- Headline out-of-sample gains: pooled → reported by platform (Realtor.ca façade +3.9 [+3.4, +4.5], text +0.7).
- Curb appeal: 2.3% per point with interval [0.1%, 3.6%] → 2.3% [0.7, 4.0] under a wild cluster bootstrap on 889 municipality clusters; of 18 significant AI coefficients, 6 survive Holm and 7 Romano–Wolf.
- English-language premium: +7.2% within municipality → 4.0% within Realtor.ca, read as between-area sorting rather than a price of language.
- Added the cost of interpretability: a dense text embedding adds +10.5 points to OLS against +0.9 for the schema fields.
Limitations stated in the paper
- The dependent variable is the asking price, and coefficients are predictive associations: listing content is chosen by sellers and agents, and the three visual quality scores are collinear enough that only their joint contribution is well identified.
- There is no human-labelled validation set; for the condition and renovation fields that carry the text implicit prices, cross-model agreement is moderate (κ between 0.60 and 0.67).
- The vision layer ran once under a model alias and could not be re-scored because 73 of 300 sampled image URLs had expired; its test–retest variability is unmeasured, and it judges each property from a single photograph.
- The data are a single-date snapshot of listings, with missing area and room detail not missing at random and a markedly worse fit on the for-sale-by-owner platform.
Data
Quebec house listings, 3 July 2026
27,302 Realtor.ca (brokered) and 7,693 DuProprio (for-sale-by-owner) raw records; single-family houses and townhouses with a valid asking price give 19,273 houses and, after outlier cleaning, an estimation sample of 19,123 (15,356 Realtor.ca, 3,767 DuProprio). Median list price $599,900; living area is not observed for 50.6% of listings.
Two estimation samples
Model A includes log living area and is fit on the 9,446 listings with a measured or reconstructed area (38.8% of them DuProprio); Model B drops area and uses the full cleaned sample. A duplicate screen places 7.0% of rows in a duplicate group; they are kept and handled by fold assignment.
Machine-generated feature layers
A language model returns a fixed set of specifications from each description (condition, kitchen and bathroom renovation, materials, heating, view, income potential); a vision–language model returns twelve fields from one façade photograph (condition, curb appeal, renovation level, materials, landscaping, setting, luxury). Raw outputs are archived.
Methodology
Schema-constrained extraction
Strict JSON schemas with closed enumerations for both layers; the text layer is decoded at temperature zero and pinned to a model snapshot for re-extraction, the vision layer ran once at the provider's default temperature.
Log-linear hedonic regression
Size, structural, amenity, room and listing blocks, then text, then vision, with 195 municipality fixed effects and property-type fixed effects; each layer is credited only with what the preceding blocks do not capture.
Clustered inference with multiplicity control
Standard errors clustered by normalised municipality (889 clusters in Model A), wild cluster bootstrap intervals, Holm and Romano–Wolf corrections, joint Wald tests, influence diagnostics and finer postal-area effects.
Predictive benchmark by platform
OLS, random forest, gradient boosting and neural networks on common feature sets with per-fold preprocessing, several fold seeds, paired postal-area block-bootstrap intervals, and both random and spatially grouped folds.
Reliability checks without human labels
Agreement with keyword and structured references, test–retest of the text extractor (κ between 0.85 and 1.00 across 19 fields), a second language model as rater (κ between 0.38 and 0.98) and a control for the model's own price guess for the text layer.
Reproducibility
- The code repository contains a single entry point that rebuilds every exhibit from the deposited files (with a reduced smoke mode), a locked environment and an exhibit-to-script map.
- A tolerance test reproduces the OLS estimates to numerical precision and the gradient-boosting scores bit-identically.
- The raw crawls are not redistributed under the platforms' terms of use; the repository documents how to re-run the collection.
- The derived, text-free analysis files, the text and façade extraction caches, the text-embedding matrix and the out-of-sample prediction vectors are deposited with a checksum manifest and are available on request.
- Every regressor can be regenerated from the archived model outputs without new API calls; the façade layer is reproducible from those outputs but could not be re-extracted because a share of the image URLs had expired.
Cite this paper
Boucher, S.-P. (2026). Hedonic House Pricing with Language-Model and Vision Features. UQO Working Paper No. 14, Université du Québec en Outaouais.
@techreport{boucher2026wp14,
author = {Simon-Pierre Boucher},
title = {Hedonic House Pricing with Language-Model and Vision Features},
institution = {Université du Québec en Outaouais, Département des sciences administratives},
number = {14},
type = {UQO Working Paper},
year = {2026},
month = {nov},
url = {https://www.spboucher.ai/research/wp14},
}More in Real Estate & Urban Economics