Skip to main content

Overview

This page defines the core vocabulary used throughout Cryptique’s documentation. Where relevant, each term is mapped to its equivalent in Mixpanel or Amplitude.

distinct_id

The primary identifier for a user in Cryptique. Every user — anonymous or identified — has one.
  • Anonymous users: Cryptique auto-generates a distinct_id (e.g. anon_abc123xyz) on first visit, stored in a first-party cookie (cq_distinct_id).
  • Identified users: When you call Cryptique.identify('your_id'), the anonymous distinct_id is replaced with the ID you supply (typically your database user ID or UUID).
distinct_id is always developer-controlled after identification — Cryptique never reassigns it.

user_identity_id

An internal UUID assigned by Cryptique to each profile record. Unlike distinct_id (which you control), user_identity_id is system-generated and stable across merges. You will see it in raw data exports; you do not need to set or reference it in your SDK calls.

identify()

The SDK method that links an anonymous session to a known user. Call it once per session, at login or signup.
Merge behavior:
  • If the ID has never been seen: the current anonymous profile is converted to an identified profile.
  • If the ID has been seen on the same device: sessions merge seamlessly.
  • If the ID has been seen on a different device or session: the CQ Intelligence merge engine unifies the profiles automatically.

CQ Intelligence merge engine

Cryptique’s internal system for unifying profiles that belong to the same real user across devices, sessions, and wallets. Merge is triggered when:
  • The same identify() ID is called across two different sessions or devices.
  • The same wallet address is connected on two different profiles.
When a merge occurs, event history, profile properties, and wallet links from both profiles are combined into a single unified profile. The merge is automatic — no SDK calls required beyond standard identify() and walletAddress() usage.

auto-events

Behavioral events the SDK sends without Cryptique.track(), using the same pipeline as custom events. They are off unless you set auto-events="true" on the script tag or call Cryptique.enableAutoEvents(). Examples of event names (not exhaustive): Disable names or paths via script attributes or Cryptique.disableAutoEvent(). See Auto-Events.

groups

Group membership ties the current user to entities you label with a group key (e.g. company) and group ID (e.g. acme-inc). Group profiles store properties for that pair. There is no Cryptique.group namespace — APIs are on the root object. See Groups.

wallet enrichment

The automatic process by which Cryptique adds on-chain properties to a user profile once a wallet address is linked. No extra SDK calls are needed. Properties added automatically: Enrichment covers all 35+ chains supported by Cryptique. There is no equivalent concept in Mixpanel or Amplitude (off-chain-only tools).

people methods

The Cryptique.people.* namespace contains methods for setting and managing persistent user profile properties. Unlike event properties (which are attached to a single event), people properties are stored on the profile and persist across sessions. See the People SDK Reference for full usage.

trackCharge()

Records a revenue or payment event against a user profile. Useful for tracking subscription payments, NFT purchases, or any monetization event.

transactions

On-chain events generated from your indexed smart contracts. Unlike behavioral events (which you track via the SDK), transactions are captured automatically once you add a contract in Settings → Contracts. Transactions are linked to user profiles via the wallet address — if the wallet that executed a transaction is connected to a Cryptique profile, the transaction appears in that profile’s timeline. See Transactions for details.

session

A period of continuous activity by a user. A new session begins when:
  • A user visits the site for the first time.
  • More than 30 minutes have elapsed since their last event.
Sessions are tracked via the cq_session_id first-party cookie (30-minute expiry).

Next Steps

User Profile Data Model

How profiles are structured

Implementation Guide

End-to-end implementation patterns