Stats3x

Self-hosted web analytics with session replay and click maps

Creator: Ivan K (MisterWooster)

Need help installing this extra?

About Stats3x

Stats3x — self-hosted web analytics with session replay for MODX 3

Your own analytics right inside the MODX manager: visitors, traffic sources, pages, goals and session recordings that show how people actually use your site. Everything stays on your server — no external services, no third-party scripts, no visitor data shared with anyone.

HIGHLIGHTS

• Everything is local Statistics are collected and stored in your site's database. No Google Analytics or other external counters needed, visitor data never leaves your server.

• Session replay Watch how a visitor moved through the site: where they clicked, how far they scrolled, where they hesitated and on which page they left. Rare among MODX extras — usually this means connecting an external service. Here the recordings are stored on your server and visible only to users you grant access to.

• Click map Visitor clicks as a heatmap on top of the page itself, separately for desktops, tablets and smartphones. Lines show how far down the page people actually read.

• Doesn't slow the site down The page script is 5 KB and is embedded right into the HTML, no extra file to load. Data is received by a tiny PHP endpoint that does not boot MODX and does not touch the database; a cron job processes it once a minute.

• Less affected by ad blockers Data goes to your own domain, and the URLs contain none of the words like stats, analytics or tracker that blockers usually react to.

REPORTS

• Summary for any period with comparison to the previous one and a traffic chart • Pages as a tree, just like in the MODX resource tree • Sources: search engines, social networks, ads, referring sites, UTM tags • Devices, operating systems, browsers, screen sizes • Geography: country, region, city • New and returning visitors • Visits list and a visitor card with all their visits, pages, actions and IP address • Who is on the site right now • Narrow down any report with one click, for example only smartphone visitors from search • Tables with pages, search and sorting by any column; filters in the visits and recordings lists

EVENTS AND GOALS

• Clicks on chosen elements, file downloads, outbound links, phone and email links, form submissions • Custom events from JavaScript: _st3x.e("order", "paid", "", 2500) • Goals: page visit, click, form submission or custom event — with value and conversion rate

SESSION RECORDING

• Records a chosen share of visits, for example every tenth • Form input is masked, passwords are never recorded; blocks with personal data can be excluded with a CSS class • Timeline with markers: clicks, rage clicks (repeated clicks in one spot), page changes, typing • Skipping of idle time, playback speed, jumping to any moment • A separate permission for viewing recordings

PRIVACY AND SECURITY

• No third parties: nothing is sent outside your server • Cookieless mode and configurable data retention • Secrets and personal data (tokens, passwords, emails and similar) are stripped from page addresses • Showing visitor IP addresses in the manager can be turned off • Session recordings are sanitized before playback and can't run code or load external resources in the manager

ALSO

• Dashboard widget: today vs yesterday, visitors online, traffic chart, top pages and sources • Email reports daily, weekly or monthly via the Vestnik component (optional) • IP2Location LITE databases for geography are downloaded and updated automatically with a free token • Bot filtering, excluding your own IP addresses, trusted proxy settings • Status tab: is cron running, is the data folder protected, are the geo databases found • Access permissions: view, edit, delete, session recordings • Dates and times follow the MODX manager format settings • Built-in documentation in English and Russian

QUICK START

  • Install the package.
  • Call the snippet [[!Stats3x]] before in all templates. For session recording use [[!Stats3x? &replay=1]] and enable the stats3x.replay_enabled setting.
  • Add a cron job running every minute: php /path/to/core/components/stats3x/cron.php
  • For geography, put a free IP2Location LITE download token into the stats3x.geo_token setting.
  • REQUIREMENTS

    MODX 3, PHP 8.2 or higher, cron running every minute. Free IP2Location LITE databases for geography.

    Information

    Released
    October 27, 2026

    Supported Database
    MySQL

    License
    GPLv2

    Supported Versions
    3.1 - Current

    Downloads
    4

    Current releases

    3.0.9
    View | Download
    October 27, 2026
    3.1 - Current