TrustData uses a hierarchical structure: Organizations contain Properties, and Properties contain Attribution IDs (data streams).
Organization (your company or client)
│
└── Property (a logical user base)
│
├── Attribution ID (website stream)
├── Attribution ID (another website stream)
└── Attribution ID (app stream)
An Organization is the top-level container in TrustData.
Typical setups:
A Property represents a logical user base—a set of users you want to analyze together.
When to use one property:
When to use multiple attribution IDs under one property:
An Attribution ID identifies a specific data stream—a source of event data like a website or app.
Example:
Organization: Acme Corp
│
└── Property: Acme Store (all Acme users)
│
├── Attribution ID: acme-web (acme.com)
├── Attribution ID: acme-uk (acme.co.uk)
└── Attribution ID: acme-app (iOS/Android)
For small businesses, you'll typically have one organization, one property, and one attribution ID.
TrustData assigns identifiers to track visitors across sessions:
| Identifier | Scope | Purpose |
|---|---|---|
| Visitor ID | Persistent (local storage) | Tracks the same visitor across sessions |
| Session ID | Single session | Groups events within one visit |
| User ID | Authenticated (optional) | Links to your user database |
When a visitor returns, TrustData recognizes them via the visitor ID and connects their full journey.
When a user clicks an ad, the ad platform appends a click ID to the URL:
| Platform | Parameter |
|---|---|
| Google Ads | gclid |
| Meta Ads | fbclid |
| TikTok Ads | ttclid |
| Microsoft Ads | msclkid |
TrustData automatically captures these click IDs and stores them with the visitor. When a conversion occurs, TrustData matches it back to the original click for attribution.
A Data Source is a connection to an external platform:
| Type | Examples | Data Synced |
|---|---|---|
| Advertising | Google Ads, Meta Ads, TikTok Ads | Campaigns, spend, clicks, impressions |
| E-commerce | Shopify | Orders, revenue, products |
| Custom | Webhooks, API | Any structured data |
Data sources belong to a property and sync automatically on a daily schedule.
Events are user interactions tracked by the SDK:
// Pageview (automatic)
// Tracked automatically when sendPageView: true
// Custom event
trustdata.push(['event', 'add_to_cart', {
product_id: 'SKU123',
value: 49.99
}]);
// Conversion event
trustdata.push(['event', 'purchase', {
order_id: 'ORD-456',
value: 149.99,
currency: 'USD'
}]);
Events are stored in ClickHouse and associated with the attribution ID they came from.
TrustData uses Data-Driven attribution by default:
Unlike simple models (last-click, first-click), Data-Driven attribution:
Example: Customer sees a Meta ad, then clicks a Google ad, then converts:
| Model | Meta Credit | Google Credit |
|---|---|---|
| Last-click | 0% | 100% |
| First-click | 100% | 0% |
| Linear | 50% | 50% |
| Data-Driven | 35% | 65% |
Data-Driven attribution accounts for the incremental value each touchpoint adds.
The attribution window defines how far back to look for touchpoints:
| Window | Use Case |
|---|---|
| 7 days | Impulse purchases, low-cost items |
| 30 days | Standard e-commerce (default) |
| 90 days | High-consideration purchases, B2B |
Configure this per property in Settings → Attribution.
TrustData tracks a 4-level consent model:
| Level | Purpose |
|---|---|
| Analytics | Basic analytics and performance measurement |
| Advertising | Ad targeting and conversion tracking |
| Preferences | Personalization and saved settings |
| Sale of Data | Third-party data sharing (CCPA) |
You can see consent acceptance rates for each level in the dashboard.