The cost depends on the size and location parameters of the specific database.
The cost can be found on the Historical Google Databases pricing page.
Historical Google Keywords Database
Historical Google Keyword Databases can provide you with billions of keywords enriched with historical keyword data: search volume, competition, and more.
Note that historical data is available starting from 08-2021.
This database is available in JSON format only.
Click here to download a database sample for the US location, English language.
You can also download the full list of supported locations in the CSV format (last updated 2025-08-05).
Description of the fields in the database:
| Field name | Type | Description |
|---|---|---|
keyword |
string | keyword UTF-8 encoding applies |
location |
integer | location code unique identifier of the corresponding location you can receive the list of available locations with their location_code by a GET request tohttps://api.dataforseo.com/v3/dataforseo_labs/locations_and_languagesexample: 2840 corresponds to the United States |
language |
string | language code unique identifier of the language available for the corresponding location you can receive the list of available locations with their language_code by a GET request tohttps://api.dataforseo.com/v3/dataforseo_labs/locations_and_languagesexample: en corresponds to English |
spell |
string | autocorrection of the search engine if the search engine provided results for a keyword that was corrected, we will provide the keyword corrected by the search engine and the type of autocorrection |
spell_type |
string | type of autocorrection possible values: did_you_mean, showing_results_for, no_results_found_for
|
keyword_info_history |
object | historical keyword data for the returned keyword |
$date |
object | date variable provided in the “YYYYMM” format example: "202109" |
search_volume |
integer | average monthly search volume rate represents either the approximate number of searches for the given keyword idea on google.com or google.com and partners, depending on the user’s targeting |
cpc |
float | cost-per-click represents the average cost per click (USD) historically paid for the keyword note that Google Ads does not provide separate CPC data; this field returns values based on data from high_top_of_page_bid supplied in Google Ads |
competition |
float | competition represents the relative amount of competition associated with the given keyword; the value is based on Google Ads data and can be between 0 and 1 (inclusive) |
competition_level |
string | competition level represents the relative level of competition associated with the given keyword in paid SERP only; possible values: LOW, MEDIUM, HIGHif competition level is unknown, the value is null;learn more about the metric in this help center article |
low_top_of_page_bid |
float | minimum bid for the ad to be displayed at the top of the first page indicates the value greater than about 20% of the lowest bids for which ads were displayed (based on Google Ads statistics for advertisers) the value may differ depending on the location specified in a POST request |
high_top_of_page_bid |
float | maximum bid for the ad to be displayed at the top of the first page indicates the value greater than about 80% of the lowest bids for which ads were displayed (based on Google Ads statistics for advertisers) the value may differ depending on the location specified in a POST request |
time_update |
string | date and time when keyword data was last updated in the ISO 8601 format: “YYYY-MM-DDThh:mm:ss.sssssssZ” example: 2020-09-12T00:07:43.0733218Z |
categories |
array | product and service categories you can download the full list of possible categories |
history |
object | monthly searches represents the (approximate) number of searches on the returned keyword in the given location for 4 years preceding the $date variable;example: "202109":40
|
extra |
array | additional information about the keyword |
core_keyword |
string | main keyword in a group contains the main keyword in a group of keywords that share similarities across the keyword_info parametersif the value is null, our database does not contain any keywords that match these criteria |
synonym_clustering_algorithm |
string | the algorithm used to identify synonyms possible values: keyword_metrics – indicates the algorithm based on keyword_info parameterstext_processing – indicates the text-based algorithmif the value is null, our database does not contain any keywords the corresponding algorithm could identify as synonymous with keyword |
detected_language |
string | detected language of the keyword indicates the language of the keyword as identified by our system |
keyword_difficulty |
integer | difficulty of ranking in the first top-10 organic results for a keyword indicates the chance of getting in top-10 organic results for a keyword on a logarithmic scale from 0 to 100; calculated by analysing, among other parameters, link profiles of the first 10 pages in SERP; learn more about the metric in this help center guide |
search_intent_info |
object | search intent info for the returned keyword learn about search intent in this help center article |
main_intent |
string | main search intent possible values: informational, navigational, commercial, transactional
|
foreign_intent |
array | supplementary search intents possible values: informational, navigational, commercial, transactional
|
last_updated_time |
string | date and time when search intent data was last updated in the ISO 8601 format: “YYYY-MM-DDThh:mm:ss.sssssssZ” example: 2022-09-12T00:07:43.0733218Z |
