---
title: Sessions and journeys
description: Use privacy-safe anonymous timelines to understand the sequence around an issue or funnel outcome.
slug: sessions-and-journeys
---

# Inspect sessions and journeys

A Dozenfold session is a privacy-safe event timeline. It connects navigation, funnel, error,
performance, and friction evidence in the order observed by the browser. When a store has turned on
error-session replay, sessions with an error can also include a masked replay, opened from the
issue's session timeline with **Watch replay**.

Each browser tab records its own replay. When a shopper had several tabs open, the session opens the
tab recording with the most linked errors. If the issue's error happened before or after the
recorded window, the replay says so instead of marking a point it did not capture.

## Use the session list

Filter anonymous sessions by journey outcome, issue presence, device or browser context, and time.
Open a session from an issue, page, or funnel stage to preserve the question that led you there.
Pin useful sessions while an investigation is active.

## Read the timeline

Event families use distinct labels and colors so the sequence can be scanned before reading every
row:

- **Navigation** records privacy-safe page transitions.
- **Funnel** records storefront progression such as product viewed, cart updated, and checkout
  started.
- **Error** records grouped browser, resource, request, or commerce failures.
- **Vital** records LCP, INP, and CLS field measurements with their rating.
- **Business milestone** records an explicitly tracked, allowlisted commerce action such as a
  wishlist addition or promotion click. It is context, not an automatic funnel or revenue claim.
- **Friction** records behavior patterns such as rage-click or dead-click candidates.

Events with the same timestamp can be emitted by one shopper action. Read their ordering and type
together rather than assuming each row represents a separate action.

## Track an additional commerce milestone

After `Dozenfold.init()` resolves, storefront code can call:

```js
Dozenfold.track('wishlist_added', {
  quantity: 2,
  amount: 49.95,
  currency_code: 'USD',
});
```

Version 1 accepts only `wishlist_added`, `wishlist_removed`, `product_compared`,
`promotion_viewed`, `promotion_clicked`, and `search_submitted`. Properties are limited to bounded
`quantity`, paired `amount` + uppercase three-letter `currency_code`, and boolean `success`; arbitrary labels and
strings are rejected. Successfully queued milestones are capped at 50 per anonymous session/runtime.

## Privacy boundary

Dozenfold does not reconstruct the DOM, capture video, store input values, or create a persistent
shopper profile. A random session identifier expires after 30 minutes of inactivity. See
[Privacy and data collection](/docs/privacy-and-data).
