
One call returns keywords a domain ranks for in Google search, limited by the specified count. Each item in the answer is a keyword with its ranking position, search volume, and the SERP result the domain ranks for. The sample shows 10 keywords.
1 live route on DataForSEO, from $0.0132 per call. Every route below answered our last live test on 2026-10-04; the gateway re-tests them daily.
The upstream price you are metered at, cheapest first. A route without a published price says so.
| Provider | Endpoint | Price |
|---|---|---|
Keywords a domain ranks forPOST dataforseo_labs/google/ranked_keywords/live | $0.0132$13.20 / 1k calls |
From a real call to the route: DataForSEO.
tasks[].result[].items[].keyword_data.keywordKeyword the domain ranks fortasks[].result[].items[].ranked_serp_element.serp_item.rank_absoluteRanking position for this keywordtasks[].result[].items[].keyword_data.keyword_info.search_volumeMonthly search volume for the keywordtasks[].result[].items[].ranked_serp_element.serp_item.urlURL of the domain's ranking pagetasks[].result[].items[].ranked_serp_element.serp_item.etvEstimated traffic value from this rankingtasks[].result[].items[].keyword_data.keyword_info.competition_levelCompetition level for the keywordtasks[].result[].items[].keyword_data.keyword_properties.keyword_difficultyKeyword difficulty scoretasks[].result[].items[].keyword_data.search_intent_info.main_intentPrimary search intentHTTP with your key in x-api-key, or the call_endpoint tool of our MCP server.
| Parameter | Type | Notes | |
|---|---|---|---|
| limit | int · body | JSON body field | e.g. 10 |
| target | str · body | JSON body field | e.g. "pokemon.com" |
| language_code | str · body | JSON body field | e.g. "en" |
| location_code | int · body | JSON body field | e.g. 2840 |
curl -X POST "https://fetchapi.co/api/gw/dataforseo/dataforseo_labs/google/ranked_keywords/live" \
-H "x-api-key: YOUR_KEY" -H "content-type: application/json" \
-d '[{"limit": 10, "target": "pokemon.com", "language_code": "en", "location_code": 2840}]'call_endpoint("dataforseo.dataforseo_labs_google_ranked_keywords", {}, [{"limit": 10, "target": "pokemon.com", "language_code": "en", "location_code": 2840}]){
"cost": 0.0132,
"time": "0.4125 sec.",
"tasks": [
{
"id": "10040440-2697-0381-0000-a2dd113efd1e",
"cost": 0.0132,
"data": {
"api": "dataforseo_labs",
"limit": 10,
"target": "pokemon.com",
"se_type": "google",
"function": "ranked_keywords",
"language_code": "en",
"location_code": 2840
},
"path": [
"v3",
"dataforseo_labs",
"… 2 more"
],
"time": "0.4071 sec.",
"result": [
{
"items": [
{
"se_type": "…",
"keyword_data": "…",
"ranked_serp_element": "…"
},
{
"se_type": "…",
"keyword_data": "…",
"ranked_serp_element": "…"
},
"… 2 more"
],
"target": "pokemon.com",
"metrics": {
"paid": {
"etv": "…",
"count": "…",
"is_up": "…",
"pos_1": "…",
"is_new": "…",
"is_down": "…",
"is_lost": "…",
"pos_2_3": "…",
"pos_4_10": "…",
"pos_11_20": "…",
"pos_21_30": "…",
"pos_31_40": "…",
"pos_41_50": "…",
"pos_51_60": "…",
"…": "8 more fields"
},
"organic": {
"etv": "…",
"count": "…",
"is_up": "…",
"pos_1": "…",
"is_new": "…",
"is_down": "…",
"is_lost": "…",
"pos_2_3": "…",
"pos_4_10": "…",
"pos_11_20": "…",
"pos_21_30": "…",
"pos_31_40": "…",
"pos_41_50": "…",
"pos_51_60": "…",
"…": "8 more fields"
},
"local_pack": null,
"featured_snippet": null,
"ai_overview_reference": null
},
"se_type": "google",
"items_count": 10,
"total_count": 366213,
"language_code": "en",
"location_code": 2840,
"metrics_absolute": null
}
],
"status_code": 20000,
"result_count": 1,
"status_message": "Ok."
}
],
"version": "0.1.20260917",
"status_code": 20000,
"tasks_count": 1,
"tasks_error": 0,
"status_message": "Ok."
}Call it over HTTP or from any MCP client. Each key has a rate limit and a monthly cap; calls are metered at the upstream price.