Skip to main content
This page explains the User Profile data model — what a profile contains and how it’s built. For the SDK methods used to set and update profile properties, see the People SDK Reference.

Overview

A user profile in Cryptique is the unified record for a single person. It aggregates three streams of data: off-chain behavioral events, connected wallet addresses, and on-chain transactions. Every profile is keyed on a distinct_id.

Profile Structure

How Profiles Are Created

Step 1 — Anonymous profile

When a user first visits your site, Cryptique creates an anonymous profile with a generated distinct_id (e.g. anon_abc123). This profile immediately starts accumulating behavioral events.

Step 2 — Identity resolution

When you call Cryptique.identify('your_user_id'), the anonymous profile is merged into (or converted to) an identified profile keyed on your ID. See the Identify SDK Reference for full merge behavior.

Step 3 — Property enrichment

Profile properties are added from these sources: Groups (companies, workspaces, etc.) are modeled separately from the user profile: you assign the user with set_group and set entity-level properties with get_group(key, id).set(...).

Wallet Enrichment

Once a wallet address is linked to a profile, Cryptique automatically queries the blockchain and adds the following properties: Enrichment runs automatically — no additional SDK calls are required. Data covers all 35+ supported chains.

Profile Timeline

In the dashboard, each profile displays a unified timeline of all off-chain events and on-chain transactions:

Searching Profiles

Find any profile by:
  • distinct_id — direct lookup
  • wallet_address — finds any profile with that wallet linked
  • email — if set via identify() or people.set()
  • Any custom property — e.g. plan = 'enterprise'

Profile Properties vs Event Properties

Privacy

Wallet addresses are stored as-is and are pseudonymous — they are not inherently linked to a real-world identity unless the user explicitly provides identifying information (e.g. via identify() with an email). See Privacy & Compliance for full details on how wallet data is handled.

Next Steps

People SDK Reference

Set and manage profile properties

Groups

Companies, teams, and group profiles

Wallet Methods

Link wallet addresses to profiles