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.

Here's an example Google Trends search: http://www.google.com/trends/explore#q=stack%20exchange&cmpt=q&tz=

  • $\begingroup$ I wonder if this question does not suite better for opendata.stackexchange.com ... $\endgroup$
    – Tim
    Apr 25, 2015 at 7:12
  • $\begingroup$ 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! $\endgroup$ Apr 25, 2015 at 7:21
  • $\begingroup$ 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/… $\endgroup$ Jun 30, 2020 at 3:12

2 Answers 2


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.

  • 3
    $\begingroup$ Google AdWords provide monthly keyword search volumes. Might be useful a starting point. $\endgroup$
    – Gajus
    Nov 12, 2018 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


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.