=== JB Atomic Analytics – Privacy-First Analytics ===
Contributors: elecktroskwizz
Donate link: https://jbatomic.com/donate/
Tags: analytics, stats, privacy, traffic, visitors
Requires at least: 6.2
Tested up to: 7.1
Stable tag: 4.6.10
Requires PHP: 7.4
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Privacy-first WordPress analytics with local visitor stats, traffic insights and configurable IP privacy.

== Description ==

JB Atomic Analytics gives you clear WordPress traffic statistics directly inside your dashboard while keeping analytics data in your own WordPress database.

Track visitors, page views, sessions, clicks, referrers and device information without depending on an external analytics account.

Privacy controls are built in, including strong IP anonymization, optional no-IP storage, Do Not Track (DNT), Global Privacy Control (GPC), consent integration and configurable data retention.

JB Atomic Analytics is developed and published by JB Atomic Industries:
https://jbatomic.com/

The package distributed on WordPress.org is fully functional without a paid license.

Additional Pro functionality is distributed as a separate plugin. Pro implementation code is not included, disabled or locked inside this WordPress.org package.

= Main features =

* Local visitor and session analytics stored in the WordPress database.
* Page-view and click-event tracking.
* Dashboard metrics and traffic trends.
* Visitor, session and page-view statistics.
* Top-page reports.
* Referrer and traffic-source reports.
* Device-category reports.
* Browser and operating-system information.
* Screen-size information.
* Basic per-visitor activity inspection.
* Configurable data retention.
* Configurable IP privacy.
* Do Not Track (DNT) support.
* Global Privacy Control (GPC) support.
* Generic CMP/cookie consent integration.
* Diagnostic consent test mode.
* WordPress privacy-policy helper text.
* WordPress personal-data export and erasure integration for logged-in users.
* Rate limiting and same-origin request validation.

= Privacy-first IP controls =

JB Atomic Analytics provides three IP-storage modes.

**Full IP address**

Stores the complete IP address in the analytics database.

**Strong anonymization**

The address is anonymized before persistent storage.

Examples:

IPv4:

`37.167.71.123` becomes `37.167.0.0`

The plugin keeps only the first 16 bits of the IPv4 address.

IPv6:

Only the first 32 bits are retained. The remaining address bits are cleared before persistent storage.

**No persistent IP storage**

The visitor IP address is not written to the analytics database.

The request IP may still be processed temporarily during the current request for security-related functions such as ignored-IP rules and rate limiting.

Changing the IP-storage mode affects newly collected data. Existing stored addresses are not automatically rewritten.

= DNT and GPC =

Do Not Track and Global Privacy Control are enabled by default on new installations.

Existing installations keep their previously configured choices when updating the plugin.

When enabled, browsers that send the corresponding privacy signals can be excluded from analytics collection.

= Consent integration =

JB Atomic Analytics can wait for a configurable consent cookie before loading analytics collection.

Administrators can configure:

* The consent-cookie name.
* An optional expected value contained in the cookie.
* Whether an external CMP or cookie banner manages the site's legal basis or consent.

The plugin does not determine whether analytics consent is legally required for a particular website. Site administrators remain responsible for configuring their site appropriately.

= Diagnostic consent test mode =

Consent test mode is intended only for temporary diagnostics.

When explicitly enabled by an administrator, it temporarily allows the analytics collection path to operate despite:

* Consent-cookie requirements.
* DNT/GPC filtering.
* Administrator exclusion.
* Bot filtering.

Explicitly ignored IP addresses remain excluded.

A prominent warning is displayed throughout the plugin administration interface while diagnostic test mode is active.

Disable test mode as soon as testing is complete.

= JB Atomic Analytics Pro =

JB Atomic Analytics Pro is distributed as a separate plugin outside WordPress.org.

Its implementation code is not included in this WordPress.org package.

The separate Pro plugin can provide additional functionality such as:

* Realtime analytics.
* Heatmaps.
* Navigation paths and funnels.
* Advanced visitor profiles.
* Advanced device grouping.
* IP geolocation.
* ISP and ASN information.
* Network intelligence.
* Network and Tor classification.
* IP, device and country blocking.
* Advanced security tools.
* Advanced retention and trend analysis.
* Advanced UX analysis.
* Media and download analytics.
* WooCommerce analytics.

Product information:
https://jbatomic.com/jb-atomic-analytics/

Support:
contact@jbatomic.com

Donations:
https://jbatomic.com/donate/

== Installation ==

1. In WordPress, open **Plugins > Add New**.
2. Search for **JB Atomic Analytics**, or upload the plugin ZIP manually.
3. Install and activate the plugin.
4. Open **JB Atomic Analytics > Settings**.
5. Review IP-storage, retention, DNT/GPC and consent settings.
6. Visit the public site to begin collecting analytics data.

Analytics data is stored locally in the WordPress database.

If analytics collection depends on a consent banner, configure the appropriate consent cookie in the plugin settings.

To verify the collection path before accepting cookies, temporarily enable **Consent test mode**, perform the test and disable the mode immediately afterward.

== Frequently Asked Questions ==

= Is a paid license required? =

No.

Every feature implemented in the WordPress.org package can be used without purchasing a paid license.

JB Atomic Analytics Pro is a separate plugin with additional functionality.

= Where is analytics data stored? =

Core analytics data is stored locally in the site's WordPress database.

= Does JB Atomic Analytics require Google Analytics? =

No.

JB Atomic Analytics provides its own local WordPress analytics system and does not require a Google Analytics account.

= Does the WordPress.org plugin send analytics data to JB Atomic Industries? =

No.

The WordPress.org package does not automatically send visitor analytics data to JB Atomic Industries.

= Does the plugin send visitor IP addresses to a geolocation service? =

No.

The WordPress.org package does not include IP or ISP geolocation functionality.

= Can IP-address storage be reduced? =

Yes.

Administrators can choose between:

* Full IP storage.
* Strong anonymization using IPv4 /16 and IPv6 /32.
* No persistent IP storage.

The request IP may still be processed temporarily for ignored-IP rules and rate limiting.

= Are IP addresses anonymized before storage? =

When strong anonymization is selected, yes.

For IPv4, only the first 16 bits are retained.

For example:

`37.167.71.123` becomes `37.167.0.0`

For IPv6, only the first 32 bits are retained.

= Does changing the IP-storage mode modify existing analytics data? =

No.

The selected mode affects newly collected data. Existing stored IP values are not automatically rewritten.

= Does the plugin support Do Not Track? =

Yes.

Do Not Track can prevent collection from browsers that send the DNT privacy signal.

It is enabled by default on new installations.

= Does the plugin support Global Privacy Control? =

Yes.

GPC support is available and enabled by default on new installations.

= Does JB Atomic Analytics work with cookie-consent plugins? =

The plugin provides a generic CMP/cookie-consent mode.

You can configure the name of the consent cookie and optionally require a specific value to be present before analytics collection starts.

= What does Consent test mode do? =

Consent test mode temporarily forces the diagnostic analytics collection path so an administrator can confirm that events are recorded.

While active, it can bypass:

* Consent-cookie requirements.
* DNT/GPC filtering.
* Administrator exclusion.
* Bot filtering.

Ignored IP addresses remain excluded.

Consent test mode should only be enabled temporarily.

= Why is there a red warning in the plugin administration pages? =

The warning appears when Consent test mode is enabled.

It is designed to make it clear that normal privacy and consent filtering is temporarily being bypassed for diagnostic purposes.

= Does this package contain Pro code that is unlocked by a license? =

No.

Pro implementation code is distributed in a separate plugin and is not present, disabled or locked inside the WordPress.org package.

= Can I delete analytics data? =

Analytics data is subject to the configured data-retention period.

The plugin also integrates with WordPress personal-data export and erasure tools for supported logged-in-user data.

== Privacy ==

Depending on configuration and visitor activity, JB Atomic Analytics can store:

* IP address according to the configured storage mode.
* Pseudonymous visitor identifiers.
* Pseudonymous session identifiers.
* Visited URLs.
* URL paths.
* Page titles.
* Referrer URLs.
* Browser information.
* Operating-system information.
* Device-category information.
* Screen-size information.
* Click events.
* Event timestamps.

IP storage can be configured as:

* Full IP address.
* Strongly anonymized address.
* No persistent IP storage.

Strong anonymization uses:

* IPv4 /16.
* IPv6 /32.

When no persistent IP storage is selected, the request IP may still be processed transiently for ignored-IP rules and rate limiting.

This WordPress.org package does not perform:

* IP geolocation.
* ISP or ASN lookup.
* Tor classification.
* Advanced device classification.
* Country blocking.
* IP blocking beyond administrator-configured ignored-IP rules.
* External visitor profiling.

JB Atomic Analytics provides privacy-related configuration options, but no plugin can guarantee legal compliance.

Site administrators are responsible for selecting settings appropriate to their jurisdiction, privacy policy and use case.

== External Services ==

The WordPress.org package does not automatically transmit analytics data to JB Atomic Industries, Freemius or another external analytics provider.

External product, support and donation pages are accessed only when an administrator explicitly chooses those links.

Product information:
https://jbatomic.com/jb-atomic-analytics/

Support:
contact@jbatomic.com

Donations:
https://jbatomic.com/donate/

== Source Code and Asset Licensing ==

The distributed first-party JavaScript files:

`assets/tracker.js`

and

`assets/admin.js`

are human-readable and do not require compilation, transpilation or minification.

The WordPress.org package contains no generated or minified first-party JavaScript and requires no build step.

All first-party PHP, JavaScript, CSS, documentation and bundled JB Atomic brand assets included in this package are distributed under GPLv2 or later.

No third-party runtime library is bundled in the WordPress.org package.

== Screenshots ==

1. Main analytics dashboard showing visitors, page views, sessions, clicks and traffic trends.
2. Visitor list with device, browser, session and activity information.
3. Basic visitor activity inspection showing recorded page views and click chronology.
4. Analytics reports for pages, visitors, sessions and traffic activity.
5. Privacy, consent, IP-storage, data-retention and diagnostic test-mode settings.

== Upgrade Notice ==

= 4.6.10 =
Adds configurable IP privacy, stronger IP anonymization, privacy-oriented defaults and clearer safeguards around diagnostic consent test mode.

= 4.6.9 =
Improves WordPress Plugin Check compatibility, visitor filtering, translation support and administration integration.

= 4.6.8 =
Improves the Diagnostic interface and internal reliability.

= 4.6.7 =
Improves WordPress.org package compatibility, collection reliability, documentation and administration labels.

== Changelog ==

= 4.6.10 =
* Added a prominent warning throughout plugin administration while diagnostic consent test mode is active.
* Added configurable IP storage with full-address, strong-anonymization and no-persistent-IP modes.
* Strengthened IPv4 anonymization to /16.
* Added strong IPv6 /32 anonymization.
* Added clearer explanations for IP privacy settings.
* Added a clear indication when an IP address is not persistently stored.
* Enabled DNT and GPC by default on new installations.
* Preserved existing DNT/GPC choices when upgrading existing installations.
* Updated privacy documentation.
* Added WordPress.org screenshot metadata.

= 4.6.9 =
* Improved compatibility with WordPress Plugin Check requirements.
* Improved visitor filtering and analytics query handling.
* Improved translation support.
* Refined Diagnostic information.
* Refined the WordPress Plugins screen integration.

= 4.6.8 =
* Improved the Diagnostic interface.
* Improved internal compatibility and reliability checks.

= 4.6.7 =
* Improved WordPress.org package structure and compatibility.
* Improved collection reliability and request validation.
* Improved internal data handling and consistency.
* Expanded Help documentation covering collection, consent, reports, privacy, diagnostics and maintenance.
* Improved product-information and upgrade guidance.
* Refined administration labels and descriptions.

= 4.6.6 =
* Improved links to product information and support resources.
* Added easier access to product information from the plugin interface.

= 4.6.5 =
* Added basic per-visitor activity inspection.
* Improved dashboard traffic-chart presentation.

= 4.6.4 =
* Improved visitor and session tracking reliability.
* Refreshed the analytics dashboard and reporting interface.
* Improved compatibility and internal data handling.