Sessions

Track each interaction that a customer has with your Cancel Flows
View Markdown

Sessions track every customer's interaction with your Cancel Flow, from initial trigger to final decision. Sessions are the primary data structure Churnkey uses to track, analyze, and report on customer retention efforts.

How it works

Whenever a customer starts the Cancel Flow, a session will be created to store the customer's information and their interactions, for example, their Survey Cancellation response. The result of a session, called Session Outcomes, will be used to generate metrics such as the Save Rate, Offer Performance, and help in understanding cancellation reasons.

Activity Stream

The Activity Stream at the bottom of the Cancellation Analytics page is the per-session log. Each row represents a single session: who the customer was, when they came through, what flow they ran, the outcome, and any survey or follow-up answers they left along the way. It is the right place to investigate a single customer's experience or to pull a CSV for a teammate.

Sessions are returned newest first and the page loads ten at a time. Use the Load More button at the bottom to keep going.

If the customer does not reach the Cancellation Survey or the Freeform Feedback, their session won't have any of this data.

Toolbar

The toolbar above the list groups every control you need to narrow the view.

  • Search input. Matches against customer email, customer ID, and survey or feedback text. Trigger it with the magnifying glass button or by hitting Enter. While a search is active, the date range and filter dropdown are temporarily disabled.
  • Date range picker. Defaults to the last 90 days. Quick options: Last 7 days, Last 30 days, Last 90 days, Last 6 months, Last Year. Custom start and end dates are accepted.
  • Filters dropdown. Multi-select. Defaults to All Sessions.
  • Export button. Pulls the currently filtered list as a CSV. Hidden behind a permission gate (see Exporting data).

Filters

The filter dropdown is populated from values that have actually appeared in your account, so you only see options that will return results. The available groups are:

  • Offer Accepted
    Sessions where the customer accepted a specific offer. Values: Support, Discount, Pause, Trial Extension, Switch Plan, Redirect URL.
  • Billing Interval
    The billing interval of the customer's subscription. Values: Daily, Weekly, Monthly, Annual.
  • Subscription Age (Years)
    How old the customer's subscription was when they ran the flow, in one-year ranges (0 - 1 year(s), 1 - 2 year(s), and so on).
  • Segment
    Which Cancel Flow segment the customer matched. Sessions that ran through the Primary Flow (no segment) appear under a dedicated entry at the top of the list.
  • Plan ID
    The price or plan identifier from your billing provider, with the human-readable plan description shown alongside the ID.
  • Response
    Survey response, listing every distinct answer your customers have selected.
  • Subscription Status
    On Trial (customer was on a trial when the session ran) or Active Subscription.
  • Session Outcome
    Currently exposes a single value, Abandoned, which limits the list to sessions where the customer opened the flow but closed it without completing any path. The group only appears for organizations that actually have abandoned sessions on file.

Per-session row

Each row carries the customer, the outcome, supporting badges, and any feedback the customer left.

  • Recording playback
    Each row begins with a play icon. If a session recording was captured, the icon is highlighted; clicking it opens the in-app session viewer. If recording was disabled or no recording is available, the icon is greyed out.
  • Customer
    The customer's email is the primary label. If the email is missing, the customer ID is shown instead. A small clipboard icon copies the value to your clipboard. For accounts with the Customer Profile feature enabled, clicking the email opens the customer's profile page in Churnkey.
  • Test Mode or Sandbox badge
    Shows whenever the session was created outside of live mode.
  • Flow name badge
    The Cancel Flow the customer ran through. Reads Primary Flow when no segment matched, otherwise the segment name. Click the badge to open the exact published version of the flow that the customer saw, even if you have rotated A/B variants since.
  • Language badge
    Shows the detected language of the customer when the flow was rendered, with an icon overlay indicating whether the content was translated automatically, translated using your manual override, or left in the default language because translation was unavailable. Hover the badge to read the full status.
  • Override Present badge
    Indicates that the customer's session ran through a custom callback in your embed code (for example, your own handleCancel or handlePause). The tooltip lists which actions were overridden.
  • Outcome label
    Single label summarizing how the session ended: Cancelled, Paused, Contacted Support, Redirected, Discount, Extended Trial, Plan Change, or Abandoned. Alongside the outcome you will see how long ago the session ran (hover for the exact timestamp), the customer's subscription price and billing interval when available, and an On Trial marker for customers who ran the flow during a trial.
  • Click-to-Cancel detail
    For sessions that hit the Cancel Now button, a second line appears under the outcome with the matched region (jurisdiction) and a compliance label (Single-Click Compliance or Maximal US Compliance).
  • Survey choice and follow-up
    The customer's survey choice is shown to the right of the row (truncated to fit). Below the row, the follow-up question is repeated in bold along with the customer's choice or freeform answer. A separate Feedback: block surfaces any free-text response the customer left in the flow.
  • Bounce indicator
    A small upward-arrow icon appears on the right of the row when the session was effectively replaced by a more recent or more relevant session for the same customer within 24 hours. Hover for the explanatory tooltip.
  • Subscription age
    For sessions where the underlying subscription has a creation date, the right side of the row shows how long the customer had been subscribed before they ran the flow.

Exporting data

Click Export Data to pull the currently filtered list of sessions as a CSV.

  • Up to 5,000 records: the file downloads in your browser immediately. Progress is shown live.
  • More than 5,000 records: Churnkey queues the export, prepares the CSV in the background, and emails you a download link when it is ready. You will see a confirmation toast: "Export is being prepared. You will receive an email with a download link shortly." The link is valid for 24 hours.

There is no longer a hard cap on how many sessions you can export. Datasets up to roughly one million sessions have been tested.

Export Data is restricted to the Owner and Admin roles. Members and viewers see the button disabled, with a tooltip explaining the required role. The same restriction is enforced on the API, so it cannot be bypassed by URL.

If you click Export Data while a previous export is still being prepared, the second click is rejected with a notice that an export is already in progress. Wait for the email and try again from there.

Session Outcomes

The Session Outcome is the customer's resulting action of a session. As mentioned in the Save Rate, the outcomes can be separated into two major groups: Cancelled and Saved.

The Saved Customers are distributed in more detailed results as Abandoned, Paused, Discount, Contact Support, and Redirected.

Cancelled

The customer went through all the steps of the flow and opted to cancel their subscription

Abandoned

The customer started the Cancel Flow but closed it without taking any action.

Paused

The customer accepted to pause their subscription for a certain period.

Discount

The customer accepted a coupon offer.

Contact Support

It's mandatory to have the handleSupportRequest integration. Your implemented support tool will be called once the customer clicks the button.

Redirected

This is the result of "Send to Custom Page". After clicking the button, the customer will be redirected within the same browser's tab to the configured link.

Bounced Sessions

Customers may start multiple Cancel Flows in a short period of time. With multiple sessions, Churnkey only takes into consideration the most relevant session for the metrics. Sessions that are not relevant are tagged as Bounced and are not considered in your metrics.

The timeframe to mark a session as bounced is 24 hours. This means that the difference between the bounced and most relevant session can be a maximum of 24h.

Example of a Bounced Session

Consider a customer with an active subscription who created two sessions within a timeframe of 5 minutes:

  1. Started a Cancel Flow at 9:00 AM
  2. The customer did not take any action and closed the Cancel Flow
  3. Session recorded and marked as Abandoned
  4. The Abandoned Session increases the Save Rate
  5. After 5 minutes at 9:05 AM, the customer starts the Cancel Flow again
  6. Now, they opt to Cancel their subscription
  7. New session is generated with Cancelled as the outcome
  8. Previous Abandoned session is marked as Bounced
  9. The Save Rate decreases because of the Cancelled Session
The customer generated an Abandoned Session by step 2. Until this moment, we counted this session as a Save in the Save Rate. When they opted to Cancel by step 4, we marked their previous session as Bounced and removed it from the metrics. From here, we only consider the Cancelled Session for the Metrics.