Measure the effectiveness of your marketing campaigns. Measure up to five of your marketing campaigns channels: name, source, medium, keyword, content. Access all your campaign analytics reports into a unified interface and track the effectiveness of all your channels. Supports any kind of campaign and channel: Adwords, Facebook, Twitter, Youtube, Display advertising, Custom Marketing campaigns, Email newsletters.
To track a campaign, you add special URL parameters to your URLs.
The URL parameters are:
pk_campaign(campaign name such as mailing_2017_03 or Easter_Sale),
pk_source(campaign source such as google or facebook),
pk_medium(campaign medium such as email or cpc),
pk_cid(campaign ID code).
If you already have URLs tagged with Google Analytics parameters these are also supported:
For example if your Ad URL or landing page URL is
example.com/offer, you would track all clicks on this URL by
adding one or more of the parameters above:
In the Campaign reports by default Piwik will only archive the first 1000 rows (your 1000 most popular campaigns).
To report on all your campaigns you can configure Piwik so it does not truncate your data.
For example to keep the top 10,000 campaigns edit your
config/config.ini.php and add the following:
[General] datatable_archiving_maximum_rows_referrers = 10000 datatable_archiving_maximum_rows_subtable_referrers = 10000
It is possible to configure custom names for campaign parameters. In order to do so you have add config to config.ini.php file. If you configure any campaign parameter this configuration will overwrite default config for this parameter.
[MarketingCampaignsReporting] campaign_name = "pk_campaign,piwik_campaign,pk_cpn,utm_campaign" campaign_keyword = "pk_keyword,piwik_kwd,pk_kwd,utm_term" campaign_source = "pk_source,utm_source" campaign_medium = "pk_medium,utm_medium" campaign_content = "pk_content,utm_content" campaign_id = "pk_cid,utm_id"
For example, by default parameter
campaign_name track following parameters if they are found in URL:
'pk_campaign', 'piwik_campaign', 'pk_cpn', 'utm_campaign'. If you configure
campaign_name like this
campaign_name="pk_campaign,custom_name_parameter", then parameter
campaign_name will detect only presence of
custom_name_parameter in URL.
utm_campaign will be ignored until they are present in config.