=== ezStats Analytics ===
Contributors: cavendo
Tags: analytics, cookieless analytics, privacy, seo, ai visibility
Requires at least: 5.8
Tested up to: 7.0
Requires PHP: 7.4
Stable tag: 1.0.0
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Cookieless WordPress analytics with realtime traffic, AI referrals, up to three goals, and 10,000 free pageviews per month.

== Description ==

Understand what is working on your WordPress site without wrestling with GA4.

ezStats Analytics is the official WordPress connector for ezStats, owned and operated by Cavendo. Install the plugin, connect or create an ezStats account, and review clean traffic reports in WordPress or the hosted ezStats dashboard.

= Start free =

Accounts created through the WordPress connection receive a permanent Free plan with:

* One website
* Up to 10,000 pageviews per month
* One month of analytics data retention
* Realtime traffic analytics
* Top pages, traffic sources, devices, browsers, and coarse geographic reporting
* Search, social, campaign, referral, and recognizable AI-assistant traffic sources
* Up to three conversion goals
* Optional heatmaps for up to three pages with seven-day behavioral-data retention
* Access to the free AI Score scanner
* Dashboard, REST API, and hosted MCP access, with actions subject to plan limits
* No credit card and no expiration

The plugin also provides in-admin summaries, consent and Do Not Track controls, logged-in role exclusions, multisite-aware setup, and WP-CLI support.

= Optional SEO and AI visibility upgrades =

The plugin and its core analytics work on the permanent Free plan. If you later need higher limits, ongoing AI visibility monitoring, or deeper SEO intelligence, paid ezStats plans add:

* Google Search Console integration
* SEO keyword, competitor, content-gap, and backlink tracking
* Monitored brand mentions and citations across ChatGPT, Claude, Gemini, and Perplexity
* Greater heatmap capacity and longer behavioral-data retention
* User flows, conversion funnels, and GA4 history import
* Multi-site dashboards, client reporting, and agency features
* Alerts, scheduled reports, and additional API and agent actions

You can start free and upgrade later without replacing or reconnecting the plugin. The WordPress plugin is free and open source; your ezStats service plan determines optional hosted-service features, site limits, retention, and monthly usage. Compare plans at https://ezstats.io/pricing.

= Privacy-first by design =

ezStats analytics operate without cookies and without cross-site tracking. New plugin installs require an analytics consent signal before tracking by default, and Do Not Track support is enabled by default.

After consent, the bundled tracker stores a random pseudonymous identifier in the visitor's first-party browser local storage so repeat visits can be measured. The identifier does not contain a name, email address, or WordPress user information. At ingestion, ezStats converts it to an account-scoped HMAC visitor key, which prevents direct matching between unrelated ezStats accounts.

Visitor IP addresses are resolved from the direct connection or explicitly configured trusted proxy sources, used transiently for coarse geographic and network classification and bot filtering, and are not retained. ezStats does not collect form values, DOM text, link destinations, customer data, or WordPress user details through its analytics tracker.

No analytics product can guarantee legal compliance for every website or jurisdiction. Site owners remain responsible for their privacy disclosures, consent choices, and legal obligations.

= External service =

This plugin connects to the hosted ezStats service at https://go.ezstats.io. The service is required for analytics collection, processing, storage, and reporting.

The service is used to:

* Connect the WordPress site to an ezStats account.
* Retrieve scoped site tokens and API keys.
* Receive pageview and permitted analytics events. Connected sites relay them through the site's REST API; manual-token setups send them directly to ezStats.
* Verify tracking status.
* Load aggregated metrics such as visitors, pageviews, top pages, top sources, and traffic trends.

Tracking may send the canonical page path, documented utm_* campaign parameters, referrer hostname, screen and viewport dimensions, browser, operating system, device type, foreground engagement time, random session and pseudonymous visitor identifiers, and non-personal WordPress metadata such as public post ID, post type, and taxonomy identifiers. If optional behavioral analytics are enabled, anonymous click coordinates and element tags, scroll depth, and page-to-page paths are sent. Element text, link destinations, DOM IDs, selectors, and form values are never sent.

During connection, WordPress sends site URL, site name, WordPress version, plugin version, timezone, and multisite status so ezStats can connect the selected website to the account chosen by the administrator.

Privacy Policy: https://ezstats.io/privacy

Terms of Service: https://ezstats.io/terms

Product and pricing: https://ezstats.io/pricing

== Installation ==

1. Install ezStats Analytics from Plugins > Add New, or upload the plugin ZIP.
2. Activate the plugin.
3. Open the top-level ezStats menu in WordPress admin.
4. Create a Free ezStats account, connect an existing account, or paste an existing tracking token.
5. Select or create the website you want to track and complete the connection.
6. Configure your consent integration, visit the public site, and verify that tracking is active.

== Frequently Asked Questions ==

= Is the WordPress plugin free? =

Yes. The plugin is free and open source. Accounts created through the WordPress connection receive a permanent Free plan for one website with up to 10,000 pageviews per month, up to three goals, and one month of analytics retention. No credit card is required. A paid plan is optional and is only needed for higher limits or additional hosted SEO and AI visibility capabilities.

= What happens when I exceed 10,000 pageviews? =

ezStats continues collecting during a grace allowance. On Free, collection pauses after 15,000 pageviews in the same month unless you upgrade; it resumes when the next monthly period begins.

= Does ezStats require an account? =

Yes. ezStats is a hosted analytics service. The plugin connects your site to your ezStats account and dashboard.

= Does ezStats use cookies? =

No analytics cookies are set. After consent, the tracker stores a random pseudonymous identifier in first-party browser local storage so it can distinguish repeat visits. The identifier is converted to an account-scoped HMAC key by the service.

= Do I need a consent banner? =

New installations require an explicit analytics consent signal by default. Configure your consent tool to call `ezStats.consent('granted')` after the visitor grants analytics consent. Requirements depend on your jurisdiction and site configuration; the plugin does not provide legal advice.

= Does the plugin respect Do Not Track? =

Yes. Respect for Do Not Track is enabled by default and can be changed in the plugin settings.

= Are logged-in administrators tracked? =

By default, logged-in administrators and editors are excluded from tracking.

= What visitor data does ezStats process? =

ezStats processes pages viewed, referring hostnames, campaign parameters, browser and device type, screen size, coarse geography, engagement time, and optional interaction or goal events. Raw visitor IP addresses are not stored.

= Can I keep Google Analytics installed? =

Yes. ezStats can run alongside GA4 or another analytics product while you compare reports or transition.

= What AI and SEO capabilities are included on Free? =

Free analytics recognizes visits referred by AI assistants and includes access to the AI Score scanner. Ongoing monitoring of whether your brand is mentioned or cited across ChatGPT, Claude, Gemini, and Perplexity, plus Search Console integration and deeper keyword, competitor, content-gap, and backlink intelligence, are available on paid plans. You can start free and upgrade later without reinstalling or reconnecting the plugin.

= Can an AI assistant use my ezStats data? =

Yes. ezStats provides REST API and hosted MCP access so compatible tools and agents can retrieve authorized analytics data. Available actions, credits, and usage limits depend on the plan.

= Does this plugin work with multisite? =

Yes. Connection settings are stored per subsite so each site can use its own scoped token.

= Does the plugin use a custom updater? =

No. WordPress.org builds receive updates through WordPress.org.

= Where can I get support? =

Use the WordPress.org support forum for plugin installation and WordPress integration questions. Visit https://ezstats.io/ for product information and https://ezstats.io/docs for documentation and service support.

== Screenshots ==

1. Connect a WordPress website to a new or existing ezStats account.
2. Review connected-site analytics and privacy settings inside WordPress.
3. Review traffic, goals, and dashboard insights in the hosted ezStats dashboard.
4. Run an AI Score or add paid SEO and monitored AI visibility capabilities when needed.

== Changelog ==

= 1.0.0 =

* First public WordPress.org release of ezStats Analytics.
* Added a bundled v3 tracker with foreground engagement, SPA navigation, idempotent events, and consent support.
* Added trusted-proxy controls, transient local GeoIP processing, and privacy-limited WordPress metadata.
* Added optional WooCommerce purchase events, behavioral analytics, multisite support, WP-CLI setup, and a top-level ezStats admin menu.
* Made the tracker relay configuration resilient to page optimizers that remove inline scripts.
* Send the hosted dashboard link through a role-aware landing route, so administrators and regular users open the appropriate dashboard.
