Analytics

Brand analytics

Returns per-brand aggregates across the window: visibility, share of voice, average sentiment (0-100), and average position. Sentiment and position are null when the brand has no mentions in the window. Every tracked brand in scope is returned, including those with no mentions. The response is paginated.

GET /api/v1/analytics/brands

Query parameters

Name Type Required Description
start_date string Required

The inclusive UTC start of the analytics window, given as an ISO 8601 date (YYYY-MM-DD).

end_date string Required

The inclusive UTC end of the analytics window. The value must be on or after start_date, and on or before today.

platforms string[] Optional

You may use this parameter to limit responses to one or more AI platforms. Repeat the parameter for each value, for example ?platforms[]=chatgpt&platforms[]=claude. When omitted, every platform is included. Accepted values: chatgpt, perplexity, gemini, grok, copilot, claude, google_ai_mode, and google_ai_overview.

countries string[] Optional

You may use this parameter to limit responses to monitors run in the given ISO-3166-1 alpha-2 country codes.

monitors integer[] Optional

You may use this parameter to limit responses to specific monitors inside the active project.

segments integer[] Optional

You may use this parameter to limit responses and brand-scoped metrics to brands attached to any of the given segments. Segments are named groupings of brands, such as Direct Competitors. When this parameter is set, time-series charts show every brand in the selected segments instead of capping the series at top_n, and share-of-voice ratios are computed within the segment, so each brand's share reads against the other brands in the selected segments. Source-keyed endpoints do not honor this parameter.

tags integer[] Optional

You may use this parameter to limit responses to those whose prompt carries any of the given tag IDs, such as branded or non-branded.

page integer Optional

The page number to return. Defaults to 1.

per_page integer Optional

The number of items per page. Defaults to 25, maximum 100.

sort_by string Optional

The field to sort by. Defaults to visibility.

sort_order string Optional

The direction to sort by. Each endpoint has its own default.

Response

Response schema

Field Type Description
data BrandAnalytics[]
links PaginationLinks
meta PaginationMeta

Per-brand analytics row

Field Type Description
brand Brand

The brand this row covers.

visibility integer

The percentage of analyzed responses in the window that mention this brand.

visibility_change integer

The difference in visibility compared with the equal-length period immediately preceding the window. A positive value indicates an improvement.

share_of_voice integer

This brand's share of the mentions of the brands in the filter scope across the window. A segment filter narrows the scope to the segment's brands.

share_of_voice_change integer

The difference in share of voice compared with the preceding period.

sentiment integer

The average sentiment score of this brand's mentions, on a 0-100 scale. null when the brand had no mentions in the window.

sentiment_change integer

The difference in sentiment compared with the preceding period. null when either period lacks data.

position number

The average position of this brand within the responses that mention it. A lower value is better. null when the brand had no mentions in the window.

position_change number

The difference in position compared with the preceding period. A negative value indicates an improvement, since the average position has moved closer to the top of the answer. null when either period lacks data.