Piwik 1.7 is a major upgrade, bringing many new features, security fixes, performance improvements, and many bug fixes and smaller improvements!

We hope you enjoy Piwik 1.7 as much as we enjoyed working on it. Let us know your feedback or suggestions & thank you for spreading the word on your website / blog / twitter & to your friends!

View the blog post with screenshots of new 1.7 features

What’s new in Piwik 1.7?

  • New Web Analytics reports!
    • New Loyalty report “Number of visitors who visited the website 1 time, 2 times, etc.”
    • New Recency report “Last visit was 0 day ago, 1 day ago, 2 days ago, etc.”
    • For each Goal and for your Ecommerce analytics, two new reports: “Visits until conversion”, “Days until conversion”
  • Scheduled reports (PDF/HTML) & Image graph improvements
    • “All Websites” summary can now be included in the scheduled reports.
      You can now in 3 clicks receive a daily/weekly summary of ALL your websites analytics in your email box. Enjoy!
    • Email Reports now include Graphs by default for key metrics.
      For example you will automatically see a graph for all reports that plot metrics such as the “Visits overview” report or “Goal overview” report.
    • Possibility to include a graph before each table report in PDF/HTML reports (disabled by default)
    • New horizontal bar graphs that look very pretty and allow for better data visualization. These graphs are the default graphs used in Scheduled reports.
    • Graphs now support Unicode characters (chinese, arabic, hebrew, etc.) after you upload the unicode font.
  • Major Usability Improvements
    • On most graphs, you can now select the metric to plot. For example you can now plot Pageviews, Revenue or Conversion rate over the last 30 days.
    • You can even plot multiple metrics at once, for example you can compare Conversion rate and Revenue for all goals, or for a specific goal.
    • Dashboard: you can now change the Dashboard Layout to choose 2 columns, 4 columns, or 3 columns with the first one taking half of the width, etc.
      There are many layout options available for everyone to have the optimal analytics experience.
    • Dashboard: you can now “reset” the dashboard layout to the default selection of widgets.
    • In Visitors > Overview, Piwik used to report “Actions” which include all of Page views, Downloads and Clicks on external links.
      Starting in Piwik 1.7 you will now see the detail, ie. 3 different stats and sparklines for Page views, Downloads and Outlinks separately.
  • Performance improvements when tracking hundreds or thousands of websites in Piwik
    • New archive.php script, replacing the previous archive.sh, much more efficient and optimized
    • “All websites dashboard” used to fail to load when you track dozens or hundreds of websites. Now it should take a few seconds/less than a minute to load.
  • Piwik 1.7 also marks an important milestone in Piwik history: the highest number of developers contributing significant new features.
    The Piwik team is growing and you can participate!
  • Security
  • Many bug fixes and improvements, see the ticket list below for more details

This new version does not contain major database schema changes, so the update should be quite easy even if your Piwik DB is enormous.

After You Update

  • Please use the forums for support.
  • If you use the official Piwik Mobile app you may notice that the graphs look better and are more useful after you upgrade to Piwik 1.7
  • We appreciate if you can spread the word about Piwik on your twitter, blog, website, to your friends, at conferences, etc. Thank you!

New documentation and FAQs

Updated FAQs and docs

List of 99 tickets closed in this release

  • #2327 New optimized archive.php script for faster and optimized archiving when hundreds/thousands of websites
  • #1077 “All Websites dashboard” should load fast even when tracking hundreds of websites! MultiSites
  • #536 Add Loyalty report “Visitors who visited the website 1 time, 2 times, etc.”
  • #584 New Metric: visit count until conversion
  • #2031 Goal Tracking: New Report “Days to conversion/purchase”
  • #583 New report “Visitors Recency”, days since last visit
  • #2706 Display Graphs in scheduled Email reports (PDF / HTML)
  • #1454 Add sparklines and stat for Page views, Downloads and Outlinks separately
  • #1820 Graphs should display a SELECT to choose the metrics to plot (visits, pages, etc.)
  • #1559 Dashboard: Customize dashboard, allow to select number of columns and various widgets layouts
  • #2638 Dashboard: Allow to Reset dashboard to original widgets layout
  • #2704 Graphs should support Unicode characters & other improvements
  • #2828 Add “Horizontal Bar Graphs” for more efficient data visualization
  • #2475 Campaign tracking parameters should be also detected in the URL hash tag (fragment)
  • #2718 Group all Google search SSL unknown keywords under “Keyword not defined”
  • #2600 Email PDF/HTML reports: Add option to receive All websites dashboard report
  • #2840 Visitor Log: De-duplicate repeated page views
  • #2918 New setting force_ssl that will ensure that Piwik is only used over https SSL
  • #2902 Ensure that IP is anonymized before the heuristic is applied
  • #2837 Website selector should have link “All websites” all the time
  • #2740 Live.getLastVisitsDetails support for filter_limit=-1 (return all visits)
  • #2769 Truncation should handle UTF-8 (multi-byte encoding)
  • #2785 Regression: duplicated visits are created when IP is different every page view
  • #2721 Custom Variable with value zero 0 should be reported as 0 and not as “value not defined”
  • #2758 Adding segment to VisitorInterest.getNumberOfVisitsPerVisitDuration causes SQL constraint violation
  • #2728 Some days incorrectly show 0 zero visits when archiving was running the first second of the day
  • #2931 JS tracker: setCustomVariable does not work when the value is an int/float
  • #2929 Chrome: Too much time spent in unload handler.
  • #2924 PDF report: when a number is large, it is displayed in exp notation ie 1.46129e+06 instead of 1461290
  • #2925 Ecommerce API: some numbers have .0 where as others are rounded
  • #2934 Pre-minify jqplot library and plugins
  • #2922 Back button does not work when using Chrome browser
  • #2751 Forward &segment= parameter to all Dashboard Widgets
  • #2818 When a scheduled task fails, the archive.php should report the error
  • #2788 Static Graph: better graphs when date range period parameter
  • #2717 Error “unable to start session” instead of a proper error message
  • #2727 pageUrl segment does not work with =@ contains operator
  • #2815 Call to undefined method Piwik_DataTable_Array::getFirstRow
  • #2496 Support Page Visibility API to detect pre rendering requests and avoid over-counting page views
  • #2810 Refactor Multi Sites plugin to follow Piwik plugin conventions
  • #2903 BC breaking change third party cookie (optional, disabled by default) name changes from “piwik_visitor” to “_pk_uid”
  • #2911 Chrome Mobile UA detection
  • #2005 CSV, TSV API exports should support ‘expanded’ parameter
  • #2784 Update favicon with transparent background
  • #2714 Improve CSV/TSV Export
  • #2792 Delete logs should have option to delete all logs
  • #2700 Add column “Total revenue” in Goal reports
  • #2826 Show current version when upgrade pending
  • #2835 SQLite3 support for tests/javascript
  • #2580 UsersManager and SitesManager – add and update hooks
  • #2868 Windows 8 detection
  • #2870 Add plugin hook to set/modify database connection info
  • #2871 Add plugin-specific config loader
  • #2787 When using Custom logo, do not write “Piwik” in the “From” name in Scheduled reports email
  • #2701 Security: Enable iframe buster on all pages, except Widgets
  • #2719 Error on “All websites” dashboard for “today” on 32 bit systems
  • #2729 Email Reports “Send Report now” should send report for the selected date
  • #2730 Graph widgets support to plot multiple columns
  • #2731 Disable mailto:tracking
  • #2761 Mail.ru search engine results encoding has changed
  • #2735 JSON encoding /decoding problems on older PHP versions
  • #2783 Piwik load balancer stale cache causes UI bug
  • #2586 more search engines treated as external sites
  • #2801 segment breaks sparklines in VisitsSummary
  • #2808 UserAgentParser does not detect Windows Mobile 7.5 “Mango”
  • #2795 One single campaign appearing twice in campaigns report
  • #2806 PHP 5.4.0RC3 compatibility
  • #2827 Users with ‘view’ access cannot change their email
  • #2748 Archiving fails when an invalid column is requested (VisitsSummary)
  • #2681 Internationalize i18n the Date format on page of Visitor details
  • #2804 Graph image cutoff first digits when Y axis has decimals
  • #2831 IndexedBySite will not get all data when asked for metrics from different reports
  • #2744 Visitor logs links to google should always link to the search result page
  • #2757 Ecommerce reports should be sorted by Total Revenue instead of visits
  • #2743 Ecommerce requires Custom Variables plugin, should check and enforce
  • #2845 javascript error on Goals page in IE 7 due to unexpected comma
  • #2847 piwik.js: setDoNotTrack() broken
  • #2866 document.title is overridden by element with id=title or name=title
  • #2824 Clean-up Windows Phone and Windows Mobile version detection
  • #2869 SEO ranking widget doesn’t show other sites’ ranking any more
  • #2875 unrecognized search engines
  • #2861 Warning: Invalid argument supplied for foreach() in Admin.php on line 55
  • #2577 Call to undefined function imagecreatefrompng when generating PDF
  • #2790 Guide on how to secure a Piwik server
  • #2887 When calendar is clicked before all widgets loaded, do not display “Oops…” message
  • #2894 Goals conversions by Server time wrong timezone conversion
  • #2904 Automatically remove URL parameters fb_comment_id and fb_xd_fragment
  • #2901 piwik cannot decode chinese keywords properly sometime from baidu.com
  • #2897 Ecommerce: Tracking multiple Product categories on an ecommerce page view does not work
  • #2736 Multiple orders made by the same visitor only show item details of the first order in Ecommerce log
  • #2755 Hide Custom Variables Product sku/name/category from Ecommerce Custom Variables report
  • #2912 When exporting data, the “search” filter should be maintained if it was set
  • #2873 Goal not attributed to campaign when triggered manually
  • #2844 CustomVariables.getCustomVariablesValuesFromNameId fails
  • #2816 API parameter filter_truncate should be applied recursively
  • #2696 Country not detected correctly in conversions in some cases
  • #2397 Update to jQuery 1.7.1 and jQueryUI 1.8.16
  • #1170 Faq: How do I “uninstall” piwik?
  • #2733 HTML Validation Errors in Image Tracking Code

Piwik ftw!