Mentions and sentiment

How Geonimo detects your brand in an answer, and how position, sentiment and recommendation strength are scored.

A mention is a tracked entity detected inside an answer. Mentions are what every visibility metric aggregates, so how they are detected determines whether the numbers mean anything.

Extraction, not self-reporting

Geonimo reads the raw answer and matches your tracked entities against it. It never asks a model to report which brands it mentioned.

That distinction is not pedantic. Asking a model to list the brands in its own answer requires injecting formatting instructions into the prompt — which changes the answer being measured — and then trusting a model to grade itself, which it does inconsistently. The measurement contaminates the thing measured.

Extraction avoids both problems. The prompt sent to the engine is the prompt your buyer would type, unmodified.

How matching works

Detection runs on the answer text against each tracked entity's name and domain:

  • Case-insensitive, at word boundaries — "Peec AI" matches "peec ai" but "Geonimo" does not match inside a longer word.
  • Tolerant of separators"Mitsubishi Electric" also matches "Mitsubishi-Electric".
  • Possessives allowed"Geonimo's dashboard" counts.
  • Domains matched bare or with www, including inside URLs — geonimo.com and www.geonimo.com match; notgeonimo.com and geonimo.community do not.

Each mention records how many times the entity appears, the character offset of the first appearance, and a short snippet of surrounding text for context.

This pass is deterministic and runs locally in milliseconds — no model call, no cost, identical results on a re-run.

Practical implication: matching quality depends entirely on the name and domain you configured. An incorrect domain will under-match. Check both in Competitors.

Brands whose name is an ordinary word

Some brands are called On, Apple, Notion, Arc. Case-insensitive word-boundary matching is right for Geonimo and catastrophic for On.

Measured on a single real answer about On's Cloudsurfer, a naive matcher found six mentions and three of them were the preposition. Because visibility is binary per answer — did the brand appear at all — that noise pushes the number toward 100% for any answer containing the word "on", which is nearly all of them. The brand would look dominant while measuring nothing.

Two defences apply to names on the ambiguous list, because neither is sufficient alone:

  • Case. The brand is On; the preposition is on. Requiring the capital removes most false positives.
  • What follows. A capitalized On that is really a preposition is almost always sentence-initial and followed by a determiner, pronoun or quantifier — "On the other hand", "On average". The brand is followed by a verb, a product, a category noun, a possessive or punctuation. Prepositions are never followed by a finite verb, and that asymmetry does the work.

If your brand name is an ordinary English word, this is worth knowing: the matcher is deliberately stricter for you, and a mention written in lower case may not count.

Position

Position is the order of first appearance among tracked brands in an answer. The first tracked brand named is position 1, the next distinct one is position 2, and so on.

It is not a character offset and not a rank the engine assigned — assistants do not emit rankings. It reflects the order in which the answer introduces brands, which correlates with emphasis: the first brand named in a recommendation is read as the recommendation.

Average Position on your dashboards is the mean across answers where you were mentioned. Lower is better, and deltas are colored accordingly.

Position and visibility move independently. Appearing in more answers while sliding from second to fourth is a real deterioration that a visibility chart alone would report as progress.

Sentiment

Sentiment is scored per mention during enrichment, then averaged into the daily record and displayed on a -100 to +100 scale.

It measures how you are described in that answer, not the answer's overall tone. An answer can be neutral in aggregate while being pointedly negative about one brand.

Read it as a trend. Individual scores carry noise; the fortnightly direction is the signal. A steady slide usually traces to a specific source — a critical review, an outdated comparison — findable in Sources.

Recommendation strength

Alongside sentiment, each mention is classified by what the answer does with your brand:

ValueMeaning
listedNamed among options, without endorsement.
recommendedActively suggested as a good choice.
warned_againstNamed as a caution or a poor fit.

This is the commercially important distinction, and it is invisible in a mention count. Being listed in every answer and recommended in none is a specific, fixable problem: engines can find evidence that you exist but not evidence that you are good.

Recommendation rate — the share of your mentions that are recommendations — is a headline on Brand Perception.

Two-stage timing

Extraction is immediate; enrichment follows.

  1. Stage 1 (seconds). Deterministic extraction gives you mentions, positions and counts, so visibility and Share of Voice appear while a run is still in progress.
  2. Stage 2 (behind it). A small model scores sentiment and recommendation strength on answers where an entity matched, and the metrics refresh.

So mention-based numbers land first and tone-based numbers sharpen a little later. That is deliberate: nothing on the critical path waits for an enrichment call. See Analysis pipeline.

Today, stage 1 is running; stage 2 is running for perception claims but not for per-mention scores. Mentions, positions, visibility, Share of Voice and citations are measured from your own answers, and so are the strengths, weaknesses and misconceptions on Brand Perception. Sentiment and recommendation strength per mention are not yet scored, so screens that depend on them show sample data with a caption or hide the panel rather than estimating a number. See Product status.