UTM Analytics

Track and analyze marketing campaign performance with UTM parameters

UTM Analytics

Track and analyze marketing campaign performance with automatically collected UTM parameters. Appizer automatically captures UTM parameters from user sessions and stores them with event data for comprehensive campaign attribution analysis.

Overview

UTM (Urchin Tracking Module) parameters are standard URL parameters used to track marketing campaign effectiveness. Appizer's Web SDK automatically captures these parameters when users visit your website, allowing you to analyze campaign performance alongside user behavior analytics.

Supported UTM Parameters

ParameterDescriptionExample
utm_sourceTraffic source (where users come from)google, facebook, newsletter
utm_mediumMarketing medium (how users arrive)cpc, organic, email, social
utm_campaignSpecific campaign namesummer_sale, product_launch
utm_termSearch terms or keywordsrunning_shoes, winter_coat
utm_contentSpecific content variant (A/B testing)button_a, headline_v2

Automatic Collection

The Appizer Web SDK automatically:

  1. Extracts UTM parameters from landing page URLs
  2. Persists parameters across session for consistent attribution
  3. Stores with events in the utm property field
  4. Maintains session-level attribution for 24 hours

Collection Process

// Example URL with UTM parameters
https://yourapp.com/signup?utm_source=google&utm_medium=cpc&utm_campaign=summer_sale&utm_term=running_shoes

// Automatically captured and stored with events
{
  "event_name": "page_view",
  "properties": {
    "url": "https://yourapp.com/signup",
    "utm": {
      "source": "google",
      "medium": "cpc", 
      "campaign": "summer_sale",
      "term": "running_shoes"
    }
  }
}

Query Examples

Campaign Performance Analysis

Question: "Show me the performance of my summer_sale campaign"

{
  "name": "get_event_analytics",
  "arguments": {
    "app_id": "your-app-id",
    "event_name": "purchase_completed",
    "property_breakdown": "utm.campaign",
    "geographic_breakdown": true,
    "device_breakdown": true
  }
}

Response:

{
  "property_breakdown": {
    "utm.campaign": {
      "summer_sale": {
        "count": 450,
        "percentage": 0.34
      },
      "product_launch": {
        "count": 320,
        "percentage": 0.24
      },
      "null": {
        "count": 560,
        "percentage": 0.42
      }
    }
  },
  "geographic_breakdown": {
    "country": {
      "US": { "count": 280, "percentage": 0.62 },
      "UK": { "count": 90, "percentage": 0.20 }
    }
  }
}

Traffic Source Analysis

Question: "Which traffic sources drive the most conversions?"

{
  "name": "query_events",
  "arguments": {
    "app_id": "your-app-id",
    "event_name": "signup_completed",
    "properties_filter": {
      "utm": {
        "source": "google"
      }
    },
    "limit": 100
  }
}

Medium Performance Comparison

Question: "Compare performance between paid and organic traffic"

{
  "name": "get_event_analytics",
  "arguments": {
    "app_id": "your-app-id",
    "event_name": "purchase_completed",
    "group_by": "utm.medium",
    "geographic_breakdown": true,
    "device_breakdown": true
  }
}

Multi-Dimensional Campaign Analysis

Question: "Show me campaign performance by device type and country"

{
  "name": "get_event_analytics",
  "arguments": {
    "app_id": "your-app-id",
    "event_name": "purchase_completed",
    "property_breakdown": "utm.campaign",
    "combined_breakdowns": ["country_device_type"],
    "geographic_breakdown": true
  }
}

Advanced Analytics Use Cases

1. Campaign ROI Analysis

Track conversion rates and revenue by campaign:

{
  "name": "get_event_analytics",
  "arguments": {
    "app_id": "your-app-id",
    "event_name": "purchase_completed",
    "property_breakdown": "utm.campaign",
    "group_by": "day",
    "start_date": "2026-01-01T00:00:00Z",
    "end_date": "2026-01-31T23:59:59Z"
  }
}

2. Geographic Campaign Performance

Analyze which campaigns perform best in different regions:

{
  "name": "get_event_analytics",
  "arguments": {
    "app_id": "your-app-id",
    "event_name": "signup_completed",
    "combined_breakdowns": ["country_device_type"],
    "property_breakdown": "utm.source"
  }
}

3. Device-Specific Campaign Optimization

Understand which campaigns work best on which devices:

{
  "name": "get_event_analytics",
  "arguments": {
    "app_id": "your-app-id",
    "event_name": "purchase_completed",
    "device_breakdown": true,
    "property_breakdown": "utm.medium"
  }
}

4. Content Performance (A/B Testing)

Compare different content variants:

{
  "name": "get_event_analytics",
  "arguments": {
    "app_id": "your-app-id",
    "event_name": "button_click",
    "property_breakdown": "utm.content",
    "group_by": "hour"
  }
}

Integration with Event Analytics

UTM parameters are automatically included in all event analytics and can be combined with:

  • Geographic data to analyze regional campaign performance
  • Device analytics to optimize platform-specific campaigns
  • Time series analysis to track campaign performance over time
  • Funnel analysis to understand conversion paths by campaign

Best Practices

1. Consistent Naming

Use consistent, descriptive names for campaigns:

# Good examples
utm_campaign=winter_sale_2026
utm_campaign=new_user_onboarding
utm_campaign=product_launch_v2

# Avoid
utm_campaign=campaign1
utm_campaign=test
utm_campaign=xyz

2. Source and Medium Standards

Follow standard conventions for source and medium:

# Sources
utm_source=google
utm_source=facebook
utm_source=newsletter
utm_source=direct

# Mediums  
utm_medium=cpc
utm_medium=organic
utm_medium=email
utm_medium=social
utm_medium=referral

3. Content Testing

Use utm_content for A/B testing:

utm_content=blue_button
utm_content=red_button
utm_content=headline_v1
utm_content=headline_v2

4. Campaign Structuring

Structure campaigns hierarchically:

# Structure: category_specific_variant
utm_campaign=sale_summer_2026
utm_campaign=onboarding_email_v2
utm_campaign=retargeting_facebook_q1

Data Retention

  • Session persistence: UTM parameters persist for 24 hours
  • Event storage: Parameters stored with all events during session
  • Attribution window: First touch attribution within session
  • Privacy compliance: Parameters treated as analytics data, not PII

Troubleshooting

UTM Parameters Not Showing

  1. Check URL format: Ensure parameters are properly encoded
  2. Verify SDK integration: Confirm Web SDK is properly installed
  3. Check timing: Parameters captured on page load, not mid-session

Inconsistent Attribution

  1. Session timeout: Parameters reset after 24 hours
  2. Multiple sources: First touch attribution — first source is credited
  3. Cross-device: Different devices have separate sessions

Data Quality Issues

  1. Parameter validation: SDK validates and sanitizes UTM parameters
  2. Case sensitivity: Parameters are case-sensitive
  3. Special characters: URL encoding handled automatically

Support

Need help with UTM analytics? Contact us at support@appizer.com or check our GitHub discussions.