Opened 5 years ago

Closed 4 years ago

Last modified 4 years ago

#774 closed New feature (fixed)

Finish the Goal Tracking plugin

Reported by: matt Owned by:
Priority: critical Milestone: Piwik 0.6.3
Component: Core Keywords:
Cc: Sensitive: no

Description (last modified by matt)

UPDATE: Goal tracking plugin is available as stable release in Piwik 0.6.3.

Documentation available at http://piwik.org/docs/tracking-goals-web-analytics/

New feature requests on the Goals plugin are tracked in a new ticket: #1434


The goal tracking plugin is currently in beta version, but there are many sub tasks to finish before releasing the plugin in stable stage; all the TODOs can be found in the release notes file.

Some highlights:

  • add a new UI element (vertical stacked tabs?) to allow display of various segments in the reporting (goals by keywords, goals by search engines, goal by country, etc.)
  • ~add a new function in the piwik.js public API to trigger a goal + corresponding code to add in the core/Tracker/*.php, so that users can trigger a goal on demand, with a custom parameter revenue; currently only goals matching URLs can be triggered in the piwik.php tracking by defining goals as such in the Piwik UI, but many users wish to trigger goals on demand - for example to trigger ecommerce transactions with custom revenue.~ see #778
  • GoalManager.detectGoalsMatchingUrl() should allow for a check against the action.name in addition to the action.url.
  • write documentation see #616
  • i18n
  • various small UI polishing
  • fix the few existing bugs

Check out the detailed list of TODOs.

if anybody would like to help, please let us know in a comment :)

Change History (34)

comment:1 Changed 5 years ago by matt (mattab)

(In [1201]) refs #774 goal tracking todo list -

comment:3 Changed 5 years ago by MarcLindsay

Now your talking, that's some sexy tracking.

Now to map it out in Piwik :D

comment:4 Changed 5 years ago by matt (mattab)

  • Description modified (diff)

comment:5 Changed 5 years ago by vipsoft (robocoder)

  • Description modified (diff)

comment:7 Changed 4 years ago by vipsoft (robocoder)

That's a better fit for #220.

comment:8 Changed 4 years ago by vipsoft (robocoder)

From forum post, should multiple goals in the same visit be aggregated/summed?

comment:9 Changed 4 years ago by matt (mattab)

multiple triggers of the same goal by a visitor should not trigger multiple conversions. In a future version, we could have this as a setting where a goal could be triggered multiple times by a same visitor.

comment:10 Changed 4 years ago by matt (mattab)

  • Priority changed from major to critical

comment:11 Changed 4 years ago by matt (mattab)

(In [2125]) Refs #774 fixing tooltip for "Conversions"

comment:12 Changed 4 years ago by matt (mattab)

(In [2204]) Refs #774 conversions display as expected on Overview tab also after clicking a specific goal report

comment:13 Changed 4 years ago by matt (mattab)

(In [2248]) Refs #774
Fixes Your top converting keyword include keyword without conversions

comment:14 Changed 4 years ago by matt (mattab)

(In [2251]) Refs #774 After adding goal, the window should ideally refresh to the goal report page

comment:15 Changed 4 years ago by matt (mattab)

(In [2253]) Refs #774
fixes clicking on the graph for a given goal redirects to the dashboard instead of redirecting to the goal report for the clicked date.
Also now clicks on graphs redirect to the correct subpage directly (Visitors>Overview, Referers>Evolution etc.)

comment:16 Changed 4 years ago by matt (mattab)

(In [2303]) Refs #774

  • Adding table by segments in the Goal Overview and in each specific Goal report. Data table is ajax loaded when the segment is clicked. In the 'Goal overview', the datatable displays all goals (this can be a lot of columns). In a specific goal tab, the datatable will only show columns for the sum of all goals and for this specific goal.
  • The 'Goals' datatable is now showing, for each goal: conversions, conversion rate and revenue per visit
  • Adding widgets for the Goals plugins: Goals overview, and one widget for each goal report

comment:17 Changed 4 years ago by matt (mattab)

(In [2307]) Refs #774

  • lazy scrolling to a DOM node should always use the helper piwikHelper.lazyScrollTo proxy to jquery scroll

comment:18 Changed 4 years ago by matt (mattab)

(In [2308]) Refs #774

  • Visits by server time now report in the correct website timezone
  • Fixing issue with the datatable showing conv / conv rates / revenues for all goals (previously only the first goal would show)

comment:19 Changed 4 years ago by matt (mattab)

(In [2309]) Refs #774

  • Moving 'segments' definition to a hook that each plugin can listen to. So far only referers, user country and visit server time define segments.
  • Fixing issue related to column sorting. By default it was sorting by nb_uniq_visitors, now sorting by nb_visits (because unique visitors column is not displayed in the goals table)

comment:20 Changed 4 years ago by matt (mattab)

(In [2319]) Refs #774 minor edits

comment:21 follow-up: Changed 4 years ago by matt (mattab)

(In [2320]) Refs #774

  • Numeric records by the goal plugin can contain a lot of value=0 rows. Instead, we should only record the numeric value if it is not zero, and assume zero when not found.

comment:22 Changed 4 years ago by matt (mattab)

(In [2321]) Refs #774

  • must have segments define the group name in the array, not in the row index

comment:23 Changed 4 years ago by matt (mattab)

(In [2322]) Refs #774

  • Small styles updates in the Goals > Overview links. Adding link to the Goals Tracking documentation page on piwik.org

comment:24 in reply to: ↑ 21 Changed 4 years ago by SteveG (sgiehl)

Replying to matt:

(In [2320]) Refs #774

  • Numeric records by the goal plugin can contain a lot of value=0 rows. Instead, we should only record the numeric value if it is not zero, and assume zero when not found.


your check for 0 values in [2320] has broken the complete archieving for blob values. Changing the code like this should fix it:

// table to use to save the data
if(is_numeric($record->value))
{
	// We choose not to record records with a value of 0
	if($record->value == 0)
	{
		return;
	}
	$table = $this->tableArchiveNumeric;
}
else
{
	$table = $this->tableArchiveBlob;
}

comment:25 Changed 4 years ago by matt (mattab)

(In [2323]) Refs #774 Fixing regression thanks for review SteveG!
Fixes #1389 Sparklines for bounce rate now displaying OK

comment:26 Changed 4 years ago by matt (mattab)

  • Resolution set to fixed
  • Status changed from new to closed

(In [2325]) Fixes #774

  • last known bug of the Goals plugin: show relevant columns when clicking the Goal icons. Show all columns when looking at the Goals report. Show only columns for the selected goal if looking at goal report.

comment:27 Changed 4 years ago by matt (mattab)

(In [2326]) Refs #774 Adding a 'cancel' link below the add/edit Goals forms (to restore screen state previous to click)

comment:28 Changed 4 years ago by matt (mattab)

  • Description modified (diff)

comment:29 Changed 4 years ago by matt (mattab)

See #1434 for the ticket keeping track of feature ideas for the Goals plugin.

comment:30 Changed 4 years ago by matt (mattab)

(In [2355]) Refs #774 Fixing 'Your best converting countries are [...]'

comment:31 Changed 4 years ago by matt (mattab)

(In [2356]) Refs #774

  • Goals plugin enabled by default
  • other minor edits

comment:33 Changed 4 years ago by SteveG (sgiehl)

(In [2375]) refs #774 fixed test. goal plugin is enabled by default since [2356]

comment:34 Changed 4 years ago by vipsoft (robocoder)

(In [2683]) refs #774 - goals enabled by default

Note: See TracTickets for help on using tickets.