We examine the relationship between exchange rates and macroeconomic fundamentals using a two-step maximum likelihood estimator through which we compute time-varying factor loadings. Factors are obtained as principal components, extracted from vintage macro-datasets that combine FRED-MD and OECD databases. Using 14 currencies over 1990–2021, we show that the loadings on the factors vary considerably over time and increase the percentage of explained variation in exchange rates by an order of magnitude. Time-varying loadings improve the overall predictive ability of the model, especially during crises, and lead to better forecasts of sign changes in exchange rates.