Slimstat Analytics


The leading web analytics plugin for WordPress. Track returning customers and registered users, monitor Javascript events, detect intrusions, analyze email campaigns. Thousands of WordPress sites are already using it.

Feature Spotlight

Main features

  • Get access to real-time access log, measure server latency, track page events, keep an eye on your bounce rate and much more.
  • Add shortcodes to your website to display reports in widgets or directly in posts and pages.
  • Fully compliant with the European GDPR guidelines. You can test your website at
  • Exclude users from statistics collection based on various criteria, including; user roles, common robots, IP subnets, admin pages, country, etc.
  • Export your reports to CSV, generate user heatmaps or get daily emails right in your mailbox (via premium add-ons).
  • Compatible with W3 Total Cache, WP SuperCache, CloudFlare and most caching plugins.
  • Support for hashing IP addresses in the database to protect your users privacy.
  • Accurate IP geolocation, browser and platform detection (courtesy of MaxMind and Browscap).
  • World Map that works on your mobile device, too (courtesy of amMap).

Premium Add-ons

Visit our website for a list of available extensions.


Slimstat Analytics is an open source project, dependent in large parts on community support. You can fork our Github repository and submit code enhancements, bugfixes or provide localization files to let our plugin speak even more languages. This page
is for those who would like to donate money – be it once, be it regularly, be it a small or a big amount. Everything is set up for an easy donation process.
Try it out, you’ll be amazed how good it feels! If you’re on a tight budget, and coding is not your thing, please consider writing a review for Slimstat as a token of appreciation for our hard work!


Slimstat is available in multiple languages: English, Belarusian (UStarCash), Chinese (沐熙工作室), Farsi, French (Michael Bastin, Jean-Michel Venet, Yves Pouplard, Henrick Kac), German (TechnoViel), Indonesian (ChameleonJohn), Italian (Slimstat Dev Team), Japanese (h_a_l_f), Portuguese, Russian (Vitaly), Spanish (WebHostingHub), Swedish (Per Soderman) and Turkish (Seyit Mehmet Çoban). Is your language missing or incomplete? Contact us today.

Reviews and Feedback

  • This is by far the most accurate and in-depth tracking plugin I’ve encountered for WordPress MiMango
  • I have been relying on SlimStat to not only track all traffic to my sites accurately but also to present the stats in very useful graphic format JJD3
  • Thanks you for such an excellent plugin. I am using it to kick Jetpack out of all the wordpress installations that I manage for myself and others – robertwagnervt
  • I like Slimstat very much and so I decided to use it instead of Piwik – Joannes
  • Read all the reviews and feel free to post your own!


  • WordPress 3.8+
  • PHP 5.2+ (or 7.1+ if you use the Browscap data file)
  • MySQL 5.0.3+
  • At least 40 MB of free web space
  • At least 5 MB of free DB space
  • At least 32 Mb of free PHP memory for the tracker (peak memory usage)
  • IE9+ or any browser supporting HTML5, to access the reports

Please note

  • If you decide to uninstall Slimstat Analytics, all the stats will be PERMANENTLY deleted from your database. Make sure to setup a database backup (wp_slim_*) to avoid losing your data.
  • If you are upgrading from a version prior to 4.0, please install version 4.0 first to upgrade the database structure and download the new Geolocation data.


  • Overview - Your website traffic at a glance
  • Activity Log - A real-time view of your visitors' whereabouts
  • Settings - Plenty of options to customize the plugin's behavior
  • Interactive World Map - See where your visitors are coming from
  • Responsive layout - Keep an eye on your reports on the go


  1. In your WordPress admin, go to Plugins > Add New
  2. Search for WP Slimstat Analytics
  3. Click on Install Now under WP Slimstat Analytics and then activate the plugin
  4. Make sure your template calls wp_footer() or the equivalent hook somewhere (possibly just before the </body> tag)
  5. Go to Slimstat > Settings > Maintenance tab > MaxMind IP to Country section and click on “Install GeoLite DB” to detect your visitors’ countries based on their IP addresses
  6. If your wp-admin folder is not publicly accessible, make sure to check the FAQs to see if there’s anything else you need to do


Our knowledge base is available on our support center website.


A Plugin is Only as Good as it’s Support… an adage I've been using over the years, and over the few months I've been using SlimStat I've not needed to use their support team - until that is, last night. SlimStat has always worked fine, and my users LOVE the shortcodes and maps that I added to show where other users are coming from. On a personal note though, I also like to use GADWP for real-time statistics, straight from Google. Following the latest version upgrade to SlimStat there was an obvious error though, but only if you use GADWP alongside it, and in a certain configuration. The support team worked out exactly what it was in minutes (some charts thing) and gave me the simple solution to rectify it (disable the charts thing) whist they get in touch with the charts developer to report this issue. So, a lovely plugin - together with a support team who knows what they're on about - makes this an easy five star rating!

AMAZING support!!!

They helped me extend the plugin to fit my needs, which is above and beyond most support for other plugins. Thank you so much!

Great support for this essential plugin

Very helpful (I would say essential) plugin to get some informations about the (blog-)audience. Today the Slimstat-Update v4.7.9 crashed my blog. The support team from Slimstats fixed the issue very fast. Thats what a really good plugin offers: Expected informations and exceptional support (thank you very much Jason Crouse). @Slimstat: Maybe you should update your PHP-Version-Numbers in the description page? Or describe what is only possible with PHP v7.x?

I like it, it does the job.

SlimStats is a very useful and also lovely plugin. There are a lot of stats plugins for WordPress, this is the one that does what I'm looking for, without doing a lot that I don't want. Slimstats gives you easy-to-understand stats at a glance, and updates regularly without having to click Refresh. Edit: The dev is proactive about fixing issues. I had an issue, posted about it on here and within 2 hours there was an update that fixed it. Keep up the good work. and Thank you for your service. MWD
Read all 763 reviews

Contributors & Developers

“Slimstat Analytics” is open source software. The following people have contributed to this plugin.


“Slimstat Analytics” has been translated into 1 locale. Thank you to the translators for their contributions.

Translate “Slimstat Analytics” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.



  • [Update] Async mode will now serialize concurrent requests to the backend to optimize performance and reduce server load.
  • [Fix] Addressed a remote XSS vulnerability disclosed by Sucuri/GoDaddy.
  • [Fix] Charts were displaying the wrong label for certain values (thank you, Alex).


  • [Note] Now that we have a cleaner foundation to build on, it’s time to start introducing new reports and new ways to segment your audience and the traffic they generate. While our users test the latest changes and updates (to confirm that the foundation is indeed solid and bug-free), we are hard at work implementing the first batch of new reports. Some of them will be made available in the free version, while others will be added to our premium add-on, User Overview. And we need your help! If you think that a specific report should be added to Slimstat, please do not hesitate to let us know!
  • [Note] Worried about the recent news regarding jQuery vulnerabilities? Slimstat doesn’t use jQuery as a dependency, so you can sleep tight knowing that your website will not be affected.
  • [Update] AmCharts, the library used to render all of our charts, has been updated to version 4. This new release is not backward compatible, so the code to integrate it with Slimstat had to be completely rewritten. Please let us know if you notice any issues.
  • [Update] Plugin Update Checker, the library we use to check if a new version of our premium add-ons is available for download, has been update to version 4.6.
  • [Update] If you’re using our partner’s CDN functionality (JsDelivr) to load the tracker, their link is now always loaded over HTTPS for added security.
  • [Update] Switched the Add-on Update checker URL to HTTPS, for added security (thank you, Peter).
  • [Update] Changed the protocol of all the URLs used within Slimstat, including references to our documentation, to HTTPS.
  • [Update] Added icon to geolocate Originating IP addresses, when detected.
  • [Fix] The optout cookie path was not being set correctly (thank you, ralfkerkhoff).
  • [Fix] Google seems to be using a new User Agent string for its “mobile” crawler, which was causing Slimstat from incorrectly identifying visits as coming from mobile devices, instead of bots (thank you, Ron).
  • [Fix] An error was being returned if SVG elements were using the A tag on a page (thank you, snaphappyme).
  • [Fix] A bug was causing Slimstat to incorrectly geolocate visits to websites behind a Cloudflare load balancer. Please update the IP Address Fix add-on as well.
  • [Fix] Tweaked the formula to determine your website bounce rate, and updated the associated description to better reflect the underlying calculations.

  • [Fix] It turns out the new Browscap Library we introduced requires PHP 7.x, not 5.6 as stated in their documentation. Added some code to prevent fatal errors for those still using an older version of PHP.


  • [Note] Jason is back! Apologies for the radio silence in the last few months, due to personal reasons. Please know that this plugin is still very much alive and kicking. I’m working on cleaning up my development environment, updating the Git repository and streamlining coding workflows. I’m catching up on past and new feature requests and pending bugfixes. As always, thank you for your continued support.
  • [Note] Happy birthday, Slimstat: April 2019 marks your 9th year in the WordPress repository and your 13th year overall. Not many plugins out there can brag about that!
  • [Update] Our optimized fork of the Browscap Library is now available as a public Github repository. Slimstat will now check for updates on Github directly, which streamlines our deployment workflow. Feel free to contact us if you experience any issues with the new data file.

  • [Fix] The opt-out message was being displayed even if the corresponding setting was turned off. Apologies for the inconvenience.

  • [New] The IP to hostname conversion feature now stores in the database the information it calculates, to avoid querying the DNS server over and over again.
  • [Update] The opt-out banner is now loaded dynamically, to address HTML caching issues. Thank you, fuchsws.

  • [New] The Customizer now has its own access control settings. This allows admins to control in a more granular way who can do what.
  • [Update] If you have an existing opt-in mechanism, asking your users if they want to be tracked, you can now configure Slimstat to use that cookie to determine if a given pageview should be recorded or not.


  • [Note] A few users have reached out to us to ask if Slimstat would be compliant with the upcoming General Data Protection Regulation (GDPR) guidelines and regulations that are about to be activated all across Europe. Based on our understanding of this new law, as long as the hosting provider where you are storing the information collected by Slimstat is GDPR compliant, then you won’t have to worry about any extra layers of compliance offered by software like ours. One of our primary goals is to make sure that you and only you are the sole owner of the data collected by our plugin. This has always been what makes Slimstat stand out from the crowd: while Jetpack, Google Analytics and many other services have full unrestricted access to the data they collect on your website, we at Slimstat don’t treat our users as the product that we sell to other companies.
  • [New] Our plugin now honors the Do Not Track header. Please note that this feature can be turned off in the settings, and will be enabled by default.
  • [New] We introduced an experimental option to allow your users to opt out of tracking via a text box displayed at the bottom of your website. Please go to Settings > Filters to customize the behavior and the message to suit your needs and website layout. You can also use third-party solutions to let your visitors opt out, and then configure Slimstat to read the corresponding cookie they set.
  • [New] You can now add reports to the Access Log screen, and customize it just like any other screen in Slimstat.
  • [Update] Reintroduced the interval_minutes filter, which had been temporarily removed from our code as a side effect of our code clean-up process. Thank you, mth75.
  • [Update] Moved the button to reset the report layouts to the Customizer screen.
  • [Update] Deprecated the Geolocation screen. The World Map report has been moved to the Audience tab. If for some reason you cannot find the World Map, please go to Slimstat > Customize and click the Reset All button.
  • [Fix] Filters were not being set when opening the corresponding links in a new window. Thank you, forumaad
  • [Fix] Bug affecting the report “Currently Online”.
  • [Fix] Bug affecting all the filter links after the Export to Excel add-on had been enabled.
  • [Fix] Bug affecting the resource filter when “nice permalinks” are not enabled.


  • [New] We’ve completely rewritten the portion of code that handles the date ranges in the Filter Bar. In order to simplify things, we have deprecated the interval_direction filter, which is now expressed by the sign in front of the interval value (positive for going forward from a given start date, and negative for going back in time). Please note that this change affect your existing shortcodes, if they use the aforementioned filter. We will update our documentation in the next few days to remove any reference to this filter, and to avoid any confusion. Please feel free to contact us if you have any questions or to report any issues.
  • [New] The comparison chart is now always displayed, using new criteria to determine the range to use. You may want to update your settings (Settings > Reports > Default Time Span > Days, and Reports > Comparison Chart) to mimic the old behavior or hide the comparison chart altogether, if you like.
  • [Update] We’ve reintroduced the various levels of granularity for our charts: hourly (when a single day is selected), daily (for ranges up to 120 days) and monthly. Also, the comparison chart is now always available, regardless of the selected time range. Thank you, WebsiteOpzetten.
  • [Update] Tooltips across the interface have a more uniform behavior.

  • [Fix] The new Javascript library was interfering with the dropdown menus on the WordPress Dashboard. Thanks to all of those who helped us troubleshoot the issue.


  • [Note] As we mentioned earlier, we’ve been working on streamlining and cleaning up our source code. It’s incredible how layers of code can deposit on top of each other, until they form a thick layer that prevents developers from seeing clearly what’s happening. It was time to apply some virtual citric acid to descale our code. If you’re using any kind of server caching functionality, please make sure to clear your cache before opening a support request. Also, do not hesitate to reach out to us if you notice any strange or unusual behaviors.
  • [New] You can now download the geolocation map as a PDF file or PNG image. Thank you, Steve, for suggesting this feature!
  • [New] You can now exclude pageviews by content type, like 404, taxonomy, search, etc. Thank you, victor50g.
  • [Update] Deprecated the ‘direction’ filter, which was a leftover from over 5 years ago, when we used our old interface.
  • [Fix] The cron job to archive old records was not firing as expected under certain circumstances.
  • [Fix] Charts did not render correctly, if no data was available for that specific view.

  • [New] For those who can’t manage to automatically update their local copy of our premium add-ons, we’ve added a link to manually download the zip file. You’ll find it under the Plugins screen, once you’ve entered and saved the corresponding license key under Slimstat > Add-ons.
  • [Update] The Update Checker library has been updated to version 4.4.
  • [Fix] The world map was not being displayed correctly if no data points were available for the selected time range (thank you, Michel).

  • [Update] You can now customize the amount of dots displayed on the World Map, under Slimstat > Settings > Reports > Access Log and World Map. Thank you, service4.
  • [Fix] A dependency error was being highlighted for one of our premium add-ons under certain circumstances. Thank you, Peter.
  • [Fix] The option to not set the session cookie was not working as expected. Thank you, Bjarne.

  • [Update] Implemented a workaround to try and fix the “Forbidden” error that a few users are experiencing when trying to download the MaxMind Geolite2 data file.
  • [Fix] Updated the link to manually download the MaxMind data file from their servers, and added a new page to our knowledge base to explain how to manually install it.


  • [New] Now that Slimstat is capable of geolocating visitors at the city level, wouldn’t it make sense to display those visitors on the map? Well, of course! Go check out this new feature by accessing the Geolocation tab in Slimstat.
  • [New] Updated the tracking script to handle events triggered by external libraries, like the Vimeo API. Thank you, Max.
  • [New] Added new operator “included_in_set”, which allows you to list multiple values to match against, when composing a shortcode.
  • [New] Added new option to avoid that Slimstat assigns a COOKIE to your visitors. Thank you, dragon013.
  • [Fix] A bug was preventing the feature to “restrict users” to only see their reports from working as expected.

  • [Update] The Browscap data file is now loaded only when needed, thus removing its inherent overhead when unnecessary.
  • [Update] The Browscap data file has been updated to the latest version available on their repository (ver 6026).
  • [Fix] Addressed a remote XSS Vulnerability responsibly disclosed by one of our customers. Thank you, riscybusiness.
  • [Fix] Reintroduced the WHOIS pin, which has been removed by mistake because of a regression bug. Thank you, brachialis.


  • [Update] New fields added to the Email Report and Export to Excel add-ons, by extending how certain reports are defined in core.
  • [Fix] The false positive alert related to a virus in our code was fixed by updating AmChart to the latest version available (thank you, Sasa).
  • [Fix] Removed a PHP warning of undefined index (thank you, slewis1000 and Sasa)
  • [Fix] The MozScape report was causing connectivity issues for some users, and it is now set as “hidden” by default.
  • [Fix] Regression bug related to our Export to Excel add-on.

  • [Fix] Apparently more people than we initially thought have issues with the MaxMind data file not being saved as expected. We are introducing a temporary fix while we try to investigate this issue further.


  • [Fix] A few users pointed out a weird behavior when installing the MaxMind Geolocation data file, where an empty folder would be created instead of the actual file. If you still experience issues related to this problem, please make sure to delete the empty folder “maxmind.mmdb” under wp-content/uploads/wp-slimstat/.
  • [Fix] Apparently Microsoft Security Essentials was not pleased with our code, and was returning a false positive alert that a virus was included with the source code (thank you, Sasa).
  • [Fix] The “content_id” filter could not be used in a shortcode to reference other pages (i.e. [slimstat f='count-all' w='id']content_id equals 2012[/slimstat]). Thank you, Felipe.
  • [Fix] Country flags were not being displayed properly under certain circumstances (thank you, Catmaniax).
  • [Fix] Bug preventing the new Heatmap Add-on from working as expected.

  • [New] Added support for SCRIPT_DEBUG: by defining this constant in your wp-config.php will make Slimstat load the unminified version of the javascript tracker (thank you, Sasa)
  • [Update] Added new parameter to make the admin-ajax.php URL relative, to solve issues like this one.
  • [Fix] The Network Settings premium add-on was not working because of a bug in the main plugin. Thank you, Steve, for pointing us into the right direction.
  • [Fix] Updated the schema (columns) for the archive table.

  • [Fix] The new table columns “location” and “city” were not being created on a fresh install (thank you, nielsgoossens)
  • [Fix] Async mode was not working as expected (thank you, keithgbcc)


  • [New] As those who have been using Slimstat for a while know, we never stop doing our good share of research and development to improve our plugin. One feature on our wishlist was to make the geolocation functionality more accurate. Specifically, users have been asking us to track not just the Country of origin, but possibly the state and city. In order to geolocate visitors, our code has been leveraging a third-party data file provided by A while ago, they launched a new data format, which improves performance and offers a way to quickly determine the city of origin. However, the new library required a higher version of PHP, and up until now we had been hesitant to adopt it, to allow more people to use our plugin, over the chance of offering this feature. Now, after spending some time combing through their code, we found a way to get the best of both worlds: by customizing their PHP library, we were able to make it work with PHP 5.3! Which means that now Slimstat is able to tell you your visitors’ city of origin (and State, when applicable) right out of the box. This information is available in the Access Log report and in a new ‘Top Cities’ report under the Audience tab. Please note: the MaxMind data file to enable this feature is approximately 60 Mb, and for this reason this new functionality is not enabled by default. You must go to Slimstat > Settings > Tracker and turn on the corresponding option. Then go to Slimstat > Settings > Maintenance and uninstall/install the GeoLite file to download the one that contains the city data. Please feel free to contact us if you have any questions.
  • [Update] Removed backward compatibility code for those updating from a version prior to 4.2. Hopefully most of our users are using a newer version that that. If you’re not, please contact our support service for instructions on how to upgrade.
  • [Update] The format used to save your settings in the database has been changed. You MUST update your premium add-ons as soon as possible, and get the version compatible with this new format, or you might notice unexpected behaviors. Please contact us if you experience difficulties updating your add-ons.
  • [Update] Cleaned up some old CSS code affecting the reports.


  • [Fix] The new feature introduced in version to allow our users to customize the default time range for the reports, had introduced a regression bug. Thank you to all our users who volunteered to test the bugfix.
  • [Fix] A vulnerability has been disclosed by an attacker with admin credentials could leverage the import/export mechanism for the plugin’s settings to inject some malicious code. We recommend that you upgrade to the latest version of Slimstat as soon as possible.
  • [Fix] The new version of the Add-on Update Checker library, bundled with the previous release, was returning a fatal error under certain circumstances (thank you, Pepe).