Use case4 min read2026-07-30

Track AI product recommendations

"What should I buy?" questions used to end at a comparison site. Now they end inside an AI answer that shortlists three to five products — and for the buyer who asked, that shortlist is the market. Recommendation tracking is the job of knowing whether you're on it: per buying query, per engine, per week. It is a stricter test than brand visibility. An answer can mention you while recommending someone else, and the difference between "Acme is also worth a look" and "start with Acme" is the difference that shows up in pipeline. The raw answer text is where that difference lives — which is why this job runs on records, not on a mention count alone.

Read this page with an AI

The output: a dated grid of buying queries × engines, each cell holding whether you appeared, how you were framed, and who else made the list. The framing column is the one sales asks about.

How recommendation tracking works

  1. Collect buying-intent phrasings. "best [category] for [audience]", "what should I use for [job]", "[category] under $X", "[rival] alternatives". Recommendation behavior differs sharply from informational queries — keep the sets separate.
  2. Fetch across the engines your buyers use. One POST /v1/fetches per query with the engines in surfaces; the answer text and cited sources come back as one record per engine.
  3. Extract the shortlist, not just your name. Record every product the answer names and the order they appear in. Your position inside the shortlist — and who sits above you — is the trend worth graphing.
recommendations.py — the shortlist per engine
import requests

PRODUCTS = ["Acme", "Northwind", "Globex", "Initech"]  # the market as you sell it

resp = requests.post(
    "https://api.agentgeo.org/v1/fetches",
    json={
        "query": "best project management tool for a 10-person agency",
        "surfaces": ["chatgpt", "gemini", "copilot"],
    },
    headers={"Authorization": "Bearer ag_live_your_key_here"},
    timeout=200,
)
resp.raise_for_status()

for answer in resp.json()["answers"]:
    text = (answer.get("answerText") or "").lower()
    shortlist = sorted(
        (p for p in PRODUCTS if p.lower() in text),
        key=lambda p: text.index(p.lower()),
    )
    print(f"{answer['surfaceKey']:20} {' > '.join(shortlist) or '(none of the tracked set)'}")

First-appearance order is a serviceable proxy for shortlist rank, but read a sample of the actual answers each run: "we'd avoid Acme for this" also puts you early in the text. For framing at scale, the is-my-product-recommended guide adds a classifier step with a fixed rubric.

Ask the audience-qualified version of every query — "for a 10-person agency", "for enterprise", "for a solo founder". Engines shortlist differently per audience, and being the default for your segment matters more than appearing in the generic list.

Let your agent run it

Over MCP, the geo-visibility skill shipped in agentgeo-mcp runs the recommendation checks conversationally — "which engines recommend us for agency PM queries, and who outranks us?" — and the geo-prompt-set skill drafts the buying-query set from your positioning if you're starting from zero.

One line to install
claude mcp add agentgeo -- npx -y agentgeo-mcp --key ag_live_...

Alternatives

Recommendation modules exist in the GEO dashboards (Profound, Peec AI) with their own query panels — a reasonable fit if a marketing team wants the number without the pipeline. The trade is the usual one: their queries, their framing rules, their refresh cadence. Checking by hand in each engine works for one launch-day sanity pass and stops scaling the same afternoon.

More use cases

For retail catalogs this job becomes the e-commerce AI shelf; the rival-focused cut is competitor visibility tracking — see all use cases.

Find out whose shortlist you're on: Get a free AI-visibility audit →

Get my free audit

FAQ

Direct answers to the questions this page raises.

Visibility asks "does the answer name me?"; recommendation tracking asks "does the answer tell the buyer to pick me?" — a stricter bar that needs the answer text, the shortlist order and the framing around your name. Same records, deeper read.

Track where your buyers actually ask: ChatGPT for conversational shortlists, Gemini and Google AI Overviews for search-adjacent buying moments, Copilot for Microsoft-stack teams. The record shape is identical across all six surfaces, so widening coverage is editing one array.

Yes, treated statistically. Any single answer is a sample; a fixed query set fetched weekly gives you appearance frequency per product, which is stable enough to act on. Store every run and report frequencies, not single answers.

No — every plan is paid, and a workspace fetches nothing live until it has one. What costs nothing: the human-run audit, and ag_test_ keys, which return labelled demo records at zero credits.

Keep reading

Where this page leads next.

Run these checks on your own brand

Two ways in. Send a URL and a person runs the fetches for you, free — or connect your agent over MCP, on a plan, and run them yourself. Either way you get the raw answers and their citations, never a score.