# Google page intersection

This endpoint will provide you with the keywords for which specified pages rank within the same SERP. Needs pages. Served by DataForSEO.

This endpoint will provide you with the keywords for which specified pages rank within the same SERP. You will get search volume, competition, cost-per-click data on each intersecting keyword. Along with that, you will get data on SERP elements that specified pages rank for in search results, as well as the estimated traffic volume and cost of ad traffic. Page Intersection endpoint supports organic, paid, local pack and featured snippet results

- Tool ID: `dataforseo/dataforseo-labs-google-page-intersection`
- Name in the catalog: Seo Labs Google Page Intersection
- Provider: [DataForSEO](/providers/dataforseo.md)
- Capability: [Competitor domains & rankings](/tools/seo/domain-analytics.md)
- Price: usage based, the maximum is shown before a run
- Authentication: an authorised Agentik workspace is required for execution, including zero-price tools.

## Pricing contract

Billed at the cost the provider reports for the call, never above $100. Your agent sees the maximum before running.


```json
{
  "model": "reported",
  "costPath": "cost",
  "maxUsdDefault": 0.012,
  "maxUsdCap": 100,
  "multipliers": [
    {
      "addUsdPer": {
        "field": "limit",
        "usd": 0.00012,
        "default": 10,
        "max": 1000
      }
    }
  ],
  "requireCost": true
}
```

Pricing source: [https://docs.dataforseo.com/v3/appendix/user_data/](https://docs.dataforseo.com/v3/appendix/user_data/). Account tariff dataforseo_labs/page_intersection/live; bounds applied to inputs; actual cost from provider response..

Price verification date: 2026-10-10.

## Complete input schema


```json
{
  "type": "object",
  "properties": {
    "pages": {
      "type": "object",
      "description": "target URLs of pages required field you can set up to 20 pages in this object the pages should be specified with absolute URLs (including http:// or https://) example: `\"pages\": {` `\"1\":\"https://www.apple.com/mac/*\",` `\"2\":\"https://datafors",
      "properties": {},
      "additionalProperties": {
        "type": "string",
        "maxLength": 2000,
        "minLength": 1
      }
    },
    "exclude_pages": {
      "type": "array",
      "description": "URLs of pages you want to exclude optional field you can set up to 10 pages in this array if you use this array, results will contain the keywords for which URLs from the pages object rank, but URLs from exclude_pages array do not;note that",
      "items": {
        "type": "string",
        "maxLength": 2000,
        "minLength": 1
      },
      "maxItems": 10,
      "minItems": 1
    },
    "location_name": {
      "type": "string",
      "description": "full name of the location required field if you don't specify location_code Note: it is required to specify either location_name or location_code you can receive the list of available locations with their location_name by making a separate ",
      "maxLength": 2000,
      "minLength": 1
    },
    "location_code": {
      "type": "integer",
      "description": "location code required field if you don't specify location_name Note: it is required to specify either location_name or location_code you can receive the list of available locations with their location_code by making a separate request to t"
    },
    "language_name": {
      "type": "string",
      "description": "full name of the language required field if you don't specify language_code Note: it is required to specify either language_name or language_code you can receive the list of available languages with their language_name by making a separate ",
      "maxLength": 2000,
      "minLength": 1
    },
    "language_code": {
      "type": "string",
      "description": "language code required field if you don't specify language_name Note: it is required to specify either language_name or language_code you can receive the list of available languages with their language_code by making a separate request to t",
      "maxLength": 10,
      "minLength": 1
    },
    "item_types": {
      "type": "array",
      "description": "search results type indicates type of search results included in the response optional fieldpossible values: [\"organic\", \"paid\", \"featured_snippet\", \"local_pack\"] default value: [\"organic\", \"paid\"]",
      "items": {
        "type": "string",
        "maxLength": 2000,
        "minLength": 1
      },
      "maxItems": 100,
      "minItems": 1
    },
    "limit": {
      "type": "integer",
      "description": "the maximum number of returned keywords optional field default value: 100 maximum value: 1000",
      "maximum": 100,
      "minimum": 1,
      "default": 10
    },
    "offset": {
      "type": "integer",
      "description": "offset in the items array of returned keywords optional field default value: 0 if you specify 10 here, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords",
      "minimum": 0
    },
    "include_subdomains": {
      "type": "boolean",
      "description": "indicates if the subdomains will be included in the search optional field if set to false, the subdomains will be ignored default value: true"
    },
    "intersection_mode": {
      "type": "string",
      "description": "indicates whether to intersect keywords optional field use this field to intersect or merge results for the specified URLspossible values: union, intersectunion - results are based on all keywords any URL from pages rank for;intersect - res",
      "maxLength": 2000,
      "minLength": 1
    },
    "include_serp_info": {
      "type": "boolean",
      "description": "include data from SERP for each keyword optional field if set to true, we will return a serp_info array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response default value: false"
    },
    "ignore_synonyms": {
      "type": "boolean",
      "description": "ignore highly similar keywords optional field if set to true only core keywords will be returned, all highly similar keywords will be excluded; default value: false"
    },
    "filters": {
      "type": "array",
      "description": "array of results filtering parameters optional field you can add several filters at once (8 filters maximum) you should set a logical operator and, or between the conditions the following operators are supported: regex, not_regex, <, <=, >,",
      "items": {},
      "maxItems": 15,
      "minItems": 1
    },
    "order_by": {
      "type": "array",
      "description": "results sorting rules optional field you can use the same values as in the filters array to sort the results possible sorting types: asc - results will be sorted in the ascending order desc - results will be sorted in the descending order y",
      "items": {
        "type": "string",
        "maxLength": 2000,
        "minLength": 1
      },
      "maxItems": 3,
      "minItems": 1
    },
    "tag": {
      "type": "string",
      "description": "user-defined task identifier optional field the character limit is 255 you can use this parameter to identify the task and match it with the result you will find the specified tag value in the data object of the response",
      "maxLength": 255
    }
  },
  "required": [
    "pages"
  ],
  "additionalProperties": false,
  "allOf": [
    {
      "anyOf": [
        {
          "required": [
            "location_code"
          ]
        },
        {
          "required": [
            "location_name"
          ]
        }
      ]
    },
    {
      "anyOf": [
        {
          "required": [
            "language_code"
          ]
        },
        {
          "required": [
            "language_name"
          ]
        }
      ]
    }
  ]
}
```

## Published example

This is the provider tool’s published example. Replace example values with the user’s requested inputs, respecting the schema; do not execute an example merely to test a connection.


```json
{
  "tool_id": "dataforseo/dataforseo-labs-google-page-intersection",
  "input": {
    "pages": {
      "1": "https://forbes.com",
      "2": "https://cnn.com/*"
    },
    "language_name": "English",
    "location_code": 2840,
    "include_serp_info": true,
    "limit": 10
  }
}
```

## Execute and retrieve

Inspect again before execution, explain the price and obtain the required authority. Use MCP run_tool or POST /v1/run with this tool ID, valid input and an idempotency key. Save the returned run ID and follow the actual state. If Agentik answers that the tool is temporarily unavailable, do not retry it blindly; use discovery to propose an alternative.

A partial or uncertain result can still have consumed provider resources. Consult [billing](/docs/billing.md), [idempotency](/docs/idempotency.md) and [asynchronous results](/docs/async.md).

[Provider documentation](https://docs.dataforseo.com/v3/dataforseo_labs/google/page_intersection/live/)

[REST inspection](https://api.agentik.cc/v1/tools/dataforseo/dataforseo-labs-google-page-intersection) · [OpenAPI](/openapi.json) · [Connection guide](/connect.md)

---

[HTML page](/providers/dataforseo/dataforseo-labs-google-page-intersection) · [Agent index](/llms.txt)
