End-to-End Visitor Journey Funnel Tracking
Understanding where prospective policyholders originate, which coverage lines they explore, and precisely where drop-offs occur is essential for optimizing digital insurance conversion rates.
veridex-hitech-web-application features an integrated Visitor Journey Funnel Engine (src/app/api/telemetry/journey/route.ts and src/components/feature/admin/visitor-journeys-tab.tsx).
1. Journey Funnel Architecture
Rather than recording disconnected page hits, the journey engine links sequential browsing events into a cohesive timeline document stored in VisitorJourney:
2. Journey Event Types & Schema (IJourneyEvent)
Every step in a visitor's session is serialized into an event object:
export type JourneyEventType =
| "PAGE_VIEW"
| "FORM_START"
| "FORM_SUBMIT"
| "CTA_CLICK"
| "AUTH";
export interface IJourneyEvent {
type: JourneyEventType;
path: string;
title?: string;
target?: string; // e.g. "Get Free Quote CTA", "Truck Quote Modal"
status?: "SUCCESS" | "FAILED" | "PENDING";
metadata?: Record<string, any>;
timestamp: Date;
}
3. Journey Ingestion Endpoint (POST /api/telemetry/journey)
3.1 Sample Request Body
{
"sessionId": "sess_89f0a21b34cd",
"visitorId": "vis_774921048",
"eventType": "FORM_SUBMIT",
"path": "/en/insurance/truck-insurance",
"title": "Commercial Truck Insurance",
"target": "Quote Draft Step 1",
"status": "SUCCESS",
"metadata": {
"insuranceType": "truck-insurance",
"state": "TX"
}
}
3.2 Atomic Session Array Appending
The endpoint performs an atomic MongoDB $push into the journey array, calculating cumulative active duration:
await VisitorJourney.findOneAndUpdate(
{ sessionId },
{
$push: { journey: newEvent },
$inc: { pageViewCount: isPageView ? 1 : 0, formSubmitCount: isFormSubmit ? 1 : 0 },
$set: {
lastActiveAt: new Date(),
durationSeconds: Math.floor((Date.now() - sessionStart.getTime()) / 1000),
},
$setOnInsert: {
startedAt: new Date(),
acquisition: resolvedAcquisition,
geo: resolvedGeo,
device: resolvedDevice,
},
},
{ upsert: true }
);
4. Visual Journey Exploration in the Admin Control Center
Administrators navigate to Visitor Journeys (src/components/feature/admin/visitor-journeys-tab.tsx) to inspect session funnels:
- Interactive Timeline: Step-by-step visual node sequence showing time spent per page, dwell times, and drop-off points.
- Acquisition Filter: Filter funnels by referral source (e.g. Meta Ad Campaign, Falcon Partner Ingestion, Organic Search).
- Conversion Attribution: Instantly isolates sessions that culminated in successful quote submissions versus those that abandoned during Step 2 questionnaire enrichment.