Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Internal Campaigns to attribute conversions and revenue to banners, pages, internal search results, etc. #2669

Open
mattab opened this issue Sep 17, 2011 · 0 comments
Labels
Enhancement For new feature suggestions that enhance Matomo's capabilities or add a new report, new API etc.

Comments

@mattab
Copy link
Member

mattab commented Sep 17, 2011

In Piwik, when there is a Goal conversion of Ecommerce purchase, we attribute the conversion to a Referrer (campaign, website, search engine). The goal of this ticket is to be able to attribute conversions to Internal Campaigns as well as external Referrers.

For example if on a website there are several banner ads linking to Internal pages, we would like to know how much each of those banner ads clicks contributed to conversions. This would tell us which banner ads are most used / clicked before conversions and therefore which banner ads contribute most to conversions.

Tasks

  • Create new plugin InternalCampaign
    • possibly in Marketplace, disabled by default,
  • Tracker:
    • new field to keep track of the internal campaign: internal_attribution_idaction_url_1, internal_attribution_idaction_name_1, internal_attribution_idaction_time_1
    • in order to attribute multiple such internal campaigns, we would create several such fields eg. internal_attribution_idaction_name_2, internal_attribution_idaction_name_2, internal_attribution_idaction_time_2, etc.
    • note: in case a given action is used twice in a row, we would only store it once in an any internal_campaign (to prevent page reloads from registering internal campaigns multiple times).
    • piwik.js: new function to force the current pageview/action as an Internal Campaign, eg. setAsInternalCampaign
    • also allow a way to track internal campaign via a new parameter? eg. pk_ic=internal campaign name (piwik internal campaign)
  • UI: New admin setting screen
    • let user enable/disable Internal Campaign attribution for each website.
    • let user customise which action apply as internal campaign, for each website. Similar to how Goals are defined. User could choose that Internal Campaigns apply to an action matching a given Page URL, action matching given Event, matching given page Name, Download, Outlink or even Banner click (in Content Tracking, Banner tracking: track impressions, Clicks on any piece of content #4996).
    • let user customise attribution model used for each website (see section below for more info)
    • let user customise default attribution model to use
  • Reporting
    • In each Goal Report, and in Goal > Overview, and in Ecommerce > Overview, below View goals by Referrers add a new section View goals by Internal Campaign.
    • This lists the internal campaigns used to convert given goal
    • List for each internal campaign: Label, Conversions, Conversion rate, Revenue.
    • Label should include most information about given action type as per example above
      • eg. $actionName [$eventCategory] [$eventAction] ($actionType)
    • Note: we do not show expandable action tree, but only flattened tree. In order to display eg. only a given action type, or only a given event category, then user can search for this string in the search bar (eg. search for View Movie will display in the internal campaigns report the events with $eventAction = View Movie). It's kind of a workaround, but I think displaying expendable action tree will be more complicated.

For example:

My product name (Site search) - 10 conversions, 1%, $15
My banner name (Content piece click) - 5 conversions, 5%, $50
Matrix - View Movie (Event) -  3 conversions, 1%, $10

  • Aggregation
    • When running archiving for InternalCampaign plugin, we query log_conversion table and select all fields internal_attribution_idaction_name_$X with a JOIN to link_action in order to know which internal actions have been used prior to the conversion.
    • important: see section below for attribution model.
    • Store the new blob report.

Other tasks:

  • Unit tests and system tests
  • User guide for the feature
  • New FAQ

Internal campaign attribution model

By default, the Last internal campaign click will be credited with 100% of the conversion.

To provide attribution to multiple internal campaigns then additional is required, similar to what is described in this issue: #6064. in particular we could implement the following attribution models:

  • Linear Model - The Linear model gives equal credit to each internal campaign interaction on the way to conversion.
  • Time Decay model - This model is based on the concept of exponential decay and most heavily credits the internal campaign touchpoints that occurred nearest to the time of conversion.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Enhancement For new feature suggestions that enhance Matomo's capabilities or add a new report, new API etc.
Projects
None yet
Development

No branches or pull requests

1 participant