# Methodology

as_of: 2026-10-21

Parrot answers one question per market: did the speaker say the word, and how often have they said it before? This page explains how. Live accuracy figures are on [Accuracy](/accuracy).

## Counting a word

We follow the venues' payout conventions.

- **Matching** ignores case. Plurals and possessives count: "Tariffs" and "Tariff's" count for "Tariff". Other forms do not: "fraudsters" does not count for "Fraud".
- **Alternates.** "A / B" means either word counts.
- **Thresholds.** "(3+ times)" means the word must be said at least 3 times. We never merge strikes with different thresholds.
- **Compounds and numbers.** "health care" counts for "Healthcare", "multi-cloud" for "multicloud", "1" for "one", "$" for "dollar".

The matcher is versioned; the version in use is on [Status](/status).

## Who counts

Each market names who must say the word, and the venues differ. Parrot stores this as a **speaker scope** on every market and counts under that scope.

| Scope | Example rule | Who counts |
|---|---|---|
| Named person | "If Donald Trump says…" | That person only. Warm-up speakers, hosts and reporters do not count. |
| Role | "the White House Press Secretary", "the Chair of the Federal Reserve" | Whoever holds the role on the day. |
| Company representatives | "any NVIDIA representative (including the operator)" | Executives, plus the call operator when the rule says so. Analysts do not count. |
| Anyone | "mentioned by anyone during the event" | Every speaker, including analysts and guests. |
| Host or reporter | "any host or reporter" | Anchors and correspondents, not interviewees. |
| Proceedings | "any participating witness", "any candidate" | Witnesses or candidates; not members or moderators. |
| Broadcast | "the play-by-play or color commentator(s)" | The booth; sideline reporters are excluded on Polymarket. |

The same event can settle differently on each venue. Earnings calls are the common case: Kalshi counts company speakers, Polymarket counts anyone. Pages show the scope badge for each market.

## Which text

Every appearance has one or more text sources. The best active one wins. The page shows its kind:

| Badge | Meaning |
|---|---|
| Official | A record published by the speaker's organisation: Hansard, federalreserve.gov, nyc.gov, company transcripts. |
| Labelled | Captions with speaker names, published by the source. |
| Captions | Captions without names. |
| ASR | Our own speech recognition (Whisper large-v3-turbo, run locally) on the source's audio. |

Hansard is an edited record. It can differ slightly from what was said.

## Tiers

| Tier | What the page carries | Bar to claim it |
|---|---|---|
| T1 | Labelled transcript, counts under each venue's scope, transcript word history, settlement history, timed clips | At least 97% agreement on settled markets |
| T2 | Whole-show captions or ASR with machine speaker labels, the same counts and history | At least 90% agreement, published with the mismatch list |
| T3 | Settlement history and context (schedules, rules, scope, official links) | None: history rows are facts about market outcomes |

A page shows its tier's evidence, not just the label. Each category is also held to its own agreement bar, from 98% (the Fed, the White House, Prime Minister's Questions) down to 90% (politics). A category below its bar is marked **Beta** on [Accuracy](/accuracy#what-beta-means), which lists the bars and explains what that changes.
Its pages carry the same label.

## Speaker attribution (T2)

Captions and ASR often lack names. A language model (Claude Haiku) reads the text and marks where each speaker's turn starts and ends. We then map labels to people.

- Each segment carries a confidence. We quote only from segments at 0.9 or above.
- T2 pages carry a "machine-attributed" badge.
- In launch tests, counts with attribution agreed with settled markets 94–96% of the time, against 69–85% without it.

## Timing and clips

Where a source has a public video or audio timeline, we align the text to it and store the time of each hit.

- A clip is the sentence containing the hit, at most 12 seconds, and plays from the source itself: a YouTube embed (loaded only when you click) or the publisher's own audio file, started at the right second, with a link back.
- We do not host copyrighted audio or video.
- Before clips are shown, each source's timing is checked against the audio at 3 random hits.

## Word history

Two kinds, shown side by side, each with its sample size.

- **Transcript history.** For any word: in how many of the speaker's last N transcripts of the same kind as the next occasion (rallies for a rally; every kind when there are too few) it reached the market's count. Each answer names the kind and the dates it covers, and says when later appearances have no transcript yet, since those are not counted. Computed from transcripts at query time.
- **Settlement history.** For listed words: how past markets on the word settled for this speaker: n, YES count, the last 10 results and the current streak. Built from the venues' own settlements; it covers every category, including those without transcripts.

Rates always appear next to n. A rate from 3 observations is shown as 3 observations. Sports splits by team or network appear only when n is at least 5.

## Probabilities

The probability `p` is a base rate from history, not a forecast. It shrinks the word's YES rate for this speaker and venue format toward the speaker's and the category's base rates, with a 180-day half-life. For earnings calls it also blends in transcript history: how often the word was said on recent calls. Other categories use settlement history only for now; their new transcripts feed counts and QA, not `p`.

- In a walk-forward test (40,315 settled word markets from events since May 1, 2026, each scored with history as of its own open), log loss was 0.597 against 0.688 for a constant, and the Brier score 0.206 against 0.247. [Accuracy](/accuracy#how-good-is-p) has the same test by category, updated as markets settle.
- Every category beats the constant, by very different margins: earnings calls 0.527 against 0.693, but White House briefings only 0.654 against 0.662.
- With fewer than 4 earlier observations of the word, it leans on the base rates (log loss 0.621). With 4 or more, 0.581.
- Predicted and observed YES rates agree within 0.045 in every tenth of the range. The widest gap is between 0.6 and 0.7 (average `p` 0.65, observed 0.69).
- Market prices are usually sharper. An hour before an event, history added nothing measurable to the price. Use `p` as context, not as a signal.

`p_src` in the API names the inputs behind each value (`hist`, `tx`, `blend` or `prior`), and `p_for` on `word` names the market it is for.

## Checking ourselves: settlement QA

For every settled market whose event has a linked text, we count the word under the market's scope and compare the result with the venue's settlement.

- **Agreement** is the share of settled markets where our count and the threshold give the venue's result.
- Excluded: markets without a linked text, and non-word markets (duration, punctuality, combos).
- Every mismatch is public, with the word, our count, the threshold and the venue's result: the latest on [Accuracy](/accuracy), the rest in the paged list linked there.

The venue's settlement is final. Parrot never settles a market.

## Known limits

- Transcripts can be late. Pages say "pending" with an expected time rather than showing a partial count as final.
- Speaker labels can be wrong on T2 text, which is why those pages carry a badge and why we publish their agreement.
- Weekly and monthly window markets need every appearance in the window. Window pages list the appearances we have, against the ones we know about. We grade one only when our count already decides it (a YES once the word is found, a NO only when every appearance has text), so window QA is mostly YES-side precision; [Accuracy](/accuracy#window-markets) shows it separately.
- Settlement history for a new show or season is thin. It says so.

## Licence

Parrot's own data (counts, rates, settlement history, probabilities and QA results) is licensed under [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/): credit "parrot.markets" with a link. Transcripts, quotes, captions, audio and video are not covered: their rights stay with each source, as listed on [Sources](/sources) (full text only for public-domain and openly licensed records, quotes of at most 25 words otherwise).

## Corrections

Report a problem from any page, or email [ox@mail.grokbot.com](mailto:ox@mail.grokbot.com?subject=Parrot). We aim to fix data errors within 24 hours and log them on [Corrections](/corrections).
