@mattab opened this Issue on December 18th 2010 Member

Currently Piwik offers a search engine report, a websites report and a campaign report.

It would be useful to have a report that would merge all this data into a single Referrer. This will help compare traffic from each source, for example visualize the importance of website referers VS google, or VS any active marketing campaign.

Implementation: this report could be built in PHP only, merging existing datatables for each referer type. This wouldn't add much overhead to the archiving process.

@mattab commented on December 16th 2012 Member

This ticket is for adding the new "All Referrers" report aggregating all other referrers reports into one.

I moved the other idea "Improve the Referrers Overview report" to its own ticket and added specification and my thoughts. See #3619

@mattab commented on January 14th 2013 Member

1) Extending Referer type to load the subtable: I'm curious to see code & UI for this but could be a good thing!

2) this ticket is something different though. it's key to have all referrers listed alongside each other "merged" in the report.

Should be merged the following: Direct entries + Keyword entries (aggregating all search engines per keywrods + Websites domains (aggregating all sub URLs) + Campaigns names.

This report table rows are not expandable to subdatatable. (I think this would be non trivial and is not that important). So if users see "facebook.com" bringing lots of Traffic overall he wont be able to click on facebook.com to open the subtable to see which pages exactly, but he can go to Referers>Websites to have the subtables there.

Sample report

Direct entries 156
KeywordX via search 154
KeywordY via search 120
Website.com 101
CampaignNameHere 98
KeywordZ 15
WebsiteBis.net 1
@mattab commented on January 14th 2013 Member
  • Data would be provided by a new API eg. Referers.getAll which would call getKeywords, getWebsites, getCampaigns, and getRefererType (for number of direct entries).
  • Note: when aggregating there is the trouble with "Others" row which is called "Others". When aggregating we wouldn't know if the "Others 556" refers to Other Keywords or Other Websites for exampe. Would be nice to append eg. "Others (Keywords)" when merging.
  • It should ideally work for simple + advanced data + goal data tables.

Any feedback?

@diosmosis commented on February 1st 2013 Member

(In [7830]) Fixes #1899, add report that merges all Referrer reports and modified Referrer overview report to support subtables for each referrer type.


  • modified VisualPHPUnit so Incomplete errors that come from missing expected files have 'Use Processed' link option.
  • fixed bug in VisualPHPUnit's 'Use Processed' link (a piwik-specific change).
  • Added ability to prepend/append HTML to labels in HTML datatable output by using html_label_prefix/html_label_suffix.
  • Fix bug in Piwik_DataTable_Array::mergeSubtables where keyName was not copied in new array.
@mattab commented on February 4th 2013 Member

In 1be181b792615a8e3cfe7418020805c30eb4f529: Refs #1899 adding metadata report for Mobile/Email reports

@mattab commented on February 4th 2013 Member

I notice Row Evolutoin is not working on the report. If it is easy to add support, let's do it, otherwise let's simply hide the Row Evolution icon for this report

@anonymous-matomo-user commented on February 4th 2013

In d482aea64018302952d3f5e7626e28a3df81ca7b: Fixes #1899, disable row actions for Referrers.getAll, since efficiently setting subtables for DataTable_Array children is nontrivial.

@diosmosis commented on February 4th 2013 Member

@matt, tried to think of an easy way of adding support, but to do it cleanly it would require either refactoring DataTable_Array (getting rid of, actually), adding a new function that visits each DataTable in a DataTable_Array structure and passes the indexes to a callback, or moving metadata from DataTable_Array to DataTable and allowing callbacks to be used in place of DataTable_Filter class names.

The quick way to fix it would be to add two more private functions to Referrers_API which seemed like a bit much for one API method.

@mattab commented on February 4th 2013 Member

+1 for disabled support. Getting rid of DataTable_Array would be useful, but maybe we keep that one for later as it's non trivial.

This Issue was closed on February 4th 2013
Powered by GitHub Issue Mirror