Skip to main content

Analytics Agent

The analytics agent helps you understand your product data through natural language. Ask a question, and the agent will search your workspace, explore your data catalog, and create the right analysis for you.

image

Where to access the agent​

You can start a conversation with the agent from several places:

  • Home page — type your question directly in the input area.
  • Sidebar navigation — click Mitzu Agent in the left sidebar to start a new conversation in a full-screen interface.
  • Floating button — the agent button in the bottom-right corner is available on every page. Click it to open the agent in sidebar mode without leaving your current view.
image

The floating button opens the agent in sidebar mode, letting you chat while keeping your current page visible. You can switch between sidebar and full-screen modes at any time using the Expand and Minimize buttons.

What you can ask​

The agent supports several types of analysis. Here are examples for each.

Segmentation​

Count events, unique users, trends over time, and breakdowns by properties.

  • "How many users signed up this week?"
  • "Show me daily active users over the last 3 months"
  • "Compare signups by country"
  • "What percentage of active users made a purchase?"
  • "How many users signed up this month vs. last month?"
  • "Signups by plan this month vs. last month as a pivot table, with the periods side by side"

Asking for a change, a growth or a "vs." adds a comparison period to the insight, so each value carries its own change indicator and the insight can be saved or pinned to a dashboard like any other. When the two periods would overlap — a single total for this year compared with last month — the comparison cannot be drawn, and the agent builds the insight without it and says why.

A question that wants one figure and how it moved — "what is our active user count, and is it up on last month" — comes back as a big number with a change indicator rather than a bare figure with the change described in prose.

Where the date range stops part-way through its last period, that last point covers fewer days than the one it is drawn against, so its change is an artefact rather than a real move. The agent reads the trend from the completed periods and says so if it mentions that last point. Overall charts are not affected: both windows are the same length there.

To leave the running period out altogether, ask for complete periods — "monthly signups over the last 3 complete months". The agent adds an exclusion to the time window with Exclude N periods, so the saved insight, cohort or dashboard filter keeps ending where the running period starts and moves forward by itself when a new one starts. An exclusion trims the end of the window and leaves its start where it was. On a trend the start snaps to the time group as usual, so a monthly chart over the last 3 months with the running month excluded shows 3 complete months; on an overall chart the window still starts 3 months before today, and the agent says so when it describes the window. Any window can carry one: a lookback, a since date, a calendar range or a custom range.

Ask for "the same window last year" and the agent moves the whole window back a year with an offset instead, so it keeps its length. To see the two periods side by side, ask for a comparison. Excluding as much as the window covers leaves nothing to chart, and the agent tells you the chart is empty rather than reading it as zero activity.

On a pivot table the previous period gets its own row under each value. Ask for the two periods "side by side" and the agent puts them in columns instead — the Current vs. previous layout of the column dropdown. That layout holds both periods' own values, so it is not available with the % formula; the agent then keeps the row layout and says so.

Funnels​

Track conversion rates through sequential steps.

  • "What's the conversion rate from signup to first purchase?"
  • "Which campaigns drive the best conversion?"
  • "How long does it take users to go from trial to paid?"
  • "How much did our visit to signup conversion move week over week?"

Ask for two funnels at once, or for a funnel next to something else, and you get one chart rather than two:

  • "Compare the signup funnel and the trial funnel by country, as a pivot table"
  • "Show the signup funnel conversion next to the number of trials started"

A funnel takes a comparison period too, on a trend or on the overall setting — as paired bars per step, or as a number tile with a change indicator. Only the % formula is unavailable on a funnel; the agent falls back to # and says so.

Say what must not happen and the agent adds an exclusion step:

  • "Signup to subscription started, without a cancellation in between"
  • "Trial to first paid invoice, not counting anyone who cancelled before their trial"
  • "Sessions that added to cart but didn't end up checking out"

The same works when the agent saves a funnel cohort. A funnel with an excluded step takes no comparison period, and the agent says so.

If a saved funnel matches the question, the agent uses it, so the chart runs the workspace's own definition. If none matches, it builds the funnel, saves it, and names the insights it saved. See Saved insights as series.

Retention​

Measure whether users return after an initial action.

  • "What's our day 1, day 7, day 30 retention?"
  • "Show me retention by signup source"
  • "Are users who signed up last month coming back?"

Journeys​

See how users flow from one step to the next, drawn as a journey chart.

  • "What paths do users take from signup to their first purchase?"
  • "Show the journey from a landing page visit to signing up, split by campaign"

Ask what happened right before an event and the agent reverses the journey: it starts from the last step and looks back to the closest earlier events inside the conversion window, which is 30 days unless you name another. Each user is counted from their last occurrence of that final event in the date range, as on the Explore page. Ask about a specific occurrence instead ("before their first purchase") and the agent counts from that one and tells you that Explore resets it to the default once the insight is edited there. Two steps are enough when one of them has a breakdown, which is how a last-touch view is built.

  • "Show me a journey of the last campaign users landed on before they signed up"
  • "What led up to a subscription cancellation?"

Discovery​

Explore existing insights and your data catalog.

  • "What insights do we have about engagement?"
  • "What events do we track?"
  • "Show me the top insights"

How the agent works​

When you ask a question, the agent follows a structured workflow:

  1. Searches your workspace for existing saved insights that match your question. If a relevant insight exists, the agent runs it and shows you fresh results rather than creating a duplicate.
  2. Explores your data catalog if no existing insight matches. The agent discovers the right events, properties, and dimension tables to answer your question.
  3. Creates an analysis — a segmentation, funnel, retention, or journey insight — and runs it to generate a chart and key findings.
  4. Presents the results with a summary highlighting the most important numbers, alongside a chart visualization. Occasionally the agent will also embed a custom chart when a derived view — a ratio, a joined top-N, or an overlay — would make the answer easier to read.

Custom charts​

Custom charts let the agent go a step beyond running individual Mitzu insights. It can combine the results of multiple insights and run its own calculations on top of them — a ratio between two metrics, a period-over-period diff, a trend overlay — to answer questions that no single saved insight can answer on its own. The agent then presents the derived result as a custom chart: a collapsible card with a violet Custom badge, embedded directly inside its summary so the calculation is easy to digest in context.

image

When the agent draws one​

  • Derived ratios — e.g., "Show me DAU/MAU ratio over the last 90 days." The ratio isn't a saved insight, so the agent computes it from DAU and MAU and plots just the ratio as a line.
  • Period-over-period comparisons the chart cannot hold — a single segmentation compared against an earlier period is a real insight with its own comparison period, so the agent only reaches for a custom chart when the two periods cannot be expressed as one offset, for example when they are different lengths or come from different insights.
  • Funnel trends on one chart — e.g., "Plot the signup → activation conversion rate week over week alongside the trial → paid conversion rate." A single funnel has multiple steps and can't share one chart with another, but the overall conversion rate of each funnel is one number per week, so the agent renders both as lines on the same chart and you can see the trends moving together (or apart).

Working with a custom chart​

Custom charts are presentation only — they expand and collapse, but cannot be saved as insights, added to dashboards, or opened in the explore view, and only one appears per agent message. The Mitzu insights the calculation is built on are already shown above the summary — those are the savable artifacts, and you can save them or add them to a dashboard from there.

Working with results​

When the agent creates an insight, you can:

  • Click the insight link to open it in the full explore interface
  • Edit the metric — change filters, time windows, breakdowns, or aggregation types
  • Save it as a workspace insight for future use
  • Add it to a dashboard to track alongside other metrics

The agent can also name the series on a chart's legend for you. Ask "label true as Insider and false as Non-Member" or "call monthly Flexible and yearly Committed", and the chart, its table, the saved insight and its dashboard cards all show those names, the same as renaming a legend label on the explore page yourself. When it rebuilds a saved insight, it keeps the names already set there. If a value you name does not appear on the chart, the agent says so instead of claiming the rename. Pivot tables always show the raw values.

The agent can also create and update cohorts and collections directly from a request — for example, "save the users who dropped off at checkout as a cohort." A saved group of a non-user entity, such as accounts or teams, is a collection, and the agent calls it one.

When a group is defined only by user properties, such as "everyone with our company's email domain, or with the admin role", the agent saves it as a Lookup cohort, built from the user properties alone with no events and no date range, so nobody is left out for what they did or when. Its conditions are all required at once, so for an "either … or" group the agent saves one cohort per condition and filters charts by all of them together: a chart set to exclude them leaves out anyone in any of them.

The same works for groups defined by what users did. Ask "what share of subscribers either subscribed within a day of signing up, or created a document first?" and the agent offers to save each group as a cohort, then answers with one exact number from a single chart filtered by both, instead of a range from two separate charts.

The same goes for global annotations: "add an annotation for the v2.0 release on 15 March" creates one, and "hide the Black Friday annotation" or "move the pricing change to 10 February" edits an existing one. The agent proposes the title, time and change first and saves only after you confirm.

On dashboards, the agent works with more than charts: it can add text cards and section dividers, place new content directly above a chosen panel ("add an Activation header above the signup funnel"), rewrite an existing text card or divider label, and add its own summaries to a dashboard when you ask.

The agent sizes the charts it places by type. Big numbers that each show a single value join the dashboard's Key metrics section as compact short cards, and the whole section is re-split into even rows of up to four, so widths you set by hand inside the section are reset. On a dashboard without one, two or more of them land first under a new Key metrics divider, while a lone one gets a regular half-width card. When you ask for them in a specific place, they go there without a second divider: two or more as a row of short cards, a single one as a regular card. A big number broken down into several values gets a regular card too. Journey charts span the full width at the tall height, and every other chart gets a half-width card. You can resize or rearrange any of them afterwards like any other panel.

On a dashboard split into pages, the agent works one page at a time. With the dashboard open it knows which page you are on: "add a retention chart here" lands on that page, and the confirmation names the page it used. Name another page to add there instead. Asked what a dashboard shows, it lists the pages and reads the one you are viewing, and reads the other pages too when the question is about the whole dashboard. It can also organise the pages for you: split a dashboard into pages, add, rename and reorder them, move panels from one page to another, and build a new dashboard with its pages in one go ("create a growth dashboard with an Acquisition page and a Retention page"). Deleting a page takes the panels on it off the dashboard — the saved insights stay — so the agent always asks first. On a long dashboard without pages it may offer to split it, but never does so unasked. A refresh through the agent covers every page unless you ask for one.

When you edit the dashboard you are currently viewing, the page updates in place as soon as the agent finishes — added panels appear, removed ones disappear, and renames, text edits, page changes, and dashboard-wide filter changes apply without a reload, so the sidebar conversation keeps its place. The refresh only reads already-computed results: panels without a stored result for a new filter show Results are missing with their own Refresh button, so re-running queries stays your call.

Dashboard panels are cached, so the agent checks how old they are before it uses them. Ask what a dashboard shows and it reports the values on screen, tells you when they were last refreshed if they are older than the dashboard's refresh schedule, and offers to refresh the dashboard for you. Ask for a number and the agent treats a matching dashboard panel as the definition to reuse: if the panel is out of date it re-runs the insight for current figures, tells you the dashboard itself still shows the older values until it is refreshed, and applies the dashboard's own filters only when you are looking at that dashboard.

Conversations​

The agent supports multi-turn conversations. You can ask follow-up questions in the same thread, and the agent will maintain context from previous messages.

  • Start a new conversation anytime using the "New conversation" button in the header
  • Switch views between full-screen and minimized sidebar mode
  • Find past conversations — recent chats are shown in the sidebar agent panel. Click View all to see your full conversation history on the All Content page.
  • Reopen long conversations quickly — a long chat opens on its latest messages. Scroll up and click Show earlier messages to load the previous part of the conversation.
image

AI settings​

Configure the agent's behavior in Settings → Workspace → Analytics → AI.

image

Memory​

The agent keeps memory across chats: workspace topics for your team's terminology, definitions and conventions (e.g., "a 'conversion' means a completed purchase", "our fiscal year starts in April"), and personal topics for each person's defaults (e.g., "always use weekly time groups"). It applies the topics that bear on each question, and lists them under Used memory below the answer.

Ask the agent to remember something in the chat, or add topics in Settings → Workspace → Analytics → Memory and Settings → Personal → Memory. Memory replaces custom instructions.

Off by default. When enabled, the agent can look up information on the public internet to enrich its answers. Two situations where this is most useful:

  • Correlating your data with real-world events — e.g., "did our signups dip the week of the AWS us-east-1 outage?" or "compare our traffic on Black Friday to last year". The agent can pull in the external context (dates, news, public benchmarks) and combine it with the numbers from your workspace.
  • Updating your workspace config from your own website — e.g., "look at our pricing page and add the plan tiers as a dimension" or "fetch our public docs and use them to rename these events". The agent can read your public-facing pages and use them to inform catalog changes.

Enable it from Settings → Workspace → Analytics → AI → Web search. See AI settings for details.

Getting better results​

The agent discovers events, properties, and dimensions from your configured data catalog. The quality of its answers depends directly on how well-organized your analytics data is — better naming, organization, and completeness mean better insights.

Here are actionable ways to improve the agent's output:

  • Use descriptive display names — if your raw column names are cryptic (e.g., evt_pg_vw), add clear display names (e.g., "Page View") so the agent can find the right events
  • Create custom events for key business actions — this gives the agent clean, meaningful concepts to work with instead of raw event table names
  • Configure dimension tables for user attributes you frequently analyze — the agent uses these for breakdowns like "by country" or "by plan"
  • Add property descriptions — descriptions help the agent understand what a property means and when to use it for filters and breakdowns
  • Keep your catalog up to date — re-index after adding new tables or columns so the agent has access to your latest data
  • Use memory to give the agent domain context it can't infer from the data alone: tell it "remember…" when you correct it or state a definition
  • Use planning mode for broad or multi-step questions — the agent proposes a plan you can review and refine before any work runs, so you steer the investigation rather than redirect a finished one