Skip to content

Ask your analytics questions

Facts reviewed:

Traffic counts tell you how much activity you recorded. Questions about sources and ordered events can help you choose which signup step to investigate. AI is for eligible paid cloud plans when enabled and available; an owner controls app access and allocations. It cannot recover events you have not recorded.

Ask questions such as:

  • “How many users visited from India and UAE combined in the first six months of 2026?”
  • “How many users from Mumbai and New York clicked signup in the last three days?”
  • “For campaign xyz, how many completed signups later became paying customers?”

The assistant supports one app and a date range of up to 366 days, with an optional previous-period or previous-year comparison, including historical dates when the data is still retained. Combined users are counted distinctly across the selected locations. “Users” means estimated site-scoped visitor pseudonyms; “visits” means estimated session cohorts. Neither is a verified person or account identity.

Ask to compare against the previous period or the same calendar dates last year. New report definitions distinguish rolling windows from calendar periods: rolling ranges use the adjacent equal-length range; this week or month so far uses the comparable elapsed portion of the preceding calendar period. Unequal month lengths and unfinished days have explicit cutoffs and notes. Leap-day comparisons end on February 28 when the earlier year has no February 29. Existing version-1 plans retain their legacy meaning; supporting data identifies the definition and both UTC windows. Each window independently applies retention and privacy suppression. Missing or suppressed values are not zero, and a zero baseline has no percentage change.

Open Edit plan on a completed answer to adjust its metric, dates, comparison or location/device filters and rerun it. Follow up uses the validated plan as context for the next question. Requests that might silently drop an existing scope ask for clarification; editing the plan explicitly can resolve that ambiguity. Each successful rerun or follow-up uses one credit. Chat storage depends on the saved or temporary chat you selected; see Saved chats.

The assistant consults a bounded catalog of your recorded events, campaigns, locations, and event property names. If “signup” could mean a click or a completed registration, it asks which event to use. If payment is represented by a property, it asks for the property and value, for example subscription_updated with status=active.

Reply directly in the same conversation. Clarification replies preserve the original question and its dates; they do not consume a prompt credit. Choose Start a new question to leave that context. Chats stay scoped to your account and selected app. Choose a temporary chat if you do not want the exchange saved as conversation history.

Catalogs omit rare categories and may be incomplete. A missing event or city does not prove there was no traffic. The assistant cannot invent an event you have not instrumented. Custom filters support equality on non-personal primitive properties sent through the SDK.

Conversion analysis follows the same site-scoped visitor pseudonym through two or three ordered event steps. A campaign cohort begins with a matching UTM campaign event during the requested period. Subsequent signup/payment events do not need to repeat the UTM parameters. Payments before signup are excluded, as are conversions outside the requested range. Repeated events do not become extra customers.

These are observed conversions grouped by pseudonyms, not verified account identities or cross-device customer histories. They can help assess a campaign against your goal but cannot prove profitability or causal impact without the necessary revenue, cost and comparison data.

Owners enable AI mode in Settings and allocate access. This also enables Growth review; there is no separate Growth switch. Pro includes 25 credits/month and Business 100, shared across the organization’s apps. App/member allocations can lower the limit. Each completed request uses one prompt credit, including a Growth review with optional public competitor research. If the explanation is unavailable or fails its checks after a successful query, OwlEye returns a summary from the report data; this completed answer also uses one credit and is labeled Evidence summary. The server records accepted-answer and fallback metadata. Ordinary request logs exclude the question and result rows; saved-chat retention is described below. Clarifications, rejected requests, unavailable services and failed requests do not consume credits. Monthly allowances reset on the first UTC day.

Your question, clarification context, catalog and aggregate report go to the AI provider through OpenRouter, using Claude Haiku 5.5 by default when an API request omits its model. Discovery includes event/campaign names, paired city/country names and property keys, not property values, raw payloads or visitor IDs. Applied property values supplied in your question are included in report definitions. Common sensitive patterns and personal property keys are filtered, but do not submit personal information or secrets. Provider routing requires zero retention and no data collection.

The model cannot supply SQL or select another app. Server-authored queries enforce app access, date bounds, privacy thresholds and retention. Filtered groups below five visitors are omitted. Expired history cannot be recovered; missing results must not be read as zero.

Open Supporting data to review exact UTC dates, applied filters, event/property definitions and counts. Visitors and sessions are estimates; never add daily distinct counts to produce a period total. AI explanations can be mistaken, so review their supporting evidence.

An automated security check can reject requests that cross the assistant’s permitted analytics boundary. Requests flagged for a security block suspend AI access for that account across apps pending manual review; ordinary app access remains available. Blocked requests use no prompt credit.

The exact flagged input is stored as encrypted security evidence with a 90-day expiry and is available only through trusted operator review. This evidence is separate from saved chats and ordinary request logs. Expiry of the evidence does not automatically lift the account’s AI block.

Answers are text-first. Request a chart explicitly, such as “Show weekly visits from India as a line chart.” Time series can cover up to 366 days; single-period category reports can request 1–20 ranked groups. Comparisons may show the union of both periods’ top-ranked sets, up to 40 groups, with unreleased counterparts left unknown. Funnel supporting tables show each stage’s visitor-pseudonym count and server-calculated conversion rates. Shares are calculated only for additive event/pageview counts, with their displayed-row denominator identified. Category charts for visitors or sessions use bars because their groups can overlap.

CSV downloads export the already-filtered supporting rows, with the same privacy suppression as the on-screen report. Starter questions fill the composer so you can edit the question before sending.

PDF downloads are generated locally in your browser and consume no additional AI credit. Ask for a PDF to show the download below the answer, or find it inside Supporting data. Word export, raw event exports and cross-app questions are not supported by this assistant.

The assistant can also report Web Vitals, custom timings, and visible page segments for the selected app. For example:

  • “What was p75 LCP by page in the last seven days?”
  • “Show daily p95 of load_results on mobile.”
  • “What was average visible page segment duration yesterday?”

Performance summaries use one recorded measurement name at a time: CLS is unitless, while durations use milliseconds. Visible segments are not distinct sessions. Unsupported questions need clarification; the assistant cannot execute arbitrary SQL or read arbitrary database tables.

The model returns a structured report plan. The API compiles it into an allowlisted, read-only query with the selected app’s Tracking ID bound by the server. Execution has time, memory, scan and output limits. The aggregate results then go to the model for the explanation. Supporting data includes those results and a JSON download, so the answer can be checked without exposing raw visitor records.

Growth review is a task within AI mode, using the same app enablement, member access and prompt allowance as analytics questions. It reviews the last 28 complete UTC days, compares with the previous period when coverage permits, and suggests up to three experiments. Each suggestion links to its aggregate evidence and can open a draft in Pro View for you to preview and save.

Reviews use traffic, acquisition, page, event and saved-funnel summaries, plus approximate mobile and desktop Web Vitals. Groups below five visitors are withheld. Shares describe the displayed groups, not all traffic. Low-volume apps receive instrumentation and observation suggestions instead of A/B tests. Web Vitals use published, dated thresholds; there is no generic signup-conversion benchmark.

Public competitor research is optional for each review. Select it explicitly and provide the competitors to include. Only the competitor names and optional product category go to search. Private analytics and the review question are excluded from that search request. Public findings are linked and kept separate from your app’s measurements. A competitor’s size is reported only when a published figure is available; OwlEye does not invent traffic estimates. Search-provider retention is separate from model-provider zero-data-retention routing.

A completed review uses one prompt credit, including a review with public research or an evidence-only summary. Failed, rejected or clarification requests use none. There are no separate Growth prices or budgets to configure. Internal provider-spend, request-rate and execution limits still protect service capacity; these do not increase the prompt charge.

Chats are private to your account within the selected app. New chats retain each message for 14 days by default; choose seven days in chat settings for a shorter window. You can reopen, rename or delete a chat, or choose a temporary chat before sending a question. Temporary chats are not stored as conversation history.

Reading a chat does not extend its messages’ expiry. Increasing the retention setting affects new messages; shortening it also shortens existing messages’ expiry. Up to 50 chats and 100 exchanges per chat are retained. Saved answers are dated snapshots, so rerun a report to refresh its numbers. Losing app or organization access prevents access to its saved chats. App analytics erasure also removes its saved chats.

Reviewed October 21, 2026 against the private API implementation and OpenRouter model metadata. AI mode offers Auto, Claude Haiku 5.5, GLM 5.3, Grok 4.7, and GPT 6.1 Sol. The authenticated analytics prompt API and Growth review also accept an optional model field:

{
"prompt": "Compare page views this week with the previous week",
"model": "openai/gpt-6.1-sol"
}

Allowed values are auto, anthropic/claude-haiku-5.5, z-ai/glm-5.3, x-ai/grok-4.7, and openai/gpt-6.1-sol. Omit the field to use the configured server default (Claude Haiku 5.5). Unknown models are rejected before provider calls or allowance reservation. A manual choice remains fixed for planning and answer selection; a provider failure does not silently select another answer model. Responses and saved replies include model.requested, model.selected, and model.routing.

Auto sends a redacted, bounded question and a context-complexity flag to Jev 1.14’s Decisions API. Jev selects Haiku for simple questions or GPT for complex ones. Invalid, uncertain, or unavailable routing falls back to GLM 5.3. Jev does not receive analytics facts, the event catalog, or conversation history and cannot authorize queries. Jev is billed for input; it is not a free answer model. Public competitor research uses Haiku separately and receives only the supplied competitor names and category.

All inference requests require zero-retention, no-data-collection routing and bounded provider prices. If no eligible endpoint is available, privacy requirements stay in place. Availability depends on the deployed OpenRouter account and provider status. One completed request still uses one prompt; a completed Growth evidence fallback also uses one prompt. Clarifications and failed analytics requests use none.

The broader planning examples and deterministic evaluation corpus cover traffic, comparisons, conversions, performance, visibility, ambiguity and unsupported requests. These are prompt examples and regression checks, not fine-tuning or proof of live model accuracy.

For Growth review, send the same model value alongside its question and required UUID request_id fields. Its response also identifies the separate research_model when public research was requested. Existing OWLEYE_AI_MODEL=z-ai/glm-5.2 deployments upgrade that default to GLM 5.3; new example environments default to Haiku.

Model and routing references: OpenRouter model catalog, Jev Decisions API, and zero-retention routing.