

Overview tab — metric cards, line chart, peak hours, device breakdown
Self-hosted website analytics for WordPress. All data is stored in your WordPress database and never sent to third-party services. The tracker is cookieless and loads no external resources, making the plugin GDPR, CCPA, and PECR friendly by default — no consent banner required.
Once activated, the plugin starts collecting anonymous visitor data and displays a full analytics dashboard inside WP Admin.
The admin dashboard loads no fonts from third-party CDNs, no remote scripts, and no external stylesheets. Every byte is served from your own server, so the admin’s IP address is never leaked to third parties while viewing analytics.
The tracking script is async, non-blocking, and under 5KB. It works with common caching and optimization plugins by using admin-ajax.php for data collection, which bypasses page caching.
Built by ZenMarkup — WordPress support and development.
This plugin connects to a single third-party service under the conditions described below. The connection can be fully disabled by toggling “Geolocation” off in Analytics Settings General. Visitor data is never sent to any third party.
When the geolocation feature is enabled, the plugin downloads a static IP geolocation database file from jsDelivr CDN about once per month. The database is hosted as a public npm package (dbip-city-lite) and contains no user-specific data — it is the same file served to every site that requests it.
What is sent: a standard HTTPS GET request from your server. No visitor data, site identifiers, or telemetry are included.
What is received: a gzipped database file, approximately 19 MB (dbip-city-lite.mmdb.gz).
When: shortly after the geolocation feature is first enabled, then approximately once per month via WP-Cron, and whenever an admin clicks the “Update database now” button on the Settings page.
Where it is stored: wp-content/uploads/zenmarkup-pa/dbip-city-lite.mmdb (after extraction).
After the database has been downloaded, ALL geolocation lookups happen locally on your own server using the bundled MaxMind GeoIP2 PHP reader. Visitor IP addresses are NEVER transmitted to any external service.
To stop all external requests entirely, set “Geolocation” to OFF in Analytics Settings General. The plugin continues to work without country and city data.
The plugin ships with both minified production bundles and their unminified sources, so every byte of JavaScript and CSS can be reviewed, studied, and modified without any external tooling. No remote repository or compilation step is required to inspect the code.
Shipped sources:
Rebuilding the minified bundles (optional):
The build script uses esbuild (a pure Node dependency declared in package.json) — no remote downloads at runtime, no other build tooling, no framework.
This plugin includes the following third-party assets.
MIT License text:
The MIT License (MIT)
Copyright (c) 2015 Pareto Software, LLC DBA Simplemaps.com
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.