Filter: wpd_ai_valid_reporting_utm_keys

Filter the list of valid UTM keys that Alpha Insights recognizes for reporting. This allows you to add custom tracking parameters or modify the default list.

Description

Alpha Insights maintains a list of valid UTM keys that are recognized for reporting. This filter allows you to add custom tracking parameters, remove default keys, or modify the entire list to match your tracking needs.

Location

File: includes/functions/wpd-report-functions.php

Function: wpd_get_valid_reporting_utm_keys()

Line: ~181

Parameters

Parameter Type Description
$valid_utm_keys array Array of valid UTM key strings (default: standard UTM keys plus common alternatives)

Return

Type: array

Description: Modified array of valid UTM key strings

Default Valid Keys

Alpha Insights recognizes these UTM keys by default:

Example Usage

Add Custom Tracking Keys

add_filter( 'wpd_ai_valid_reporting_utm_keys', 'add_custom_tracking_keys' );
function add_custom_tracking_keys( $valid_utm_keys ) {
    // Add custom tracking parameters
    $custom_keys = array( 'affiliate_id', 'partner_id', 'promo_code', 'referrer_id' );
    return array_merge( $valid_utm_keys, $custom_keys );
}

Remove Specific Keys

add_filter( 'wpd_ai_valid_reporting_utm_keys', 'remove_specific_keys' );
function remove_specific_keys( $valid_utm_keys ) {
    // Remove keys you don't want to track
    $keys_to_remove = array( 's', 'search' );
    return array_diff( $valid_utm_keys, $keys_to_remove );
}

Replace Entire List

add_filter( 'wpd_ai_valid_reporting_utm_keys', 'replace_utm_keys_list' );
function replace_utm_keys_list( $valid_utm_keys ) {
    // Use only standard UTM parameters
    return array(
        'utm_source',
        'utm_medium',
        'utm_campaign',
        'utm_content',
        'utm_term',
        'utm_id'
    );
}

Add Platform-Specific Keys

add_filter( 'wpd_ai_valid_reporting_utm_keys', 'add_platform_keys' );
function add_platform_keys( $valid_utm_keys ) {
    // Add keys for specific advertising platforms
    $platform_keys = array(
        'fbclid',      // Facebook Click ID
        'gclid',       // Google Click ID
        'msclkid',     // Microsoft Click ID
        'ttclid',      // TikTok Click ID
        'twclid'       // Twitter Click ID
    );
    return array_merge( $valid_utm_keys, $platform_keys );
}

Conditional Keys Based on Environment

add_filter( 'wpd_ai_valid_reporting_utm_keys', 'conditional_utm_keys' );
function conditional_utm_keys( $valid_utm_keys ) {
    // Add debug keys only in development
    if ( defined( 'WP_ENVIRONMENT_TYPE' ) && WP_ENVIRONMENT_TYPE === 'development' ) {
        $valid_utm_keys[] = 'debug_key';
        $valid_utm_keys[] = 'test_campaign';
    }
    return $valid_utm_keys;
}

Best Practices

Important Notes

Key Naming Conventions

Recommended key naming:

Related Filters

Related Functions

Debugging

add_filter( 'wpd_ai_valid_reporting_utm_keys', 'debug_utm_keys_list', 999 );
function debug_utm_keys_list( $valid_utm_keys ) {
    error_log( 'Alpha Insights Valid UTM Keys: ' . implode( ', ', $valid_utm_keys ) );
    return $valid_utm_keys;
}