Does anybody have suggestions on how to de-normalize Google Trends data? The site says that their trends are made with the following metric:

The numbers on the graph reflect how many searches have been done for a particular term, relative to the total number of searches done on Google over time. They don't represent absolute search volume numbers, because the data is normalized and presented on a scale from 0-100. Each point on the graph is divided by the highest point and multiplied by 100. When we don't have enough data, 0 is shown

I've been trying to work backwards from there but realized I need the peak value for each search query, which I don't have. Any thoughts appreciated.

• I wonder if this question does not suite better for opendata.stackexchange.com ... – Tim Apr 25 '15 at 7:12
• I don't think it fits opendata. It's a simple question about a normalization strategy, but unfortunately there is any solution if you don't know the maximal value of the search volume array! – stochazesthai Apr 25 '15 at 7:21
• I have a paper related to denormalization of Google Trends' indices here: jmir.org/2020/1/e13347 The short tutorial on denormalization is here: slideshare.net/ShahanAliMemon/… – Shahan Ali Memon Jun 30 '20 at 3:12

Since the normalization consists in $$\mathbf{z} = \frac{\mathbf{x}}{\max(\mathbf{x})},$$ where $\mathbf{x}$ is the vector of search volumes, and $\max(\mathbf{x})$ is the maximal element of $\mathbf{x}$, if you want de-normalized data, you should multiply each element of the normalized vector times the maximal element of $\mathbf{x}$:

$$\mathbf{x} = \mathbf{z} \times \max(\mathbf{x}).$$

Unfortunately, if you don't know the value of $\max(\mathbf{x})$ you can't de-normalize your data.

• Google AdWords provide monthly keyword search volumes. Might be useful a starting point. – Gajus Nov 12 '18 at 22:21

De-normalizing Google Trends data can be very useful, but it is tricky, due to rounding errors: when comparing 2 queries of vastly different search volume, the time series for the less frequent query could appear to be 0 everywhere.

To solve this problem, we have developed a method called Google Trends Anchor Bank. It's available here: https://github.com/epfl-dlab/GoogleTrendsAnchorBank

A technical paper describing the method is available here: https://arxiv.org/abs/2007.13861