Search Console Performance
gsc_performanceRead Google Search Console performance (clicks, impressions, CTR, position) by query, page, dimension, or period comparison. Your own connected property; data is Google-finalized with a ~2-3 day lag. days/dates bound every action, and compare_periods contrasts the window with the one immediately before it. Queries for ONE page: dimension_breakdown with dimension=query and filterPage (that page's own numbers per query). Pages for ONE query: dimension_breakdown with dimension=page and filterQuery, or query_pages. The whole site's query-to-page map: query_page_matrix. For diagnosis (cannibalization, CTR outliers) use gsc_insights rather than recomputing here. Already scoped to the connected workspace and its site; no domain or site parameter is needed. Cost: FREE - reads your connected/stored data, no AI credits.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| days | No | Look-back window in days (defaults ~28). 1-90 for most actions; 7-90 for trend. | |
| page | No | query_pages only: a full page URL to check - returns its own row for each query, or null when it does not rank. | |
| depth | No | folder_rollup only: path depth to group by (1-3, default 1). | |
| limit | No | Row cap. top_queries/top_pages/dimension_breakdown default 50; compare_periods rows per period default 500. Ignored by query_page_matrix (use maxRows) and trend. | |
| action | Yes | Which operation to run. top_queries (top search queries); top_pages (top pages); dimension_breakdown (by device/country/date, or one page's queries (query + filterPage) / one query's pages (page + filterQuery)); query_page_matrix (cannibalization / query-to-page map); query_pages (which pages rank for given queries, with each page's own numbers); compare_periods (decay/growth vs the prior period); trend (daily clicks/impressions over time); discover_news (Discover / News / Image / Video surfaces); folder_rollup (performance by URL folder / site section); fresh (provisional today/yesterday numbers (hours-old data)). | |
| maxRows | No | query_page_matrix only: max query-page pairs (100-1000, default 200). | |
| queries | No | REQUIRED for query_pages: 1-5 exact search queries. Page rows are that page's own numbers; queryTotal is site-wide and never a page's number. | |
| surface | No | discover_news only: which surface (default discover). | |
| dimension | No | REQUIRED for dimension_breakdown: device|country|date|query|page (query + filterPage = the queries one page ranks for, with that page's own numbers; page + filterQuery = the pages ranking for one query). For compare_periods: query|page (default page). Ignored otherwise. | |
| filterPage | No | dimension_breakdown only: restrict to one exact page URL, as Search Console records it (pair with dimension=query to see the queries that page ranks for). | |
| filterQuery | No | dimension_breakdown only: restrict to one exact query (pair with dimension=page to see which pages rank for it). |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||