# Metrics

> How visibility, share of voice, average position and sentiment are calculated.

Canonical URL: https://gensiv.com/docs/metrics
Product: Gensiv — Become the brand AI recommends

---

Gensiv asks each active prompt on each engine your brand is tracked on, on a regular schedule. Every answer is one **response**. Metrics are calculated from the responses collected in the date range you request, the same way the Gensiv dashboard calculates them.

## The building blocks [#the-building-blocks]

| Term              | Meaning                                                                                                                                         |
| ----------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- |
| **Prompt**        | A question your buyers ask AI engines, such as "What is the best CRM for a small agency?"                                                       |
| **Engine**        | An AI product Gensiv collects answers from, such as ChatGPT or Perplexity.                                                                      |
| **Response**      | One answer from one engine to one prompt at one point in time.                                                                                  |
| **Mention**       | A response that names your brand or a tracked competitor. A response counts as one mention per company, however many times it repeats the name. |
| **Entity**        | Your brand or one of its tracked competitors. Metrics endpoints return one row per entity.                                                      |
| **Topic and tag** | Groups of prompts. Metrics can be filtered to a group or returned per group. See [Tags and topics](/docs/tags-and-topics).                      |

## Visibility [#visibility]

The share of responses that mention the entity.

```txt
visibility = responses that mention the entity / all responses × 100
```

A visibility of `42.5` means the entity was named in 42.5% of the answers in the range.

## Share of voice [#share-of-voice]

The entity's share of all mentions of your brand and your tracked competitors.

```txt
share of voice = mentions of the entity / mentions of your brand and all tracked competitors × 100
```

Share of voice only counts the competitors you track, so adding or archiving a competitor changes everyone's share of voice. The values for your brand and its competitors add up to 100, unless no one was mentioned.

## Average position [#average-position]

When an answer recommends several options, Gensiv records the position of each company in the list, where `1` is the first option named. Average position is the mean of those positions across the responses where the entity was ranked.

Lower is better. It is `null` when the entity was never ranked in the range.

## Sentiment [#sentiment]

Each mention is classified as positive, neutral or negative. Gensiv scores positive as 100, neutral as 50 and negative as 0, and reports the average.

```txt
sentiment = average of (positive = 100, neutral = 50, negative = 0)
```

A score above 50 means answers describe the entity more positively than negatively. It is `null` when there are no classified mentions in the range.

## Summary and daily metrics [#summary-and-daily-metrics]

* [`GET /brands/{brandId}/metrics`](/docs/api-reference/metrics/getMetrics) returns one row per entity for the whole range. Use it for scorecards and comparisons.
* [`GET /brands/{brandId}/metrics/daily`](/docs/api-reference/metrics/getDailyMetrics) returns one row per day, engine and entity, with the raw `responses` and `mentions` counts. Use it for trend charts and BI tools. Add `breakdown=none` to combine all engines into one row per day and entity.
* [`GET /brands/{brandId}/metrics/prompts`](/docs/api-reference/metrics/getPromptMetrics) returns one row per prompt, lowest visibility first, with the competitors named most often in its answers. Use it to find the prompts where competitors win.

<Callout>
  Percentages from the daily endpoint cannot be averaged to get a range total, because days have different numbers of responses. Sum `mentions` and `responses` first, then divide.
</Callout>

## Rounding [#rounding]

Visibility, share of voice and average position are rounded to one decimal place. Sentiment is rounded to a whole number.