← library
skill🧰 Engineering practicev1 · published 2026-11-09 · updated 2026-11-09

Search performance

Reads how a site really performs in search from first-party sources (Google Search Console, Bing Webmaster Tools, Chrome UX Report field data and PageSpeed Insights) and turns it into a short list of fixes. Use when asked about rankings, clicks, impressions, indexing, Core Web Vitals, or whether an SEO change worked, or when seo-aeo-audit passes but pages still aren't found.

By Uplift Duo

Run it as a prompt

Paste this into any AI agent, or fetch it: curl -s https://uplift.page/api/v1/prompts/search-performance/raw

prompt.md
# Search performance

An audit proves a page can be found. Only the search engines know whether it is. This skill reads their own data, finds the few pages where a fix would move clicks, and says plainly what the data cannot show.

## When to use

- Someone asks how the site ranks, how many clicks it gets, or why traffic changed
- New pages aren't showing up in search weeks after publishing
- Checking whether an SEO or content change worked
- Core Web Vitals questions, or a page that feels slow to real visitors

## Steps

1. Ask which Search Console property and Bing Webmaster Tools site the user can read, and how they want to share it (API access or an export). Never estimate numbers you can't read.
2. Compare the last 28 days with the 28 before, by page and by query: clicks, impressions, click-through rate, average position.
3. Pick out three kinds of page: many impressions but few clicks (rewrite the title and description), queries at positions 5 to 15 (improve the content), and pages with no impressions four weeks after publishing (an indexing problem).
4. For the indexing problems, read Search Console's page indexing report and URL Inspection, then Bing's URL inspection. Compare them with the sitemap the seo-aeo-audit script reads.
5. Read Core Web Vitals field data from the Chrome UX Report for the origin and top pages. Good at the 75th percentile: LCP up to 2.5 s, INP up to 200 ms, CLS up to 0.1. Use Lighthouse lab data only to explain a failing field number.
6. To check a change, compare equal windows before and after the page was recrawled, and save an audit snapshot (`--save`) at the same time.
7. Report what moved, the likely cause, the next three fixes, and what the data can't show.

## Rules

- Rankings, clicks and indexing come only from Search Console and Bing Webmaster Tools. Label third-party numbers as estimates, and use them only from a tool the user already pays for.
- Send only URLs and the user's own credentials, and only to Google or Microsoft.
- Never credit a change with movement from one window. Check seasonality and the Google Search Status Dashboard for ranking updates first.
- Say when a source has too little data. Search Console hides rare queries, and CrUX has no record for low-traffic pages.

## Where the data lives

| Source | What it answers | Access |
|---|---|---|
| Search Console Performance | Clicks, impressions, CTR, position by page, query, country, device | UI export, or the Search Analytics API (`searchanalytics.query`) with OAuth scope `webmasters.readonly` |
| Search Console URL Inspection | Whether Google indexed a URL, its chosen canonical, last crawl | UI, or `urlInspection.index.inspect` (daily quota) |
| Search Console page indexing | Why pages are excluded across the site | UI |
| Bing Webmaster Tools | Bing clicks and impressions, URL inspection, IndexNow history | UI, or its API with a key from the Bing Webmaster settings |
| Chrome UX Report (CrUX) | Real-visitor LCP, INP, CLS by origin or URL, 28-day rolling; history by week | `records:queryRecord` and `records:queryHistoryRecord` with a Google API key in the `X-Goog-Api-Key` header |
| PageSpeed Insights | One lab run plus the CrUX field data for a URL | API with the same key, or pagespeed.web.dev |

Answer-engine citations are mostly invisible. Google counts AI Overviews and AI Mode traffic inside Search Console's web totals without a separate filter. Check whether Bing Webmaster Tools shows AI citation data for the site; beyond that, no first-party source reports citations in ChatGPT, Claude or Perplexity.

## Reading the numbers

- Average position is an impression-weighted mean. A page can rise for one query and fall for many, so read it per query.
- Low CTR at a good position usually means the title or description misreads the query. Rewrite those from the page's real content, never per keyword.
- After a fix, Google needs to recrawl the page. Check URL Inspection's last crawl date before you read any results.
- Field and lab data disagree by design: CrUX is real visitors over 28 days, Lighthouse is one simulated load. Grade on field data.

Install it as a skill

Agents that support the Agent Skills standard load it automatically when it applies.

download
curl -fsSL https://uplift.page/p/search-performance/SKILL.md --create-dirs -o .agents/skills/search-performance/SKILL.md
or from any MCP client
MCP server: https://uplift.page/mcp
Tool: pull_skill  {"slug": "search-performance"}

The full skill

An audit proves a page can be found. Only the search engines know whether it is. This skill reads their own data, finds the few pages where a fix would move clicks, and says plainly what the data cannot show.

When to use

  • Someone asks how the site ranks, how many clicks it gets, or why traffic changed
  • New pages aren't showing up in search weeks after publishing
  • Checking whether an SEO or content change worked
  • Core Web Vitals questions, or a page that feels slow to real visitors

Steps

  1. Ask which Search Console property and Bing Webmaster Tools site the user can read, and how they want to share it (API access or an export). Never estimate numbers you can't read.
  2. Compare the last 28 days with the 28 before, by page and by query: clicks, impressions, click-through rate, average position.
  3. Pick out three kinds of page: many impressions but few clicks (rewrite the title and description), queries at positions 5 to 15 (improve the content), and pages with no impressions four weeks after publishing (an indexing problem).
  4. For the indexing problems, read Search Console's page indexing report and URL Inspection, then Bing's URL inspection. Compare them with the sitemap the seo-aeo-audit script reads.
  5. Read Core Web Vitals field data from the Chrome UX Report for the origin and top pages. Good at the 75th percentile: LCP up to 2.5 s, INP up to 200 ms, CLS up to 0.1. Use Lighthouse lab data only to explain a failing field number.
  6. To check a change, compare equal windows before and after the page was recrawled, and save an audit snapshot (--save) at the same time.
  7. Report what moved, the likely cause, the next three fixes, and what the data can't show.

Rules

  • Rankings, clicks and indexing come only from Search Console and Bing Webmaster Tools. Label third-party numbers as estimates, and use them only from a tool the user already pays for.
  • Send only URLs and the user's own credentials, and only to Google or Microsoft.
  • Never credit a change with movement from one window. Check seasonality and the Google Search Status Dashboard for ranking updates first.
  • Say when a source has too little data. Search Console hides rare queries, and CrUX has no record for low-traffic pages.

Where the data lives

Source What it answers Access
Search Console Performance Clicks, impressions, CTR, position by page, query, country, device UI export, or the Search Analytics API (searchanalytics.query) with OAuth scope webmasters.readonly
Search Console URL Inspection Whether Google indexed a URL, its chosen canonical, last crawl UI, or urlInspection.index.inspect (daily quota)
Search Console page indexing Why pages are excluded across the site UI
Bing Webmaster Tools Bing clicks and impressions, URL inspection, IndexNow history UI, or its API with a key from the Bing Webmaster settings
Chrome UX Report (CrUX) Real-visitor LCP, INP, CLS by origin or URL, 28-day rolling; history by week records:queryRecord and records:queryHistoryRecord with a Google API key in the X-Goog-Api-Key header
PageSpeed Insights One lab run plus the CrUX field data for a URL API with the same key, or pagespeed.web.dev

Answer-engine citations are mostly invisible. Google counts AI Overviews and AI Mode traffic inside Search Console's web totals without a separate filter. Check whether Bing Webmaster Tools shows AI citation data for the site; beyond that, no first-party source reports citations in ChatGPT, Claude or Perplexity.

Reading the numbers

  • Average position is an impression-weighted mean. A page can rise for one query and fall for many, so read it per query.
  • Low CTR at a good position usually means the title or description misreads the query. Rewrite those from the page's real content, never per keyword.
  • After a fix, Google needs to recrawl the page. Check URL Inspection's last crawl date before you read any results.
  • Field and lab data disagree by design: CrUX is real visitors over 28 days, Lighthouse is one simulated load. Grade on field data.

Served from the uplift.page library and refreshed within 5 minutes of every update.