What Otis records
Sessions
What a session is to Otis, what Otis writes about each one, and which sessions get a full narrative.
A session is all the activity that shares one session ID. It usually corresponds to one visit: a user arrives, works for a while, and leaves. Your app decides where a session begins and ends by choosing the ID. Otis groups by that ID and doesn't split a session itself.
Once a session goes quiet, Otis divides it into tasks and writes a summary of it. For some sessions it also writes a longer narrative. This page explains what the summary and the narrative contain, and which sessions get each.
Purpose of sessions
A session is the unit your team already thinks in: one sitting, by one user. A task says how one goal went. The session shows the goals in order, where the user moved between them, and how the visit as a whole turned out. It is also the unit you open when you want to read what happened to a particular user.
Session identity
Your app sets the session ID. Sessions covers the options, including how to use the session from your auth provider. Three points affect what Otis can do:
- A span with no session ID is never analyzed. Otis finds tasks and writes summaries per session, so activity without a session ID gets neither.
- Otis stores a hash. The session ID is hashed before it is stored, in the same way as a user ID.
- A chat is part of a session. If your app sends a chat ID, each chat is a separate conversation inside the session.
Processing schedule
Otis picks up a session once its most recent span is at least 30 minutes old. It divides the session into tasks first, and then writes the summary. If the user comes back to the same session ID later, Otis processes the new activity and writes the summary again.
The session summary
Otis writes a summary when a session has at least one task. The summary holds:
- Goal. What the user was doing, built from the intent of the session's tasks. A session with one task takes that task's intent. A session with several shows them in order.
- Outcome. Completed, partially completed, abandoned or unclear. It follows the most common outcome among the session's tasks: success, struggled, abandoned or unknown.
- Key actions. The categories of the session's tasks.
- Counts. The number of spans and tasks, and when the session started and ended.
- Usage. Token usage in total and for each model, and cost.
- Errors. How many spans failed, and the causes.
Long-lived session IDs
Otis writes no summary for a session that spans more than 12 hours from its first span to its last. This measures the whole life of the session ID, across separate visits.
If your app keeps one session ID for days, for example an ID that lasts as long as a login, that session stops getting a summary once it passes 12 hours. Its tasks are still recorded. The Sessions list shows only sessions that have a summary, so the session isn't listed. Choosing what to use as your sessionId describes how to pick an ID that matches one visit.
Session narratives
A narrative is a fuller write-up of one session. It contains:
- An assessment. A short summary of how the session went, and a few titled takeaways.
- A timeline. The steps of the session in order. Each step has a title, a description and an outcome. A step can also include a direct quote from the user, the friction Otis detected, and the surfaces involved.
- An overall result. One of abandoned, high friction, delight or neutral.
A narrative for a session that consists only of tool calls from an agent makes no claims about how a user felt, because Otis saw no user messages.
Sessions that get a narrative
A session needs a summary, more than one task, and a known user. Otis then decides by user:
- Small projects. Every user's sessions get narratives.
- Larger projects. Otis writes narratives for the users it has the most reason to read closely. Examples are highly engaged users, users who appear to be leaving, and users who recently had a frustrating session. As a project grows, Otis writes narratives for a sample of this group, and the sample holds the same users from day to day.
Uses of narratives
Otis uses new narratives as starting points for insights. It prefers sessions that were abandoned or had high friction, and it spreads its picks across different kinds of work, so that one kind doesn't crowd out the rest.
Retention
Otis keeps session summaries and narratives for 365 days. The spans and tasks behind them are kept for 90 days, so an older session still has its write-up after its detail has gone.
Sessions in Otis
The data browser has a list of sessions that you can filter by time, by number of tasks, by errors, and by whether a session has a narrative. Opening a session shows its tasks. A session with a narrative also has Takeaways and Timeline tabs.
A user's page and an account's page each list that user's or account's sessions. An insight can also embed a narrative.