Gold Composite Valuation Indicator
Composite of real purchasing-power valuation, mining production costs, gold relative to M2, and GLD ETF fund flows
Gold price (left, log; monthly history with a weekly tail to the present) against a four-component weighted composite valuation indicator (right). Positive readings indicate expensive gold; negative readings indicate cheap gold. The displayed series is the weighted raw composite (Jan 2019–present); the fully normalized Z is retained as a diagnostic because its warm-up history is short.
Component Weighting — drag to recomposite live
Absolute valuation 27%
Production-cost 21%
Gold vs M2 27%
GLD net flows 25%
Drag = pan · shift+drag = box-zoom · scroll = zoom X · drag Y-axis = zoom Y · double-click = reset
Methodology
A transparent monthly valuation gauge answering: is gold expensive or cheap relative to its inflation-adjusted history, mining production costs, the money supply, and ETF investor behaviour? Interpretation is consistent across all components — positive = expensive, negative = cheap, zero ≈ neutral, above +2 = extreme overvaluation, below −2 = extreme undervaluation.

Components and weights

Raw composite = 0.27 × Absolute valuation Z + 0.21 × Production-cost Z + 0.27 × Gold-vs-M2 Z + 0.25 × GLD flows Z (default weights sum to 1.0; not optimized against returns). Each component Z is capped to [−3, +3] before combining, so the raw composite is bounded to [−3, +3]. The composite is only computed when all four components are present — there is no dynamic reweighting around missing data. The weighting panel above lets you re-blend the four components in-page; sliders stay coupled at 100% and the displayed composite updates live. A macro fair-value component (rolling real-yield / US-dollar regression) was evaluated but excluded because it correlated weakly with the other components and added little independent signal.

Component 1 — Absolute real-gold valuation (27%)

Real gold = gold price / CPI; input = ln(real gold). Standardized against its trailing 180-month distribution (min 60 prior observations), excluding the current month.

Component 2 — Synthetic mining-cost valuation (21%)

A transparent monthly input-cost proxy built from mining & logging hourly earnings (40%), mining machinery & equipment PPI (20%), industrial electric power PPI (20%), and a 12-month trailing average of crude oil (20%). Inputs are rebased to 100 at their first common month and combined as a geometric weighted average. Input = ln(gold price / synthetic cost), standardized against its trailing 180-month distribution (min 60). This is a production-cost proxy, not reported global AISC.

Component 3 — Gold relative to M2 (27%)

Input = ln(gold price / US M2 money stock, FRED series M2SL). A rising ratio means gold is outpacing the growth of the money supply — expensive relative to money printing; a falling ratio means cheap. Standardized against its trailing 180-month distribution (min 60 prior observations).

Component 4 — GLD ETF net flows (25%)

Input = trailing 3-month net creation/redemption flows into the GLD ETF (millions USD), the same series used by the GLD Price & Net Flows chart. Sustained net inflows indicate strong investor demand (gold expensive); sustained outflows indicate weak demand (gold cheap). Standardized against its trailing 180-month distribution (min 60 prior observations). Flow data begins January 2014.

Final normalization and displayed series

The weighted raw composite is re-standardized against its own trailing 180-month history (min 60 prior observations) to produce a normalized composite Z. Because the GLD flow series only begins in 2014, the normalized composite has a short history (starting 2024); per the methodology’s fallback rule, the chart therefore displays the weighted raw composite as its main line and retains the normalized Z as a hidden diagnostic series. The raw composite is bounded to [−3, +3] by construction, so the ±1 / ±2 valuation thresholds remain directly interpretable on the displayed scale.

Mathematical conventions

Natural logarithms are used for price levels, ratios, CPI, cost indexes, and the money stock; flow levels are not logged. Rolling Z-scores use the sample standard deviation of strictly prior observations (the current month is excluded from its own benchmark). Missing observations are preserved as missing and never coerced to zero or interpolated across substantial gaps.

Data and alignment

Monthly observations are aligned to calendar month-end (weekly GLD flows reduced to the last observation of each month). Because the mining-wage series begins in March 2006 and GLD flows begin in January 2014, and because the z-score windows require warm-up, the four-component composite begins in January 2019. Warm-up periods are left blank, never fabricated. All statistics at month t use only information available through t−1.