Skip to main content
Attensira sends your prompts to real model surfaces on a fixed daily cadence, records what comes back, and computes every rate over runs — one prompt, one model, one country, one point in time. This page documents that pipeline end to end, including where it is thin, so you can judge the numbers yourself.

Which model surfaces do we read?

A model in Attensira is a model surface, addressed by a stable wire id called a channel: chatgpt, perplexity, google_ai, claude, gemini. The channel survives the provider swapping the underlying model beneath it, so your history stays continuous when a vendor ships a new version. We read the surface your buyers actually use, not the API behind it. Where a consumer surface can be read, that is the primary path: we visit chatgpt.com, perplexity.ai, Google’s AI Overview and Gemini the way a person would. The model APIs are a labelled fallback, used only where no consumer surface can be read. This distinction is the difference between measuring the product and measuring a proxy for it. Asking a model through its API is not what someone sees when they type into chatgpt.com: different model version, different system prompt, different retrieval. A visibility number built on the API answers a question nobody asked. Consumer-surface reading covers chatgpt, perplexity, google_ai and gemini. API readers exist for chatgpt, perplexity, claude and gemini. google_ai has no API at all — it is readable only through the consumer surface, which is precisely why AI Overview visibility was unmeasurable before. Every run records which surface produced it, consumer or api, and the two are never averaged together. A window spanning both reports as mixed rather than silently blending them. A new workspace tracks two channels by default: chatgpt and perplexity. You add the rest yourself in Models. A model you have not configured is never queried, and its metrics come back tracked:false rather than as a zero — see Reading the numbers.
An agent model is a different concept: it is the LLM your chats run on. It has nothing to do with the model surfaces measured here.

How often does a prompt run?

An in-process ticker runs hourly and enqueues due work. That hourly tick is a scheduling heartbeat, not a measurement frequency. The rule that governs your data is the one below it: Each prompt × model × country combination runs at most once per day, on that prompt’s own slot. A prompt’s slot is not the calendar day rolling over at midnight — it is roughly twenty-four hours after the slot before it, opening at the time of day the prompt was first tracked, in your workspace’s own zone. Two prompts added minutes apart can settle into different slots, and that is by design: every count in the product is keyed to a prompt’s own slot, not to the clock, so what matters is that each prompt is read at most once per slot, not that every prompt in the workspace is read at the same moment. Twenty prompts across two models in one country still produce forty run-slots a day; they just do not all open together.

How deep is the sample?

Sampling depth is the number of runs issued per prompt × model × country, per day. It is set by plan: Growth and Business runs are issued concurrently, not spaced through the day. Sending them together means all three see the same model state, so the variation you observe is the model’s own answer-to-answer variance rather than a change in the world between morning and evening. Runs that fail — a timeout, a blocked request, a malformed response — are stored but excluded from n. They are kept for debugging and never enter a numerator or a denominator. An outage therefore shrinks your sample rather than depressing your rate.

Why are rates computed over runs?

Every rate in the product uses runs as the unit, never readings, answers, sentences or keyword occurrences. A run either named you or it did not; it either cited your domain or it did not. An answer that names you nine times is one run in the numerator, exactly like an answer that names you once. This is what makes rates comparable across prompts, models and windows: the denominator is always a count of questions actually asked and successfully answered.

What is the significance gate?

Every delta Attensira shows has passed a two-proportion z-test at 95% confidence. The current window’s rate and the prior window’s rate are compared as two proportions with their own sample sizes. If the difference does not clear that bar, the delta comes back as {real: false} and the value is null — never a number, never zero. A window with fewer than two runs on either side is never a change. One run against one run has no dispersion to measure: an answer that named you yesterday and did not today is a single answer changing its mind, not a hundred-point move. Both windows need at least two runs before a delta can be real: true at all. real: false means one thing precisely: no change we can prove. It is not a claim that nothing moved. It is a refusal to present movement as a finding when the sample cannot distinguish it from noise.
At n = 1, most deltas will not clear the gate. With one run per prompt per model per day, a seven-day window holds seven observations per cell, and a two-proportion test on seven-versus-seven observations only detects large swings. Expect many real: false results on Starter. That is the method working, not the product failing to measure.
Three ways to get more deltas that clear the gate, in order of effect:
1

Widen the window

Aggregating fourteen or thirty days instead of seven multiplies the runs behind each rate without changing anything about your setup.
2

Aggregate the cell

Read a rate at the topic or model level rather than for one prompt on one model. Coarser cells pool more runs.
3

Increase sampling depth

Growth and Business sample three runs where Starter samples one, tripling the observations per day for the same prompts.

What this method cannot tell you

Attensira asks your prompts on a schedule. It does not see the questions real people asked, or how many of them there were. It measures how the models answer, not how often anyone asks.
Coverage is limited to the channels listed above, in the countries you configure. A surface you do not track is not measured, and never reported as a zero.
The same prompt can produce different answers minutes apart with nothing having changed. This is exactly why sampling depth and the significance gate exist, and why a single run is an observation rather than a fact about the model.
Page fetches by AI crawlers are a separate dataset with separate mechanics. See AI traffic.
Data retention follows your plan: 3 months on Starter, 12 on Growth, unlimited on Business. Handling of the data itself is covered by the privacy policy and terms of service.