What are unclassified campaigns?
In Piano Analytics, we favor a tag-first approach, and marketing campaigns require a minimum of two properties to be correctly processed: src_medium and src_campaign.
If we collect src_campaign with an empty or missing src_medium property associated with it, the source will still be considered a marketing traffic source but classified as Unclassified Campaign. The source type is only defined by the property src_medium.
Why Unclassified Campaigns Happen
Unclassified campaigns typically occur when one of the required marketing source properties is not populated at collection time, most commonly:
src_campaignis present butsrc_mediumis empty or missing.The underlying URL parameters do not provide a medium value (for example,
utm_mediumis missing), sosrc_mediumcannot be derived or mapped.
Because src_medium determines the traffic source type, a missing src_medium prevents the campaign from being categorized into a specific medium-based classification.
How to Reduce Unclassified Campaigns
Ensure your tagging includes a medium
If you rely on UTM parameters, make sure campaign links consistently include a medium value (for example, utm_medium) so that src_medium can be populated.
Use a processing rule to populate src_medium when it is missing
If you have situations where utm_medium is not reliably present, you can use a processing rule to set src_medium based on another available parameter (such as utm_source) when src_medium is empty.
A common approach is:
Condition: if
src_mediumis empty andutm_mediumis empty andutm_sourceis not emptyAction: set
src_medium=utm_sourceOptional: apply a mapping table to replace
src_mediumwith a standardized value when a match is found (for example, converting partner-specific values into your internal medium taxonomy).
Important Notes
Processing rules are not retroactive. They only apply to events collected after the rule is created or updated. Existing data already collected as Unclassified Campaign will not be reprocessed automatically.
If you standardize or map values into
src_medium, ensure your mapping logic aligns with your reporting needs, sincesrc_mediumdrives the source classification.