% ============================================================================ \section{Results II: the cost indication} \label{sec:results_cost} % ============================================================================ \subsection{Decomposition and the effect of adding channels} \label{sec:levels} Table~\ref{tab:levels} reports, for the mid-size extractor and both unit-cost anchors, the median cost indication under the five baselines, its decomposition and its alignment with the two benchmarks; Figure~\ref{fig:decomposition} shows the decomposition and Figure~\ref{fig:ratios} the distributions of the two alignment ratios. \begin{table}[H] \centering \caption{Cost indications by information set and unit-cost anchor (mid-size extractor, $n=\nSample$)} \label{tab:levels} \scriptsize \begin{adjustbox}{max width=\textwidth} \input{tables/levels_summary} \end{adjustbox} \begin{tablenotes}\footnotesize \item Note: ``Assessor ratio'' is the median of depreciated improvements over the roll's building value indexed with the metropolitan construction price index from the roll's market-conditions date to 2026-Q2; ``Price ratio'' is the median of the full indication over the asking price. MdAPE is the median absolute percentage deviation of the ratio from one; the bracketed interval is a 95\% cluster bootstrap by municipality (499 replications). Anchor B: Québec 2026 industry guides; anchor A: Altus Montréal hard costs. \end{tablenotes} \end{table} \begin{figure}[H] \centering \includegraphics[width=\textwidth]{f09_decomposition.pdf} \caption{Left: median cost indication by information set, split into indexed land value and depreciated improvements (anchor B). Right: median land, replacement cost new and depreciated improvements by building-age band under B3.} \label{fig:decomposition} \end{figure} \begin{figure}[H] \centering \includegraphics[width=\textwidth]{f10_ratio_distributions.pdf} \caption{Distributions of the market-alignment ratio (left) and the assessor-alignment ratio (right) by information set, anchor B. Horizontal bars are medians; the dashed line marks a ratio of one.} \label{fig:ratios} \end{figure} Under the Québec anchor, the roll-only baseline B0 produces a median indication of \$\VsonnetBZeroB{} with land accounting for \landSharesonnetBZeroB{} of it, a median depreciation of \DmedsonnetBZeroB{}, a ratio to the indexed assessor building value of \assRatiosonnetBZeroB{} and a ratio to the asking price of \priceRatiosonnetBZeroB{} (MdAPE \priceMdapesonnetBZeroB\%, 95\% interval \priceMdapeLosonnetBZeroB--\priceMdapeHisonnetBZeroB). Adding the text channel (B1) lifts the median indication to \$\VsonnetBOneB{}; adding the image channel instead (B2) lifts it to \$\VsonnetBTwoB{}; the multimodal baseline B3 reaches \$\VsonnetBThreeB{} with depreciation \DmedsonnetBThreeB{}, an assessor ratio of \assRatiosonnetBThreeB{} and a price ratio of \priceRatiosonnetBThreeB{} (MdAPE \priceMdapesonnetBThreeB\%, interval \priceMdapeLosonnetBThreeB--\priceMdapeHisonnetBThreeB); B4 adds little (\$\VsonnetBFourB{}, price ratio \priceRatiosonnetBFourB{}). The share of listings whose indication falls within 20\% of the asking price rises from \priceWithinTwentysonnetBZeroB\% under B0 to \priceWithinTwentysonnetBThreeB\% under B3. Three readings follow. The channels act almost entirely through depreciation: the median effective age falls from \effAgesonnetBZeroB{} years under B0 to \effAgesonnetBThreeB{} under B3, while the median replacement cost new moves from \$\RCNsonnetBZeroB{} to \$\RCNsonnetBThreeB{}, a change driven by basements and garages read from the text and by the grade read from kitchens. The improvement in market alignment is real but modest and concentrated in the level of the indication rather than in its dispersion: the median ratio moves from three quarters to close to one, the MdAPE falls by a few points, and the bootstrap intervals of B0 and B3 do not overlap, but the dispersion of the ratio around its median---visible in Figure~\ref{fig:ratios}---is essentially unchanged. And the images are worth about as much as the text and the two together are worth more than either: B2 and B1 are close, B3 improves on both, which is what one expects when the image channel carries the exterior and the kitchen and the text channel carries the basement. The anchor matters more than any channel. Under anchor A the same B3 indication has a median of \$\VsonnetBThreeA{}, an assessor ratio of \assRatiosonnetBThreeA{} and a price ratio of \priceRatiosonnetBThreeA{}; the \sensAnchorAAltusMontralHardCostsDelta\% difference between anchors dwarfs the \sensEconomicLifeSevenFiveYDelta\% of the largest depreciation scenario. Whatever listing media contribute to the specification of the building, the published unit cost sets the level of the indication. \subsection{Effect of visually inferred grade and condition} \label{sec:grade_condition} Figure~\ref{fig:grade_condition} isolates what the image channel changes relative to the roll-only baseline, listing by listing. The composite finish grade shifts replacement cost by construction: a basic grade lowers depreciated improvements relative to the standard default, an upgraded or luxury grade raises them, with medians that follow the spread of the schedule. The condition score moves depreciation by several points in either direction, with the larger moves for older houses as Proposition~\ref{prop:condition} predicts, since the condition factor multiplies chronological age. The extractors rate most listings above average---the composite condition is centred near four on the five-point scale---so the image channel mostly \emph{reduces} depreciation relative to B0's neutral assumption; whether this reflects genuinely well-kept housing stock, selective photography of the best rooms, or a generous scale is exactly what an expert annotation study would settle and what the cross-extractor disagreement of Section~\ref{sec:crossmodel} leaves open. \begin{figure}[H] \centering \includegraphics[width=\textwidth]{f12_grade_condition_effects.pdf} \caption{Listing-level effect of the image channel (B2 vs B0). Left: change in depreciated improvements by composite finish grade. Right: change in the depreciation rate against the composite visual condition.} \label{fig:grade_condition} \end{figure} \subsection{Heterogeneity by age, price tier and region} \label{sec:subgroups} Table~\ref{tab:subgroups} and Figure~\ref{fig:subgroups} report the alignment ratios by building-age band, asking-price quartile, metropolitan area and roll vintage under B3. The dominant pattern is an age gradient that no channel removes: for houses built in the last ten years the median depreciated improvements exceed the indexed assessor building value by half (ratio \subagebandZeroMinusOneZeroAssRatio) and the indication exceeds the asking price (ratio \subagebandZeroMinusOneZeroPriceRatio); for houses older than 75 years the improvements are worth \subagebandSevenSixPlusAssRatio{} of the assessor's figure and the indication is \subagebandSevenSixPlusPriceRatio{} of the price. The 26--50-year band is where the schedule aligns best (price MdAPE \subagebandTwoSixMinusFiveZeroPriceMdape\%). Read through Proposition~\ref{prop:condition} and the depreciation literature, the gradient says that a straight-line age--life schedule with a 60-year life depreciates old houses faster than either assessors or the market do and leaves too little depreciation---or too high a unit cost---for new ones. The cheapest quartile is systematically under-indicated (price ratio \subpricetierQOnePriceRatio) and the three upper quartiles are close to one; across metropolitan areas the price ratio ranges from \subcmaMontrealPriceRatio{} in Montréal, where land is a larger share of value and our uniform regional level is most likely too low, to above one in Gatineau and Trois-Rivières. The roll-vintage split shows that indexing the assessor's building value by the construction price index does not fully reconcile rolls referenced in 2022, 2023 and 2024; the 2024 rolls, which incorporate the post-2021 boom, yield the lowest assessor ratio. \begin{table}[H] \centering \caption{Alignment of the B3 indication by subgroup (mid-size extractor, anchor B)} \label{tab:subgroups} \scriptsize \begin{adjustbox}{max width=\textwidth} \input{tables/subgroups} \end{adjustbox} \begin{tablenotes}\footnotesize \item Note: COD is the coefficient of dispersion of the assessor ratio (mean absolute deviation from the median, in percent of the median), the ratio-study statistic of mass-appraisal standards. The last column gives the B0 price MdAPE for the same subgroup. \end{tablenotes} \end{table} \begin{figure}[H] \centering \includegraphics[width=0.62\textwidth]{f14_subgroups.pdf} \caption{Median absolute deviation of the B3 indication from the asking price by building-age band and asking-price quartile.} \label{fig:subgroups} \end{figure} \subsection{Calibration against the assessor and geographic hold-out} \label{sec:holdout} The schedule's parameters are public figures and declared assumptions, not estimates, and the previous subsections show them to be jointly off in level and in age slope. To learn how far, without ever using prices, we calibrate one parameter at a time against the assessor benchmark on the five metropolitan areas other than Québec City and evaluate on Québec City (Table~\ref{tab:holdout}). Two calibrations are informative. Adjusting only the unit-cost level so that the median assessor ratio equals one on the calibration areas requires a factor of \calBBThreeCalibrationLevelLevelFactor{} under anchor~B, an implied standard hard cost of \$\calBBThreeCalibrationLevelImpliedSqft{} per square foot, and \calABThreeCalibrationLevelLevelFactor{} under anchor~A, an implied \$\calABThreeCalibrationLevelImpliedSqft{}; both land near the lower edge of the Québec industry band and far above the Montréal hard-cost band. On the Québec City hold-out the level-calibrated B3 indication has an assessor ratio of \calBBThreeHoldoutLevelAssRatio{} (anchor~B) and \calABThreeHoldoutLevelAssRatio{} (anchor~A) and a price MdAPE of \calBBThreeHoldoutLevelPriceMdape\% and \calABThreeHoldoutLevelPriceMdape\%, against \calBBThreeHoldoutPubPriceMdape\% with the public parameters: the level transfers. Adjusting only the economic life, by contrast, drives the parameter to implausible values under anchor~A (\calABThreeCalibrationLifeLife{} years) because the level, not the slope, is what is wrong there; under anchor~B the roll-only baseline asks for a life of \calBBZeroCalibrationLifeLife{} years and the multimodal baseline for \calBBThreeCalibrationLifeLife{}, a reminder that the condition adjustment and the life are substitutes. These calibrations are diagnostics of the schedule, not part of the proposed method; the paper's headline indications remain those with public parameters. \begin{table}[H] \centering \caption{Calibration of one schedule parameter against the assessor benchmark and transfer to the Québec City hold-out} \label{tab:holdout} \scriptsize \begin{adjustbox}{max width=\textwidth} \input{tables/calibration_holdout} \end{adjustbox} \begin{tablenotes}\footnotesize \item Note: calibration set = Montréal, Gatineau, Sherbrooke, Trois-Rivières, Saguenay and other areas ($n=\calBBThreeCalibrationPubN$); hold-out = Québec City area ($n=\calBBThreeHoldoutPubN$). The calibration target is a median assessor ratio of one; prices are never used. \end{tablenotes} \end{table} \subsection{Market alignment, production benchmarks and recorded sales} \label{sec:market} Table~\ref{tab:market} places the indications next to the asking price and next to the three production estimates that Vrai Prix stores for each listing, which are market-value estimates and are shown for context only. The Vrai Prix reconciled estimate sits at \mktBenchmarkVpEstRatio{} of the asking price with an MdAPE of \mktBenchmarkVpEstMdape\% and \mktBenchmarkVpEstWithin\% of listings within 20\%; its production ``cost estimate'', whose formula we could not inspect, at \mktBenchmarkVpCostEstRatio{} and \mktBenchmarkVpCostEstMdape\%. Our B3 indication, which uses no price information at all, reaches a median ratio of \mktBThreeRatio{} with an MdAPE of \mktBThreeMdape\% and \mktBThreeWithin\% within 20\%, and its median ratio to the production cost estimate is \mktBThreeVpCostRatio{}. A cost approach with public parameters is thus twice as dispersed around asking prices as a hedonic model trained on half a million sales; it is not a competing price predictor, and the comparison is reported so that readers can see the size of the gap, not to close it. \begin{table}[H] \centering \caption{Market alignment of the indications and of the Vrai Prix production estimates (mid-size extractor, anchor B)} \label{tab:market} \footnotesize \begin{adjustbox}{max width=\textwidth} \input{tables/market_alignment} \end{adjustbox} \begin{tablenotes}\footnotesize \item Note: ratios to the asking price; the production benchmarks (``vp\_est'' reconciled estimate, ``vp\_cost\_est'' production cost estimate, ``roll\_model\_est'' pre-computed hedonic estimate) are market-value estimates shown for context. ``Ratio to VP cost est.'' is the median ratio of our indication to the production cost estimate. \end{tablenotes} \end{table} For the \saleSoldSupplementBThreeN{} frame listings whose roll unit recorded a sale after the listing appeared (processed with the two cheaper extractors), the B3 indication has a median ratio to the recorded sale price of \saleSoldSupplementBThreeRatio{} and an MdAPE of \saleSoldSupplementBThreeMdape\%, against \saleSoldSupplementBZeroRatio{} and \saleSoldSupplementBZeroMdape\% for B0; the asking price exceeded the sale price by a median of \saleSoldSupplementBThreeAskSale{} in this set (Table~\ref{tab:sales}, Figure~\ref{fig:sales}). The sample is small and the sellers who closed quickly are not a random draw of the frame; we report it because it is the only comparison with a transaction rather than an asking price, and we label it as a market-alignment statistic. \begin{table}[H] \centering \caption{Alignment with recorded sale prices for units sold after listing} \label{tab:sales} \footnotesize \input{tables/recorded_sales} \end{table} \begin{figure}[H] \centering \includegraphics[width=0.5\textwidth]{f15_recorded_sales.pdf} \caption{B3 cost indication and asking price against the recorded sale price for units sold after listing (log scales).} \label{fig:sales} \end{figure}