---
name: aeo-comparison-page-monitor
description: Weekly audit of competitors named by AI engines against your comparison and alternatives pages, with a ranked gap table and two drafted page outlines.
---

# AEO Comparison & Alternatives Page Monitor

Find which competitors AI engines recommend and whether your comparison pages earn citations beside them. Marketing and content teams get a ranked gap table and two answer-first page outlines. Part of the [Answer Engine Optimization (AEO) skillset](https://type.com/library/skills/answer-engine-optimization).

## When it runs

- Recommended schedule: Wednesdays at 10am in `timezone`, after the question-panel refresh.
- Post one report to `report_channel` every run, capped at 12 lines. This skill sends no DMs.

## Inputs

| Input | What it is | Example |
| --- | --- | --- |
| `brand_name`, `brand_exclusions` | Exact brand spelling and look-alikes that must not count as mentions | Example, Example Writer |
| `site_url`, `sitemap_urls` | Your marketing site and sitemap or sitemap indexes | https://example.com, https://example.com/sitemap.xml |
| `tracker_monitors` | Competitors/category and buyer-problems monitor references | Category panel, buyer panel |
| `tracker_engines` | All engines to include, using their configured tracker identifiers | ChatGPT search, Google AI Mode, Claude, Codex |
| `report_channel`, `owner`, `timezone` | Report destination, action owner and scheduling timezone | #aeo, @owner, America/Los_Angeles |
| `master_doc`, `comparison_gaps_doc` | AEO master doc and comparison gaps doc | Workspace doc links |
| `competitor_names` | Optional seed names; also discover every other vendor named | Competitor A, Competitor B |

## Before you start

- Connect Promptwatch in type.com as a Custom API connection using your Promptwatch project API key. Another tracker works if it exposes equivalent response and citation data.
- You need read access to the web, sitemap and tracker, a report-channel connection, and scoped write access to the named shared docs.
- Use the AEO master doc and comparison gaps doc in your workspace, whether in type.com, Google Docs or Notion. If missing on first run, create them with the sections below and tell the owner where they are.

## Steps

### 1. Find who engines put next to you

Read the tracker's `responses` for the last 7 days on the competitors/category and buyer-problems monitors, for all configured engines. Paginate through every response page. For each answer, list every vendor or product named and the cited domains. Count the brand only when it matches `brand_name`; exclude `brand_exclusions`.

Build a table: competitor | times named (per engine) | questions where named | whether your brand was named in the same answers | top cited sources for that competitor.

### 2. Inventory your pages

Fetch `sitemap_urls`. List every URL in the vs, compare, alternatives or versus sections, and every blog or guide whose slug contains "vs", "alternative", "compare" or a competitor name.

Fetch each as GPTBot. Record title, H1, published or last-modified date, whether it has a comparison table, pricing, FAQPage schema, and whether the competitor is named in the title. Read `citations/grouped` for the last 7 days and last 30 days, paging through all results, to record whether each page was cited in either window.

### 3. Rank the gaps

Rank competitors by times named, weighted 2× when your brand was absent from the answer. For each of the top 10, classify:

- HAS PAGE + CITED: fine.
- HAS PAGE + NOT CITED: identify what the cited sources do that your page does not.
- NO PAGE: build.

Flag "alternatives to <competitor>" intent separately from "<brand_name> vs <competitor>", since engines retrieve them differently. Note any page not updated in 90+ days covering a competitor that shipped something new; check its changelog or news briefly.

### 4. Draft two outlines

For the top 2 NO PAGE or NOT CITED items, replace only the comparison gaps doc's `## Outlines` section with:

- Proposed URL and title, using `brand_name` exactly.
- The exact buyer questions the page should answer first.
- An answer-first intro: 2 sentences, factual, no marketing adjectives.
- Comparison table columns.
- FAQ questions to mark up as FAQPage.
- Sources to cite.
- Which tracker questions should start citing the page.

Keep `## Gap table` updated with the full Step 3 table and append a dated `## History` line per run. Create these sections if missing.

### 5. Post and track actions

Post the report below to `report_channel`. Confirm the post succeeded before finishing; do not claim delivery without a successful receipt.

Update only the AEO master doc's `## Action tracker` with one row per Do next item not already present. Create the section if missing, with columns # | Action | Source | Owner | Status | Added | Done. Set Source = "comparison monitor", Owner = "unassigned", Status = "open".

## What it posts

Maximum 12 lines. Put Do next before the headline and evidence, following the output rules that override the source template's headline order.

```text
Do next
1. agent/<owner>: build "<brand_name> vs <competitor>" — named <n>× this week, we were absent in <n> — outline → <link>
2. agent/<owner>: build "alternatives to <competitor>" — <n>× — outline → <link>
3. Eng/agent: fix <our page URL> — never cited; cited sources have <the one thing ours lacks> — <link>
Comparison pages — <Mon D> · <n> competitors named · <n> with no page · <n> pages never cited
Why
• <competitor> · named (<per-engine counts>) · we named too? · page · cited 7d/30d
Details → <comparison gaps doc link>
```

Use at most 3 Do next items and at most 5 one-line Why bullets, showing the top 5 competitors only. Do not post a code-block table; the full table belongs in the doc.

## Output rules

- Lead with the action. Each Do next item is one line: owner + verb + exact page title or URL + number that justifies it + link.
- Numbers, not adjectives. No preamble, method or caveats unless they change the action.
- Detail lives in the doc, linked once at the end as "Details →". Link drafted text directly from actions as needed.
- Hard cap: 12 lines, one idea per line.

## Safety

- Read-only on every third party: never submit forms, send email or outreach, sign up, comment, vote or post on Reddit, X, LinkedIn or any social or community site. Draft text for human review only.
- Never change the AI-answer tracker's prompts, monitors, personas, models or schedules.
- Only write posts to `report_channel`, DMs to the configured `owner` only when this skill calls for one, and scoped edits to the named shared docs and sections this skill owns.
- Never @-mention anyone in the channel. Never put credentials, tokens or passwords in posts, docs or DMs.
- Never open PRs, edit the site or change third-party profiles.

## Example configuration

How type.com configures this skill (example):

- Brand: type.com. Excluded look-alike: type.ai.
- Marketing sitemap: https://type.com/sitemap.xml. Report channel: #b-aeo. Owner: Sam. Wednesdays at 10am, America/Los_Angeles.
- Monitor roles: competitors/category and buyer problems. Engines: ChatGPT search, Google AI Mode, Claude Code, Codex.
- Seed competitors: Cowork, QM, HQ, Devin, Lindy, Gumloop, Relay, Zapier Agents, Glean, Notion AI, Slack AI, ChatGPT Enterprise, Claude Enterprise, OpenAI AgentKit, Sierra, Decagon, n8n, Make, Dust and Relevance AI.
- The Oct 22, 2026 dry run found 18 competitors named, 9 with no page, and 5 of 8 comparison pages uncited that week. This is historical example data, not a baseline for your site.
