Analytics Implementation
Trezor Suite implements privacy-respecting analytics to understand how users interact with the application and identify areas for improvement.Overview
Analytics in Suite:Opt-In Only
User must explicitly consent
No Sensitive Data
Never track private keys, balances, or transactions
Anonymous
No personally identifiable information
Transparent
Clear about what’s tracked
Data Collection
What gets tracked (with consent):User Interactions
Application Events
System Information
What’s NOT Tracked
Analytics Architecture
Package Structure
- suite-common/analytics
- suite/analytics
- suite-native/analytics
Shared analytics definitions
Event Definition
Standardized event structure:Event Type Enum
Centralized event types:Reporting Events
useAnalytics Hook
In Redux Thunks
Access via extra argument:Automatic Events
Some events tracked automatically:Data Destinations
AWS S3 Logging
Primary analytics backend:Request Format
HTTPS POST with query params:Privacy Protection
IP Address Handling
AWS can see IP addresses in logs, but:
- Trezor does NOT track or store IPs
- IPs automatically removed from logs
- Enable Tor to mask IP from third parties
Anonymization
Data anonymized before sending:Consent Management
Strict opt-in:Initialization
Analytics setup:Instance ID
Persistent anonymous identifier:Session ID
Temporary session identifier:Verification
DevTools Network Tab
Inspect analytics requests:- Open DevTools → Network tab
- Filter by
.log - Click request
- View Query String Parameters
Console Logging
Enable in Debug Settings:Custom URL
Point to your own server:Data Retention
Error Data
Error Data
90 daysError-related analytics kept for 90 days to identify and fix issues.
Performance Data
Performance Data
Longer retentionPerformance metrics may be stored longer for trend analysis.
Deletion
Deletion
AutomaticData automatically deleted after retention period. No archiving.
Access Control
Limited data access:- Development team
- Security team
- IT team
- Need-to-know basis
- Regular access reviews
- Two-factor authentication
- Strong passwords
Best Practices
For Users
- Review what’s tracked in Settings
- Enable/disable anytime
- Use Tor for extra privacy
- Submit feedback on privacy concerns
For Developers
- Check consent before tracking
- Never log sensitive data
- Anonymize all identifiers
- Add changelog entries
- Test with console logging