Skip to content

Works with your stack

Cookie consent for statistics counted on your own site

at home is not consent

← Cookie Rocks for your stack

These plugins count visits on your own WordPress site instead of sending them to Google. Some set a cookie, some use none and recognise visitors another way. Most of them never read the visitor’s choice, and a few still reach another company now and then.

The plugins

Matomo for WordPress
Tracker and hits served by your own site, once a tracking mode is on. Cookie Rocks Pro gives consent through Matomo’s own API. Shop orders can be sent from the server.
Koko Analytics
No other company contacted. A cookie set by your server from the first page by default, or a cookieless method.
Independent Analytics
No cookie, no browser storage, no other company contacted. Returning visitors are still recognised by a hash.
Burst Statistics
Waits for statistics consent when WP Consent API is installed, tracks at once without it. Its fingerprint mode can call another company.
SlimStat Analytics
No consent check and full IP addresses by default. Follows WP Consent API once its compliance mode is set. Its fingerprint library can call another company.

What matters for consent with Statistics on your own site

Your own server is not the whole answer

A plugin that counts at home can still set a cookie, keep IP addresses or build a fingerprint. That is what the visitor’s statistics choice is about.

Who reads the choice

Burst waits for WP Consent API when it is installed. SlimStat does too, once you set it. Koko Analytics, Independent Analytics and Matomo for WordPress have no WP Consent API code.

Inline scripts

Several of these plugins print their tracker inside the page. A rule based on a script address does not catch them.

Hits sent from the server

Matomo’s shop tracking and SlimStat’s server-side mode record data from PHP. A choice made in the browser does not hold those.

What Cookie Rocks does

Cookie Rocks holds known trackers until consent. With Matomo, Cookie Rocks Pro uses Matomo’s own consent API, and no Matomo cookie is written before the choice.

What our tests found on Statistics on your own site

  • Depends on a setting · Cookie RocksExempt measurement for Koko and Independent Analytics

    With exempt audience measurement on, in a country that allows it, Cookie Rocks 2.11.1 lets Koko Analytics in fingerprint mode and Independent Analytics with a daily salt count a visit before the choice, with no cookie. After Refuse they stop. Koko in cookie mode, and Independent Analytics without the daily salt, stay held until consent.

    Seen in our tests, 6 November 2026, Cookie Rocks.

  • Good to know · Koko AnalyticsKoko Analytics stays silent for automated browsers

    A driven browser sees nothing, while a real visitor gets the cookie in the default mode.

    Seen in our tests, 6 November 2026, Koko Analytics 2.5.3.

    Full detail

    Koko Analytics sends no page view when navigator.webdriver is true, or when the user agent looks like a bot. An automatic test in a driven browser therefore sees no request and no cookie, although a real visitor gets the cookie in the default mode.

  • Set before the choice · Cookie RocksThree statistics plugins held until consent

    Cookie Rocks 2.11.1 holds Independent Analytics, Burst Statistics and Slimstat until consent. Before the choice and after Refuse, none of them records a visit. After Accept, Independent Analytics and Burst count the page without a reload. Slimstat starts without a reload but only counts from the next page.

    Seen in our tests, 6 November 2026, Cookie Rocks.

  • Good to know · Independent AnalyticsIndependent Analytics needs pdo_mysql

    Independent Analytics 2.16.2 needs the PHP extension pdo_mysql. Without it, its migrations stop with the message could not find driver and its tracking script is never written in the page.

    Seen in our tests, 6 November 2026, Independent Analytics.

  • Good to know · SlimstatSlimstat's cookie cannot be erased from the browser

    Slimstat 6.0.0 writes its cookie slimstat_tracking_code as HttpOnly in its session code, so no script in the browser can erase it. After a withdrawal, a consent tool can stop Slimstat but the cookie stays until it expires.

    Read in its code, 6 November 2026, Slimstat.

See the 17 other findings
  • Good to know · Matomo for WordPressWhat Matomo for WordPress stores in visitors' browsers

    Matomo for WordPress: 1 cookie(s) or browser key(s) for visitors, recognised by Cookie Rocks from 2.9.8.

    NameKept inCategoryWhat it is for
    matomo_has_jscookieStatisticsTells Matomo that the visitor's browser runs JavaScript, for visit statistics

    Read in its code, 2 November 2026, Matomo for WordPress.

    Full detail

    Matomo for WordPress can store these in a visitor's browser: matomo_has_js (cookie, statistics: Tells Matomo that the visitor's browser runs JavaScript, for visit statistics). Cookie Rocks recognises them from 2.9.8, with this category and purpose, and lists them in the cookie policy when it sees them.

  • Good to know · Burst StatisticsWhat Burst Statistics stores in visitors' browsers

    Burst Statistics: 2 cookie(s) or browser key(s) for visitors, recognised by Cookie Rocks from 2.9.8.

    NameKept inCategoryWhat it is for
    _tmjs_lsessionStorageStatisticsBurst Statistics: counts the visit without cookies, within the session
    burst_error_reportedsessionStorageStatisticsBurst Statistics: counts the visit without cookies, within the session

    Read in its code, 2 November 2026, Burst Statistics.

    Full detail

    Burst Statistics can store these in a visitor's browser: _tmjs_l (sessionStorage, statistics: Burst Statistics: counts the visit without cookies, within the session); burst_error_reported (sessionStorage, statistics: Burst Statistics: counts the visit without cookies, within the session). Cookie Rocks recognises them from 2.9.8, with this category and purpose, and lists them in the cookie policy when it sees them.

  • Good to know · TranslatePress, Weglot, Instagram Feed, WP Go Maps, MailPoet, MatomoTranslatePress, Weglot, MailPoet and others set nothing by default

    by default: Default settings

    With default settings and nothing set up, TranslatePress, Weglot, Instagram Feed, WP Go Maps, MailPoet and Matomo for WordPress set no cookie, use no storage and load no known third-party tool.

    Seen in our tests, 17 October 2026, TranslatePress, Weglot, Instagram Feed, WP Go Maps, MailPoet, Matomo 3.3.8, 6.4.3, 6.14.0, 10.1.10, 5.42.0, 5.13.1. Source

    Full detail

    On a fresh WordPress home page with default settings (no account, key or content set up), TranslatePress, Weglot, Smash Balloon Instagram Feed, WP Go Maps, MailPoet and Matomo for WordPress set no cookie, keep nothing in the browser's storage and load no known third-party tool, after Accept all.

  • Sent from your server · Matomo for WordPressMatomo for WordPress sends WooCommerce carts and orders from the server

    setting “Track ecommerce” · by default: on

    With Track ecommerce on (default), carts and orders are sent from PHP in some cases, with no consent check. A browser-side consent signal does not hold these hits. The server tracker sets no cookie.

    Read in its code, 16 October 2026, Matomo for WordPress 5.13.1.

    Full detail

    With Track ecommerce on (default), Matomo for WordPress sends WooCommerce carts and orders from PHP during AJAX or REST requests, in Tag Manager mode, or with MATOMO_TRACK_ECOMMERCE_SERVER_SIDE, with no consent check in that code; the PHP tracker sets no cookie but reads _pk_id. A browser-side consent signal does not hold these hits. Use server generated Visitor ID (off by default) starts the WooCommerce session for visitors without _pk_id.

  • Good to know · Koko AnalyticsKoko Analytics cookieless mode keeps a daily session on the server

    The session file is named by a hash of a daily seed, the user agent and the IP address, and deleted after midnight. Its tracker is now in the page, so address patterns no longer match it.

    Read in its code, 16 October 2026, Koko Analytics 2.5.3.

    Full detail

    Koko Analytics' cookieless method keeps a server-side session file named by a hash of a daily seed, the user agent and the IP address, deleted after midnight. Since 2.x the tracking script is printed inline in wp_footer, so address patterns on assets/dist/js/script.js no longer match anything. It has no WP Consent API code.

  • Depends on a setting · Independent AnalyticsIndependent Analytics recognises a visitor month after month by default

    setting “Visitor salt refresh interval” · by default: never

    It uses a hash of a salt, the full IP address and the user agent. The salt is never refreshed by default, so a visitor stays recognisable month after month.

    Read in its code, 16 October 2026, Independent Analytics 2.16.0.

    Full detail

    Independent Analytics recognises returning visitors with md5(salt + full IP address + user agent). The salt refresh interval defaults to never (options: daily, weekly, monthly), so the same visitor stays recognisable from one month to the next unless the site picks a daily refresh.

  • Set before the choice · Burst StatisticsBurst Statistics fingerprint mode sometimes sends data to ThumbmarkJS

    About once in 10,000 fingerprints, at most once per session, it posts the fingerprint and page path to api.thumbmarkjs.com. Burst does not turn this off. The daily-hash mode does not include it.

    Read in its code, 16 October 2026, Burst Statistics 3.7.2.

    Full detail

    Burst Statistics' cookieless fingerprint mode bundles ThumbmarkJS 1.2.0, which about once in 10,000 fingerprint computations, at most once per session (sessionStorage _tmjs_l), sends a POST to api.thumbmarkjs.com/log with the fingerprint, its components and the page path. Burst does not turn this logging off. The daily-hash mode does not include it.

  • Depends on a setting · Burst StatisticsBurst Statistics uses a 30-day visitor cookie by default

    setting “How Burst recognizes visitors” · by default: cookie

    burst_uid is set once tracking is allowed. The daily-hash mode uses no cookie, only a hash of IP and browser with a salt renewed each day.

    Read in its code, 16 October 2026, Burst Statistics 3.7.2.

    Full detail

    Burst Statistics recognises visitors with a cookie by default: burst_uid, 32 random hex characters, 30 days (filter burst_cookie_retention_days), SameSite=Strict, set by JavaScript once tracking is allowed. Its daily-hash mode uses sha256 of IP, user agent and a salt renewed each day, with no cookie. Its script is a combined file at /wp-content/uploads/burst/js/burst.min.js by default; ghost mode gives it a random 8-character name.

  • Depends on a setting · SlimStat AnalyticsSlimStat Analytics by default checks no consent and stores full IP addresses

    setting “GDPR Compliance Mode” · by default: off

    • GDPR Compliance Mode is off, so no consent is checked.
    • Full IP addresses are stored (anonymize and hash off).
    • Sets the cookie slimstat_tracking_code from the first page, for 30 minutes.
    • Records the name and e-mail of logged-in users or commenters with the visit.

    Read in its code, 16 October 2026, SlimStat Analytics 5.5.0.

    Full detail

    With default settings, SlimStat Analytics checks no consent (GDPR Compliance Mode off), stores full IP addresses (anonymize and hash off) and sets slimstat_tracking_code from the first page: a PHP cookie in the tracking response, HttpOnly, SameSite=Lax, 30 minutes. While personal data is allowed (the default), it records the logged-in user's name and e-mail, or the name and e-mail read from WordPress comment cookies, with the visit.

  • Set before the choice · SlimStat AnalyticsSlimStat Analytics sends a browser fingerprint with each visit

    Unless anonymous mode is on, it sends a FingerprintJS fingerprint with each visit. About one page load in a thousand also contacts m1.openfpcdn.io. It keeps several keys in browser storage.

    Read in its code, 16 October 2026, SlimStat Analytics 5.5.0.

    Full detail

    SlimStat Analytics bundles FingerprintJS 4.6.2 and, unless anonymous mode is on, sends a browser fingerprint (parameter fh) with each visit. FingerprintJS is loaded without monitoring:false, so on about one page load in a thousand it sends a GET to m1.openfpcdn.io. Its script keeps slimstat_transport_memory, slimstat_stale_id_guard and two consent-upgrade keys in sessionStorage, and a queue of unsent hits (slimstat_offline_queue, up to 200) in localStorage.

Analytics and ad pixels

Other plugins of the same kind.

Meta Pixel for WordPressThe Meta pixel, plus Meta cookies sent from your server.tested 5.2.2Adds: Meta PixelMeta for WooCommercePixel and server events, with a hold switch for consent.tested 3.7.8Pixel CaffeineThe Meta pixel on every page, with no consent setting.tested 2.3.3Adds: Meta PixelTikTok for BusinessThe TikTok pixel held, server events to decide.tested 1.4.3Adds: TikTok PixelMicrosoft ClarityClarity on every page, with no consent signal.tested 0.10.37HotjarHotjar held until the visitor agrees.tested 1.0.16HubSpotHubSpot’s loader on every page, consent only in HubSpot.tested 11.3.75JetpackStats, comments, videos and images from WordPress.com.tested 16.4Ad pixel pluginsMeta and TikTok pixels, and what your server sends.MatomoStatistics from your own site, consent through Matomo’s API.tested 5.13.1Koko AnalyticsStatistics on your own site, with a cookie by default.tested 2.5.3Independent AnalyticsNo cookie, but returning visitors are still recognised.tested 2.16.2Burst StatisticsWaits for statistics consent when WP Consent API is there.tested 3.7.4SlimStat AnalyticsNo consent check by default; one setting changes that.tested 6.0.0Adds: Slimstat AnalyticsPixel ManagerUp to ten shop pixels from one script, held until the visitor agrees.tested 1.72.0Plausible AnalyticsStatistics with no cookie, from plausible.io or your own site.tested 2.6.4Fathom AnalyticsStatistics with no cookie, from cdn.usefathom.com.PixelYourSiteMeta and Google tags, plus first-party cookies of its own.tested 11.4.5Adds: Google Tag Manager, Google Analytics / Google Ads (gtag.js), Meta PixelWP StatisticsVisitor counts on your own server, without cookies.tested 14.16.18

Every plugin and theme we test →

Questions

What about WP Statistics?

It has its own page: WP Statistics.

Is Jetpack Stats one of them?

No. Jetpack Stats sends page views to WordPress.com, not to your own site.

What happens after the 30-day trial?

The banner, your visitors’ choices and your proofs of consent keep working. Without a key, most settings lock, updates and support stop. Take a key at any time and everything opens again.

For sites with their own statistics

Count at home, ask first.

statistics, after yes

Every feature of the complete plugin for 30 days, no card. Your statistics plugin keeps counting on your own site.

  • During the trial: everything, including the full settings and the scans
  • After 30 days without a key: the banner, your visitors’ choices and your proofs of consent keep working
  • What waits for a key: most settings, updates and support

How the trial works, in detail

Get your trial key

Your e-mail and your site. Your key arrives as soon as you confirm your e-mail.

One trial per domain. Local and staging sites never use up your key.

We keep your e-mail address to send your key and help you with it, as explained in our privacy policy. No newsletter, nothing else.