BeharAI
Methodology · fully documented

How Behar scores. Show your work.

Every number on every Behar dashboard has a formula behind it. Nothing is proprietary. Nothing is hidden behind “trust our algorithm.” This is the exact math.

Read it, challenge it, tell us we got it wrong. That's the point.

40
Base (mention)
+30
Position
+20
Frequency
±10
Sentiment

Maximum signal contributions. Scores cap at 100.

The scoring formula

Every LLM response for every prompt gets analyzed by Claude Haiku (structured JSON extraction) to detect: whether your brand was mentioned, in what position in any list, how many times, and with what sentiment. Those four signals produce a score from 0 to 100.

# If not mentioned:
score = 0
# If mentioned:
score = 40 # base
+ position_bonus # 30/20/15/10/5 for #1 through #5+
+ frequency_bonus # min(20, (count − 1) × 4)
+ sentiment_adj # +10 / 0 / −10
score = clamp(0, 100, score)

That's the whole formula. We chose simplicity on purpose. Transparent scoring gets challenged, iterated, and improved. Proprietary scoring gets defended. Ours is the former.

The four signals, explained

Mentioned (base 40)

Either the LLM mentioned your brand or it didn’t. This is a binary gate. If your brand isn’t in the response, nothing else matters — you score 0. This is why presence is the foundation of every other metric.

Position bonus (0–30)

When LLMs list options, order matters. The first recommendation gets 3-5× more consideration than the third, according to behavioral research we’ve run on our own test prompts. First position gets +30, second +20, third +15, fourth +10, fifth and beyond +5. No position detected (unordered mention) gets +0.

Frequency bonus (0–20)

If your brand is mentioned multiple times in the same response, that’s a stronger signal than a single passing mention. Formula: (mention_count − 1) × 4, capped at 20. So 2 mentions = +4, 3 mentions = +8, 6+ mentions = +20. Capped so a single answer spamming your name doesn’t inflate scores.

Sentiment adjustment (−10 to +10)

How the AI describes you. Positive (+10), neutral (0), negative (−10). Negation-aware — ‘not the best’ correctly scores negative. Claude Haiku does the sentiment analysis with explicit prompting against bias.

How aggregates work

Each prompt × LLM produces one score. A brand's overall score for a prompt is the average across all supported LLMs. A brand's overall presence is the percentage of prompts where they're mentioned at all (independent of score).

We never weight LLMs differently by default. ChatGPT doesn't count more than Gemini. This is a design choice: your visibility should be measured against the ecosystem as it actually is, not as it might be weighted.

Time-series scores are raw. We don't smooth, normalize, or anti-alias. If your score jumps from 62 to 78 in one day, that's what happened. Volatility is data.

Gap detection

After every run, we classify each prompt into one of four states:

absent
Brand not mentioned, top competitor scores >0. Highest priority.
losing
Brand mentioned but scores 10+ points below top competitor.
declining
Latest score >10 points below previous period. Could be a signal.
new_opportunity
New prompt, not enough history, brand scores <50.

Priority score = (competitor_lead) + (20 if absent) + (15 if declining) + (5 if new_opportunity), clamped 0–100. Pure deterministic math. No AI involvement in priority ranking — keeps gap detection fast and zero-cost.

What we don't do

We don’t use proprietary ‘AI visibility index’ numbers that require a PhD to explain.
We don’t weight LLMs by market share or popularity without telling you.
We don’t hide sentiment analysis behind black-box classifiers.
We don’t round or smooth time-series data to make trends look cleaner.
We don’t recommend content based on broad LLM suggestions — every Behar-generated piece is grounded in your actual crawled brand voice and current LLM responses for that exact prompt.
Full source available. The scoring logic lives in our public methodology and in every score breakdown in the product. Hover any number in Behar and see exactly where every point came from.