Do not burn tokens watching. Wake your agent only when it matters.
How it works

Two kinds of check. One system.

The Census and Check answer a deterministic question — does this file exist, is this bot blocked — the same way every time. Brand Watch answers a non-deterministic one — what does the model actually say — which is why it has to sample instead of ask once.

The system

Four parts, two different kinds of answer.

01

The census

Every month, Desvela crawls the top 100,000 domains for the files an AI agent can read: ai-catalog.json, llms.txt, agents.md, and the AI-bot directives in robots.txt. Deterministic: a plain GET request, re-run any time, same answer. This is the aggregate state of the web.

02

Check

The same four checks, applied to one domain — yours. Free, no signup, about ten seconds. It reports what a domain publishes for agents, graded against the census numbers above. Still deterministic: passing it says nothing about what any AI system will say about the domain.

03

Brand Watch

Here the question changes. Instead of checking whether a file exists, Brand Watch asks ChatGPT, Claude, Perplexity and Gemini directly and records what they answer: mentions, position, sources cited, competitors named. Non-deterministic — ask the same question twice and the answer can differ — so every question is sampled N times per engine and reported as a mention rate, not a single snapshot.

04

Repeated runs

The first Brand Watch run establishes a baseline silently — that is the audit. Every later run against the same frozen questions is a watch: it diffs against the baseline and only wakes you up when the answer actually moved.

Brand Watch, in detail

From expensive polling to signed events.

01

Define the watch

A brand name is enough. Desvela discovers the category questions, competitors and your domain — and freezes them as a prompt set, so every scheduled run measures the same questions. Pass your own list to override. The first run establishes your baseline — silently, by design.

02

We sample the engines

Each question is asked N times per AI engine, because answers vary between runs. The metric is a mention rate across samples — a single snapshot of a non-deterministic system is noise, and we refuse to sell you noise. Competitive share of voice and owned vs earned citations ride along.

03

We diff against the baseline

You appear, disappear, shift 25+ points, a new source gets cited or a new competitor enters the answer. Thresholds keep the noise out; a blocked check is never confused with a change. The diff is computed against the same frozen prompt set every time.

04

We wake who needs waking

An HMAC-signed webhook for your agent, plus the full record in your Apify dataset. The payload carries the before, the after, and the source that changed the engine's mind — so the next move is obvious. Route it on to Slack, email or Zapier through Apify's integrations.

05

You keep the record

Every check and every change, timestamped. Evidence of what AI said about you, and when. Nothing is lost if a webhook fails — events stay readable in pull mode.

Alerts, not dashboards.

The economics

Your agent should spend tokens deciding, not staring.

A deterministic check — the census, the check — costs a fraction of a cent. Waking an LLM to re-read a page, re-reason the context and conclude "no change" costs roughly 100× more — every single time. That arbitrage is why the census and Check are free and instant, and why Brand Watch is priced per check instead of per poll.

See Brand Watch → Consume it from an agent