Docs

Key Concepts

Core terminology and how the pieces fit together

Last updated:

Property

A property represents a website or domain you track. Each property has its own sessions, heatmaps, goals, segments, and feature flags. You can have multiple properties under one account (e.g., marketing site, app, docs).

You manage properties from the Properties page. A localhost property is created automatically for development.

Session

A single visit to your site by one visitor. A session starts when the SDK initializes and ends when the visitor leaves or the tab closes. Each session records DOM state, interactions, and navigation as a stream of events that can be replayed.

Visitor

An anonymous user tracked across sessions by a persistent visitorId stored in the browser. The same person visiting your site three times creates three sessions but one visitor. Visitors can be identified with a user ID and custom properties.

Visitor Profile

An aggregated record for each visitor containing their device, browser, location, session count, total duration, and any custom properties you set via identify(). Profiles are used for segmentation.

Segment

A group of visitors defined by rules (e.g., “plan is pro AND country is US”) or a static list of visitor IDs. Segments filter data across the dashboard: sessions, heatmaps, form analytics, and funnel views. They can also be used for feature flag targeting.

Goal

A measurable target you want to track (e.g., “100 signups this week”). Goals are created in the dashboard and incremented from your server using the Goals SDK. Each goal has a kind: count (each call = 1 conversion) or revenue (USD, where amount is summed into progress). Kind is set at creation and is immutable.

Feature Flag

A toggle that controls which users see a feature. Flags are configured per environment (development, staging, production) with optional targeting rules. Evaluated server-side using the Flags SDK.

Split Test

An experiment that compares two or more variations of a page element to see which performs better. Split tests support three types: ID (component branching), text (copy testing), and JSON (structured data). Visitors are deterministically assigned to a variation so they always see the same one. Managed via the Split Testing SDK.

Feedback

Structured user feedback collected via the Feedback SDK. Feedback types are configured in the dashboard with pre-defined options (e.g., star ratings, sentiment). Supports optional free-text messages and metadata.

API Keys

Two types of keys authenticate your integrations:

  • Public key (sessionsight_pub_...): used by the Insights and Split Testing SDKs in the browser. Safe to include in client-side code.
  • Secret key (sessionsight_sec_...): used by the Goals, Flags, and Feedback SDKs on your server. Never expose in client-side code.

Manage keys from the API Keys page.

Environment

A deployment stage for feature flags (e.g., development, staging, production). Each flag can have different configurations per environment, letting you roll out features gradually.