Articles on: Developer Documentation

VID and Hit ID Reference

This document is a technical reference for the two core identifiers in FunnelFlux: the Visitor ID (VID) and the Hit ID. Understanding how these identifiers work, how they are maintained across pages, and how they differ for conversion tracking purposes is essential for any advanced integration.


Visitor ID (VID)

What It Is

A Visitor ID (VID) is a unique session-level identifier assigned to every visitor who enters a FunnelFlux funnel. It ties together all of a visitor's activity -- page views, clicks, and conversions -- within a single session.


The VID is generated automatically by FunnelFlux at the moment a visitor first enters a funnel (either via a redirect link or via the JavaScript on a direct-tracked page). You do not create or manage VIDs yourself.


Key Characteristics

Property

Detail

Generated by

FunnelFlux edge server on funnel entrance

Scope

Single visitor session

Expiry

Approximately 24 hours

Storage

Browser cookie + URL parameter + backend Redis session store

Token

{visitor}

Reporting availability

Raw events only (shown as "Session ID")


Important notes on expiry: VID session expiry is approximately 24 hours and is driven entirely by the backend Redis infrastructure. This is NOT a user-configurable setting and is not exposed in the UI. Sessions cannot be extended indefinitely. Do not design systems that assume a VID will remain valid beyond this window.


How VID Continuity Works Across Pages

FunnelFlux uses multiple redundant mechanisms to maintain session continuity as a visitor moves between pages. It does NOT rely exclusively on any single method:

  1. URL parameters -- When FunnelFlux redirects a visitor to a destination page, it appends &vid=VISITOR_ID to the URL. This gives the destination page explicit access to the session identifier.
  2. Referrer headers -- The FunnelFlux JavaScript configures the page's referrer policy to pass full referrer data on click-throughs. When the visitor navigates to the next page, the referrer URL contains the VID, which the JavaScript on that page can extract.
  3. Cookies -- FunnelFlux drops a cookie containing the VID. This serves as a fallback if the VID is not present in the URL or referrer.
  4. JavaScript injection -- The FunnelFlux JavaScript on any page reads the VID (from URL, referrer, or cookie) and automatically injects it into all action links on the page. It also updates the browser's address bar URL to ensure the referrer is complete for subsequent navigations.


This multi-layered approach makes FunnelFlux tracking significantly more resilient than systems that rely on cookies alone.


In addition to the primary VID cookie, FunnelFlux drops a separate ff_sr (session recovery) cookie on the visitor's browser. This cookie contains the data needed to rebuild a session if the original VID session has expired in Redis.


If a visitor returns after their VID session has expired (beyond the ~24-hour window), the ff_sr cookie allows FunnelFlux to reconstruct the entrance data and resume tracking. This is a backend recovery mechanism -- it does not extend the original session but can help re-establish context.


Where VID Appears

  • In URLs: As the vid query parameter (e.g., ?vid=abc123def456)
  • In cookies: Stored by FunnelFlux JavaScript
  • In the ff_sr cookie: Session recovery data
  • In reporting: Only on the raw events page, shown in the "Session ID" column
  • In tokens: Available as {visitor} in data passing, postback URLs, and other FunnelFlux configurations


VIDs are NOT available in aggregated reporting due to their high cardinality.


Hit ID

What It Is

A Hit ID is a unique identifier generated for every individual node touch within a funnel. While a VID identifies the visitor session, a Hit ID identifies a single, specific interaction with a node.


What Counts as a Hit

A hit is generated each time a visitor touches a node in the funnel. This includes:

  • Viewing a lander page
  • Viewing an offer page
  • Passing through a rotator node
  • Passing through a condition node


Important: A hit is per node touch, not per page view in the browser sense. If a page group contains multiple pages, the group node generates one hit when the visitor arrives (the selected page is served). The page group itself does NOT create an independent hit separate from the page it serves.


If the same visitor views the same page node twice (e.g., navigates back), a new hit ID is generated for each touch.


Key Characteristics

Property

Detail

Generated by

FunnelFlux on each node touch

Scope

Single node interaction

Expiry

Never -- stored permanently in the analytics database

Token

{hit}

Reporting availability

Raw events only (shown as "Hit ID")

Conversion eligibility

Offer hit IDs eligible for conversion end with h


Where Hit ID Appears

  • In data passing: Available as {hit} in offer URLs, lander URLs, and other data passing configurations
  • In postback URLs: Used to attribute conversions (e.g., https://track.example.com/pb/?hit=HIT_ID&rev=REVENUE)
  • In reporting: Only on the raw events page, shown in the "Hit ID" column
  • In visitor journeys: Hit IDs are what allow FunnelFlux to reconstruct the full node-tree of a visitor's journey through funnels


Hit IDs are NOT available in aggregated reporting due to their extremely high cardinality.


Hit ID vs VID for Conversion Tracking

Both identifiers can be used in postback URLs to attribute conversions, but they are fundamentally different in reliability and precision. The hit ID method is strongly recommended in all cases.


https://track.example.com/pb/?hit=HIT_ID&rev=REVENUE&tx=TRANSACTION_ID
  • Ties the conversion to a specific node touch (e.g., a specific offer view)
  • Only the hit ID is needed -- no additional parameters required to identify what to convert
  • Works indefinitely because hit IDs are stored permanently in the analytics database
  • No dependency on session expiry


This is the standard method used in virtually all postback-based conversion tracking setups. You pass {hit} as a sub-ID to the affiliate network or external system, and that system includes it in the postback URL when a conversion occurs.


https://track.example.com/pb/?vid=VISITOR_ID&p=PAGE_ID&rev=REVENUE&tx=TRANSACTION_ID
  • Ties the conversion to a visitor session, not a specific page view
  • Requires the p (page ID) parameter to identify which page/offer to convert. If omitted, FunnelFlux converts the most recent offer view for that visitor, which may not be the intended result.
  • Extremely transient -- limited by the ~24-hour VID session expiry. If the session has expired in Redis, the conversion cannot be attributed.
  • Not recommended in any circumstance


The VID method exists for edge cases but should be avoided. The hit ID method is more precise, more reliable, and does not expire.


Comparison Table

Factor

Hit ID

VID

Precision

Specific node touch

Session level

Expiry

Never (permanent)

~24 hours

Additional params needed

None

Page ID (p) recommended

Recommended

Yes

No

Token

{hit}

{visitor}

Typical use

Postback URLs, S2S tracking

Legacy/edge cases only


Using VID and Hit ID Tokens

The Hit Token

Use {hit} in data passing configurations to include the current hit ID in outbound URLs. This is most commonly used when passing a sub-ID to an affiliate network or offer source so that conversion postbacks can reference the correct hit.


Example offer URL data passing:

sub1={hit}&sub2={campaign}&sub3={external}

When FunnelFlux redirects to the offer, it replaces {hit} with the actual hit ID for that offer view.


The Visitor Token

Use {visitor} to include the current VID in outbound URLs. This is less commonly needed but can be useful for passing session identity to external systems (e.g., storing it in a CRM for later reference).


Example:

ff_vid={visitor}

Token Processing

These tokens are processed only by FunnelFlux at redirect time or when the JavaScript generates URLs. They are not understood by traffic sources, affiliate networks, or any external system. See the token paradigm documentation for the full explanation of how tokens flow between systems.


Conversion Tracking via JavaScript

When using JavaScript-based conversion tracking on a page you control, the VID and hit ID are handled as follows:


Basic JavaScript conversion call:

flux.track("conversion", { rev: "29.99", tx: "order_123" });

The JavaScript automatically resolves the visitor's session from the URL, referrer, or cookie. If a vid is available, it will be used to look up the session and attribute the conversion.


You can explicitly specify a hit ID in the JavaScript call for exact attribution, but this is uncommon in practice because the hit you want to convert is typically from the previous page (e.g., the offer view), not the current page (e.g., a thank-you page). If you have access to the hit ID from the previous page, a server-side GET request to the postback URL is usually simpler than injecting it into client-side JavaScript.


Where These IDs Appear in Reporting

Raw Events Page

Both VID and Hit ID are visible on the raw events page:

  • Hit ID column -- the unique identifier for each node touch
  • Session ID column -- the VID for that visitor's session


The raw events page is limited to 10,000 rows per query. This is the only place in reporting where these identifiers are surfaced.


Aggregated Reporting

Neither Hit IDs nor VIDs are available in aggregated reporting. Their cardinality is too high for performant aggregation queries. Aggregated reports group data by attributes like traffic source, campaign, country, device, funnel, and page -- not by individual visitor or hit.


Visitor Journey Reporting

The visitor journey reporting attribute uses hit IDs internally to reconstruct the full tree of nodes a visitor passed through in a session. While you do not interact with hit IDs directly in this view, they are the underlying mechanism that makes journey reconstruction possible.


Summary

  • A VID identifies a visitor session. It expires in approximately 24 hours, is maintained across pages via URL parameters, referrer, cookies, and JavaScript, and can be recovered via the ff_sr cookie mechanism.
  • A Hit ID identifies a single node touch. It is permanent, generated fresh on every node interaction, and is the recommended identifier for conversion tracking.
  • Always use the hit ID method ({hit} token) for conversion postbacks. The VID method is transient and unreliable.
  • Both identifiers appear only in raw event reporting, not in aggregated reports.

Updated on: 05/05/2026

Was this article helpful?

Share your feedback

Cancel

Thank you!