Flows
Flows surfaces the top multi-step paths your visitors actually take, without you having to define anything first. Where Funnels answer "did visitors follow the path I designed?", Flows answer "what paths exist?"
Where to find Flows
Open the dashboard, look at the right-side panel, switch to the Journeys tab. Two sub-tabs appear: Flows (default) shows auto-discovered paths, Funnels shows the saved funnels you've defined. The same Journeys parent hosts both because they share the same chart vocabulary and the same data; the difference is who defines the path.
How paths are discovered
For every session in the current date range and filter scope, Flows builds an ordered list of pathnames sorted by timestamp. Consecutive duplicate pages are collapsed so a page refresh or a hash-link revisit doesn't dominate the rankings. The first N steps of each session's path become its truncated path. Truncated paths are grouped and counted across all sessions, and the top N most common are returned ranked by session count.
Defaults: step count is 3, the top 10 paths are returned, paths with fewer than 3 sessions in the current scope are filtered out as noise. These limits keep the panel responsive even on the largest sites.
Reading a Flow row
Each row shows the path as a sequence of clickable page chips with arrows between them, the step count, and the percentage of total multi-step sessions that followed this exact path. Clicking any chip filters the whole dashboard to sessions that touched that page, the same way clicking a row in the Pages panel does. Clicking the chevron expands the row into the drop-off chart.
The drop-off chart
When you expand a Flow row, the chart shows three bars (or two, for 2-step paths). The first bar is everyone who started on step 1's page across the whole filter scope, not just visitors who walked this exact path. The second bar is the subset that continued to step 2 regardless of what came after. The last bar is the visitors who walked the exact path on the row.
The chart reuses the same bars, in-bar labels, and dashed drop-off overlay that Funnels uses. The label inside each bar shows the survival rate from the first step and the absolute visitor count. The dashed area above each bar is the drop-off from the previous step.
Save as funnel
The expanded row footer has a Save as funnel button. Clicking it shows an inline confirm with a pre-filled funnel name you can edit. On confirm, Clickport creates a new funnel that stores the path's pathnames directly as inline pageview steps, then switches you to the Funnels sub-tab. No goals are created, nothing extra appears in your goals settings.
The new funnel uses relaxed step ordering and a 24-hour completion window. You can rename it, reorder steps, or delete steps in Settings → Goals & Funnels → Funnels. Inline pageview steps render as a read-only [PAGE] /pathname chip in the editor; to swap one for a goal-backed step, delete it and add a goal step in its place.
If you'd rather build the funnel from named, reusable goals (so the same conversion shows up in the Goals panel and other funnels), skip Save-as-funnel and build the funnel manually in Settings → Goals & Funnels → Funnels using your saved goals as steps.
Filters that compose with Flows
Flows respects the dashboard's date picker and most cross-filters. Add a source filter and Flows recomputes for that source's visitors only. Add a country filter and the top paths shift toward what visitors from that country actually do. Date range from last 24 hours through all-time is fair game.
Two filters are explicitly allowed in Flows that aren't allowed in Funnels:
- Page filter. When you have a page filter active, Flows shows only paths that include that page. Pair with the Pages panel: click a row in Pages to filter, switch to Journeys → Flows to see what those visitors do next.
- Goal filter. When you have a goal filter active, Flows shows paths that converted on that goal. This is the highest-signal view for asking "what paths actually convert?", which is the question Funnels can't answer without you already knowing the answer.
Flows is not available in realtime mode. Aggregating paths over a rolling 30-minute window doesn't have a meaningful interpretation, so the panel surfaces an empty state in realtime.
Privacy model
Flows is a within-session aggregation. Every path is a single session's ordered pageviews; we never link sessions across visitors. Visitor IDs rotate at local midnight to keep tracking cookieless and consent-free, so a path is always one session's journey, not a cross-session reconstruction. This is the same model Sessions and Funnels use.
Limits and edge cases
Single-page sessions (1 pageview) are excluded from Flows because there is no path to surface. They show up in Sessions and the headline KPIs as normal.
Sessions with very long paths are truncated to the first N steps. The default of N=3 means /A → /B → /C → /D and /A → /B → /C → /E are both counted toward the same /A → /B → /C path because their first 3 steps match. This is intentional: longer paths get exponentially rarer and would not produce a useful ranking.
Consecutive duplicate pages are collapsed before truncation. /A → /A → /B → /C becomes /A → /B → /C. A visitor refreshing the same page, or an SPA that fires a pageview on a hash change to the same path, will not dominate top paths.
How Flows and Funnels differ
- Definition. Flows are discovered automatically. Funnels are defined by you from saved goals.
- Update over time. Flows recompute on every date range and filter change. Funnels stay stable so you can compare a conversion rate across periods.
- Page filter. Flows accept page filters. Funnels reject them because a page filter would redefine the funnel's population.
- Goal filter. Flows accept goal filters. Funnels reject them for the same reason.
- Save path. Flows can be promoted to Funnels with one click. Funnels can't be demoted to Flows.
Use Flows to find paths worth tracking. Save the ones you care about as Funnels. Then watch the Funnels for changes over time.