Event Categories
Consent Events
Banner Interaction Events
Banner Display Event
`json
{
“event”: “consentbannerdisplay”,
“properties”: {
“banner_type”: “initial|revisit|customization”,
“triggerreason”: “pageload|scroll|exit_intent|manual”,
“geo_location”: “US|EU|BR”,
“language”: “en|es|fr”,
“timestamp”: “2024-01-15T10:30:00Z”
}
}
`
Banner Accept Event
`json
{
“event”: “consentbanneraccept”,
“properties”: {
“consent_categories”: [“essential”, “analytics”, “marketing”],
“acceptmethod”: “acceptall|customize_accept”,
“interaction_time”: 15,
“previous_consent”: false,
“geo_location”: “EU”,
“timestamp”: “2024-01-15T10:30:15Z”
}
}
`
Banner Reject Event
`json
{
“event”: “consentbannerreject”,
“properties”: {
“rejectmethod”: “rejectall|customize_reject”,
“interaction_time”: 8,
“rejected_categories”: [“analytics”, “marketing”],
“geo_location”: “US”,
“timestamp”: “2024-01-15T10:30:08Z”
}
}
`
Banner Customize Event
`json
{
“event”: “consentbannercustomize”,
“properties”: {
“customization_time”: 45,
“categories_viewed”: [“essential”, “analytics”, “marketing”, “preferences”],
“finaldecision”: “partialaccept”,
“geo_location”: “BR”,
“timestamp”: “2024-01-15T10:30:45Z”
}
}
`
Cookie Category Events
Category-Specific Consent
`json
{
“event”: “consentcategoryupdate”,
“properties”: {
“category”: “analytics”,
“action”: “granted|denied|withdrawn”,
“method”: “banner|preference_center|api”,
“previous_status”: “denied”,
“geo_location”: “EU”,
“timestamp”: “2024-01-15T10:31:00Z”
}
}
`
Bulk Category Updates
`json
{
“event”: “consentbulkupdate”,
“properties”: {
“categories_updated”: {
“analytics”: “granted”,
“marketing”: “denied”,
“preferences”: “granted”
},
“updatemethod”: “preferencecenter”,
“updatereason”: “userreview”,
“geo_location”: “US”,
“timestamp”: “2024-01-15T10:32:00Z”
}
}
`
Privacy Events
Policy Interaction Events
Privacy Policy View
`json
{
“event”: “privacypolicyview”,
“properties”: {
“policy_version”: “2.1”,
“viewsource”: “bannerlink|footerlink|directurl”,
“timeonpage”: 180,
“scroll_depth”: 85,
“sectionsviewed”: [“datacollection”, “user_rights”, “contact”],
“geo_location”: “EU”,
“timestamp”: “2024-01-15T10:35:00Z”
}
}
`
Cookie Policy Interaction
`json
{
“event”: “cookiepolicyinteraction”,
“properties”: {
“policy_version”: “1.3”,
“interaction_type”: “view|download|print”,
“categories_explored”: [“essential”, “analytics”, “marketing”],
“questionsasked”: [“whatarecookies”, “howto_manage”],
“geo_location”: “BR”,
“timestamp”: “2024-01-15T10:36:00Z”
}
}
`
DSR Portal Events
Portal Access Event
`json
{
“event”: “dsrportalaccess”,
“properties”: {
“accessmethod”: “directurl|bannerlink|emaillink”,
“user_type”: “new|returning”,
“session_duration”: 420,
“pagesviewed”: [“requestform”, “status_check”, “help”],
“geo_location”: “US”,
“timestamp”: “2024-01-15T10:40:00Z”
}
}
`
Request Submission Event
`json
{
“event”: “dsrrequestsubmitted”,
“properties”: {
“request_type”: “access|rectification|erasure|portability”,
“identity_method”: “email|sms|document”,
“request_complexity”: “simple|complex”,
“estimated_completion”: “24h|72h|30d”,
“geo_location”: “EU”,
“timestamp”: “2024-01-15T10:45:00Z”
}
}
`
Compliance Events
Accessibility Events
Accessibility Scan Event
`json
{
“event”: “accessibilityscancompleted”,
“properties”: {
“scan_type”: “automated|manual”,
“wcag_level”: “AA”,
“issues_found”: 12,
“issues_fixed”: 8,
“scan_duration”: 45,
“page_url”: “/products”,
“timestamp”: “2024-01-15T11:00:00Z”
}
}
`
Accessibility Improvement Event
`json
{
“event”: “accessibilityimprovementapplied”,
“properties”: {
“improvementtype”: “alttext|colorcontrast|keyboardnavigation”,
“auto_applied”: true,
“elements_affected”: 15,
“wcag_guideline”: “1.1.1”,
“page_url”: “/contact”,
“timestamp”: “2024-01-15T11:05:00Z”
}
}
`
Legal Document Events
Document Generation Event
`json
{
“event”: “legaldocumentgenerated”,
“properties”: {
“documenttype”: “privacypolicy|cookie_policy|terms”,
“generation_method”: “auto|manual”,
“customizations”: [“companyinfo”, “geoclauses”],
“export_format”: “pdf|html”,
“processing_time”: 3.2,
“timestamp”: “2024-01-15T11:10:00Z”
}
}
`
Document Publishing Event
`json
{
“event”: “legaldocumentpublished”,
“properties”: {
“documenttype”: “privacypolicy”,
“publishmethod”: “wordpresspage|direct_link”,
“previous_version”: “2.0”,
“new_version”: “2.1”,
“changes_summary”: “Updated GDPR clauses”,
“timestamp”: “2024-01-15T11:15:00Z”
}
}
`
User Journey Events
Page Interaction Events
Enhanced Page View
`json
{
“event”: “enhancedpageview”,
“properties”: {
“page_url”: “/privacy-policy”,
“page_title”: “Privacy Policy”,
“timeonpage”: 245,
“scroll_depth”: 92,
“consentstatus”: “fullconsent”,
“geo_location”: “EU”,
“device_type”: “desktop”,
“timestamp”: “2024-01-15T11:20:00Z”
}
}
`
Content Engagement Event
`json
{
“event”: “content_engagement”,
“properties”: {
“contenttype”: “privacypolicy|cookiebanner|dsrform”,
“engagement_type”: “read|interact|convert”,
“engagement_depth”: 78,
“time_spent”: 180,
“consent_impact”: true,
“geo_location”: “US”,
“timestamp”: “2024-01-15T11:25:00Z”
}
}
`
Conversion Events
Privacy-Aware Conversion
`json
{
“event”: “privacy_conversion”,
“properties”: {
“conversiontype”: “formsubmit|purchase|signup”,
“conversion_value”: 49.99,
“consentstatus”: “fullconsent”,
“privacytoolsused”: [“consentbanner”, “privacypolicy”],
“attribution_window”: “30d”,
“geo_location”: “BR”,
“timestamp”: “2024-01-15T11:30:00Z”
}
}
`
Goal Completion Event
`json
{
“event”: “privacygoalcompleted”,
“properties”: {
“goalname”: “privacypolicy_read”,
“goal_category”: “engagement”,
“goal_value”: 1,
“consent_required”: true,
“usersegment”: “gdprcompliant”,
“geo_location”: “EU”,
“timestamp”: “2024-01-15T11:35:00Z”
}
}
`
Event Structure Standards
Common Event Properties
Required Properties
`json
{
“eventid”: “uniqueevent_identifier”,
“timestamp”: “ISO8601timestamp”,
“userid”: “anonymizeduser_identifier”,
“sessionid”: “sessionidentifier”,
“geolocation”: “countrycode”,
“consentstatus”: “consentstate”
}
`
Optional Properties
`json
{
“useragent”: “browseruser_agent”,
“ipaddress”: “anonymizedip”,
“referrer”: “referring_url”,
“campaign”: “utm_campaign”,
“device_type”: “mobile|desktop|tablet”,
“browserlanguage”: “languagecode”
}
`
Event Naming Conventions
Naming Rules
- Use snake_case for event names
- Start with category prefix (consent, privacy, compliance_)
- Use descriptive, specific names
- Avoid abbreviations
- Keep names under 50 characters
- ✅
consentbanneraccept - ✅
privacypolicyview - ✅
dsrrequestsubmitted - ❌
cba(too abbreviated) - ❌
userdidsomething(too vague) - Use snake_case for property names
- Use descriptive names
- Include units in names when applicable (seconds, percentage)
- Use consistent data types
- Document all custom properties
- Map SLOS events to GA4 custom events
- Use custom parameters for additional data
- Set up conversion events for key actions
- Configure custom dimensions for segmentation
- Use Segment’s tracking methods
- Implement consent-aware destination filters
- Set up transformation functions
- Configure event forwarding rules
- Use Mixpanel’s event tracking
- Set up user profiles with consent data
- Create cohorts based on consent status
- Implement A/B testing for consent flows
- Use Facebook’s custom event tracking
- Set up consent-aware conversion tracking
- Create custom audiences based on consent
- Implement privacy-compliant retargeting
- Browser-based event capture
- Consent status validation
- Data anonymization
- Batch processing for efficiency
- Server-generated events
- API-based event submission
- Webhook event processing
- Real-time event streaming
- Immediate event validation
- Consent status checking
- Platform-specific formatting
- Real-time platform delivery
- Event aggregation
- Data enrichment
- Duplicate removal
- Batch platform delivery
- Data compression
- Index optimization
- Retention policies
- Archive strategies
- JSON schema validation
- Property type checking
- Required field validation
- Custom validation rules
- Duplicate event detection
- Outlier detection
- Data completeness checks
- Consent status validation
- Validity Rate: Percentage of valid events
- Completeness Score: Average property completeness
- Timeliness: Average processing delay
- Accuracy: Event data accuracy rate
- Real-time quality monitoring
- Alert system for quality issues
- Trend analysis for quality metrics
- Automated quality reports
- GA4 Debug: Use GA4 debug mode
- Segment Debug: Use Segment debugger
- Mixpanel Debug: Enable Mixpanel debug
- Facebook Debug: Use Facebook pixel helper
- Test end-to-end event flow
- Verify platform delivery
- Check data transformation
- Validate consent filtering
- Event batching for efficiency
- Asynchronous processing
- Caching strategies
- Compression techniques
- Processing Latency: Average event processing time
- Throughput: Events processed per second
- Error Rate: Failed event processing rate
- Resource Usage: CPU and memory usage
- Horizontal scaling
- Load balancing
- Queue management
- Auto-scaling rules
- CDN integration
- Regional processing
- Data localization
- Cross-region replication
- Event data encryption
- Secure transmission
- Access control
- Audit logging
- Data anonymization
- Consent validation
- Retention controls
- Deletion capabilities
- Lawful processing basis
- Data minimization
- Purpose limitation
- User rights implementation
- Data collection disclosure
- Opt-out processing
- Deletion rights
- Non-discrimination
- Overview
- Platform Setup
- Metrics & Reporting
- Privacy Compliance
Examples
Property Naming Conventions
Property Standards
Data Types
`json
{
“stringproperty”: “textvalue”,
“numeric_property”: 42,
“boolean_property”: true,
“array_property”: [“item1”, “item2”],
“object_property”: {“key”: “value”},
“timestamp_property”: “2024-01-15T10:30:00Z”
}
`
Platform-Specific Event Mapping
Google Analytics 4 Mapping
GA4 Event Structure
`javascript
gtag(‘event’, ‘consentbanneraccept’, {
‘consent_categories’: ‘essential,analytics’,
‘interaction_time’: 15,
‘geo_location’: ‘EU’,
‘customparameter1′: ‘value’
});
`
GA4 Custom Events
Segment Event Mapping
Segment Event Structure
`javascript
analytics.track(‘Consent Banner Accept’, {
consent_categories: [‘essential’, ‘analytics’],
interaction_time: 15,
geo_location: ‘EU’
});
`
Segment Integration
Mixpanel Event Mapping
Mixpanel Event Structure
`javascript
mixpanel.track(‘Consent Banner Accept’, {
‘Consent Categories’: [‘essential’, ‘analytics’],
‘Interaction Time’: 15,
‘Geo Location’: ‘EU’
});
`
Mixpanel Features
Facebook Pixel Event Mapping
Facebook Event Structure
`javascript
fbq(‘track’, ‘ConsentGiven’, {
content_name: ‘Privacy Consent’,
content_category: ‘Privacy’,
consent_categories: [‘essential’, ‘analytics’]
});
`
Facebook Custom Events
Event Processing Pipeline
Event Collection
Client-Side Collection
Server-Side Collection
Event Processing
Real-Time Processing
Batch Processing
Event Storage
Event Storage Structure
`json
{
“event_id”: “uuid”,
“eventtype”: “consentbanner_accept”,
“userid”: “anonymizedid”,
“properties”: {},
“context”: {},
“timestamp”: “2024-01-15T10:30:00Z”,
“platform_data”: {
“ga4”: “sent”,
“segment”: “sent”,
“mixpanel”: “queued”
}
}
`
Storage Optimization
Event Validation and Quality
Event Validation
Schema Validation
Data Quality Checks
Quality Metrics
Event Quality Metrics
Monitoring Dashboards
Event Debugging and Testing
Debug Mode
Development Debug
`javascript
// Enable debug logging
window.SLOS_DEBUG = true;
// Log all events
window.SLOS_EVENTS = [];
// Console output for events
console.log(‘SLOS Event:’, eventName, properties);
`
Platform Debug Tools
Testing Framework
Event Testing
`javascript
// Test event firing
slosAnalytics.track(‘test_event’, {
testproperty: ‘testvalue’
});
// Verify event in platform
// Check console logs
// Validate data accuracy
`
Integration Testing
Performance Considerations
Event Processing Performance
Optimization Techniques
Performance Metrics
Scalability Considerations
High Volume Handling
Global Distribution
Security and Privacy
Event Security
Data Protection
Privacy Protection
Compliance Considerations
GDPR Compliance
CCPA Compliance
Related Documentation
Share this article
Still need help?
Our support team is ready to assist you with personalized guidance for your workspace.