Activate percentge column

Is there a way to activate a column in the data tables like percentage or rate?

I didn’t find this in any documentation or settings file/page. Its a very basic thing to understand the data. Wihtout this information some numbers tell me almost nothing.

Or is this not implemented yet? Is there a plan for this? Does I have to post this as a feature suggestion?


What data are you trying to get? A percentage is just a formula applied to 2 data points. eg 80 unique visitors and 100 total visitors = 80% of users are unique.

There are tons of places there percentage column makes sense. Think of:

  • Pages: x% of unique visitors visited this page
  • Search engine: x% of all visitors (coming from a SE) came from SE y
  • nearly all setting tables. especially: x% (of all unique visitors) using browser/browser family y

So in all tables there the piechart makes sense.

Think of the “Plugins” chart: the piechart doesn’t bring any benefit to me there. However there should be at least an info in the vertical bar graph about the percentage of people using each plugin.

Don’t you think this is essential? Or at least really helpful? I think this is a basic feature other statistic software provides.

I started to look at Piwik several day ago and the first thing I am really missing is percentage values - absolute values alone are not enough. The real use of statistics lies in comparison. The only value I see is bounce rate. You could look at phpMyVisites reports for the start.

Also another thing is missing - total values. Take for example ‘Actions > Pages’ report. How many total of pages? How many percentage of this total was concrete page or page group?

And those two things are missing all over.

Also no possibility for deep / broad analysis. Take ‘Visitor browsers’ - widget show only 5 on one page. What if I have to see all of them or at least 100 in one page? The only option is to export data, but IMHO this should be inside Piwik, say clicking the title bar of widget brings ‘normal’ page where user could see all the data or set entries per page.

Also widgets could be configure of how any entries they show.

Also would be nice to have clicktrough ability or at least the (first) referer of the visit (the data is already recorded in database):

Keywords: what concrete pages user landed with that keyword.
Outbound: what concrete page user was on when he clicked away.

and so on.


Piwik is open source. If you have an itch to scratch, submit a patch.

You could apply the ColumnCallbackAddcolumnPercentage filter. You will need to pass in the total value on which the percentage is to be calculated.
$dataTable->queueFilter(‘ColumnCallbackAddColumnPercentage’ , array(‘nb_visits’,‘nb_visits_percentage’, $total_nb_visits, 1));

Remember to also add the column ‘nb_visits_percentage’ to the array of columns to display in your controller.
$view->setColumnsToDisplay(array(‘nb_visits’, nb_visits_percentage’));


Hi Raj,

For the non-technical among us could you explain where to input all that style_emoticons/<#EMO_DIR#>/ohmy.gif

Hi John,

Lets take the plugin UserSettings for example. If you need to dispaly the percentage for browser, you need to add
$dataTable->queueFilter(‘ColumnCallbackAddColumnPercentage’ , array(‘nb_visits’,‘nb_visits_percentage’, $total_nb_visits, 1));
in your API.php (in the function getBrowser) for the UserSettings plugin. This will calculate the percentage for each row in the browser table.

Remember to also add the column ‘nb_visits_percentage’ to the array of columns to display in your UserSettings controller in the function getBrowser().
$view->setColumnsToDisplay(array(‘nb_visits’, nb_visits_percentage’));
This change is to display the column. Your API function might be calculating the percentage, but it will not show up until you change your controller to show the percentage column.

Of course all this if you have the piwik source code downloaded and if you can make the change in the source code.