Title: Opti-Behavior – Self-Hosted Heatmaps, Session Recordings, Funnels, A/B Testing &amp; Smart Insights
Author: OptiUser
Published: <strong>November 19, 2025</strong>
Last modified: September 25, 2026

---

Search plugins

![](https://ps.w.org/opti-behavior/assets/banner-772x250.png?rev=3548840)

![](https://ps.w.org/opti-behavior/assets/icon-256x256.png?rev=3458096)

# Opti-Behavior – Self-Hosted Heatmaps, Session Recordings, Funnels, A/B Testing & Smart Insights

 By [OptiUser](https://profiles.wordpress.org/optiuser/)

[Download](https://downloads.wordpress.org/plugin/opti-behavior.1.9.2.1.zip)

 * [Details](https://zgh.wordpress.org/plugins/opti-behavior/#description)
 * [Reviews](https://zgh.wordpress.org/plugins/opti-behavior/#reviews)
 *  [Installation](https://zgh.wordpress.org/plugins/opti-behavior/#installation)
 * [Development](https://zgh.wordpress.org/plugins/opti-behavior/#developers)

 [Support](https://wordpress.org/support/plugin/opti-behavior/)

## Description

**See why visitors leave. Fix it. Prove it. On your own WordPress server.**

🚀 **[Try the Live Demo](https://demo.optiuser.com/?demo_login=go)** – explore the
full analytics dashboard in one click, no installation and no signup required.

Visitors rarely explain why they leave. They click, scroll, hesitate, abandon forms,
hit errors, ignore buttons, or drop out of checkout. Opti-Behavior records those
silent signals, and Smart Insights tells you which problem to fix first, why, and
whether your fix worked.

No external analytics cloud: visitor behavior stays in your own WordPress database
and files.

#### 🔄 How it works: one loop, not a pile of dashboards

 1. **Collect** – seven collectors record what visitors do: traffic, heatmaps and funnels
    in the free plugin; session recordings, errors, forms and user journeys in Pro.
 2. **Understand** – Smart Insights reads them together and writes one card per problem:
    what is wrong, on which page or funnel step, how many visitors it costs, and since
    when.
 3. **Fix** – each card gives one next action and opens the report that shows the problem:
    the heatmap, the funnel step, the recording.
 4. **Prove** – mark the card as fixed: Opti-Behavior compares the period before and
    after your change and shows the result. Test bigger changes with an A/B test.

Inside the plugin, the **How it works** page shows this loop with your own numbers,
a first-days checklist and a **Setup check**: are visits received, is a caching 
or optimization plugin blocking a tracker, are your own visits counted? Each item
has a button to fix it.

#### 💡 Smart Insights: honest by design

Most “insight” tools raise alarms. Smart Insights counts.

 * **Ranked by visitors lost**, not by alarming words. “Critical” must be earned:
   enough visits measured, high confidence, and a loss that matters on your site.
 * **Confidence comes from the visits measured.** A card built on few visits says“
   Provisional · N visits” instead of pretending.
 * **Money only when it is real.** An amount “at risk” is shown for a funnel that
   ends at the checkout (with at least 20 orders over the period) or for a form 
   priced with your own value of a conversion. Every other card shows the visitors
   it loses.
 * **Funnel cards name the step** visitors leave: “between Product and Cart, 60 
   of 90 visitors leave”.
 * **One card per problem.** Cards with identical data are merged, and a card the
   rules no longer confirm is closed, never counted as a win.
 * **No lift promises** without a published source.
 * **Results you can check.** A resolved card shows before, after and the verdict.
   The admin menu light shows where you stand at a glance: red = a Critical problem,
   yellow = High or Medium, green = nothing to fix.

The first cards usually come after about 100 visits on a page. Nothing to set up.

#### 🔬 Page X-Ray (Pro): why doesn’t this page convert?

Pick a page and get one report built from every module:

 * **Health score** with the share of each module, and a page list ranked from the
   one to fix first.
 * **What the page is** – its type (sales page, product, article, lead page…), its
   goal and how often visitors reach its main button. Choose the buttons that matter
   by clicking them on the page.
 * **Behavior map** – the page in ten parts: viewing time, visitors still there,
   clicks, and where to move or repeat the main button.
 * **Page audit** – the conversion checklist of its type: clarity, buttons, trust(
   reviews, guarantee, payment signs, contact), content and sharing. Each check 
   says what was found on the page and what to do.
 * **What changed** – plugin, theme and core updates and page edits are marked on
   every chart; a problem that starts right after a change names it: “started 1 
   day after Plugin X was updated”.
 * **Evolution** – 14 days before against 14 days after each change, with a noise
   test so a random swing is never reported as a result.
 * **Action plan** – in order: check the measurement, fix the defects, then test
   each change with an A/B test only when the page has the traffic to conclude.

In the free plugin, the Page X-Ray tab shows what it does and an example report.

#### Opti-Behavior Suite for WordPress Optimization

Opti-Behavior is built around one simple psychology principle: users reveal intent
through behavior before they explain it with words.

 * 📊 [Real-Time Analytics](https://optiuser.com/opti-behavior/ob-feature-dashboard/)–
   See what visitors are doing now: sessions, pageviews, devices, traffic sources,
   countries, engagement, and bot-filtered activity.
 * 🔥 [Heatmaps](https://optiuser.com/opti-behavior/ob-feature-heatmaps/) – Discover
   what users notice, ignore, click, misclick, and scroll past so you can improve
   layout, CTAs, and page focus.
 * 🧭 [Conversion Funnels](https://optiuser.com/opti-behavior/ob-feature-funnels/)–
   Find the exact step where motivation turns into abandonment, from landing page
   to checkout or lead form.
 * 🧪 [A/B Testing](https://optiuser.com/opti-behavior/ob-feature-ab-testing/) –
   Replace opinions with evidence by testing pages, elements, goals, and conversion
   paths directly in WordPress.
 * 💡 [Smart Insights](https://optiuser.com/opti-behavior/ob-feature-smart-insights/)–
   One card per problem, ranked by the visitors it costs, with the evidence, the
   next action and a before / after result.
 * 🔬 Page X-Ray – One report per page: health score, behavior map, page audit, 
   what changed in WordPress, and an action plan. Pro feature.
 * 🎥 [Session Recordings](https://optiuser.com/opti-behavior/ob-feature-recordings/)–
   Watch hesitation, rage clicks, dead clicks, scrolling, navigation, and friction
   moments in real user sessions. Pro feature.
 * 📝 [Form Analytics](https://optiuser.com/opti-behavior/ob-feature-forms/) – Identify
   fields that create effort, confusion, errors, or abandonment before users submit.
   Pro feature.
 * 🛤️ [User Journey Analytics](https://optiuser.com/opti-behavior/ob-feature-journeys/)–
   Visualize the paths visitors naturally take through your site and turn high-value
   journeys into funnels. Pro feature.
 * ⚠️ [Errors & Performance Tracking](https://optiuser.com/opti-behavior/ob-feature-errors/)–
   Detect JavaScript errors, broken links, rage clicks, dead clicks, and performance
   issues that silently reduce trust. Pro feature.
 * 🔒 [Settings & Privacy Controls](https://optiuser.com/opti-behavior/ob-feature-settings/)–
   Control consent, storage, reports, cleanup, languages, debugging, and privacy
   options from one place.

#### 🎯 Why Opti-Behavior Works

Most site owners already have traffic numbers. The hard part is understanding the
human reason behind the numbers.

Opti-Behavior helps answer practical conversion questions:

 * Which parts of the page attract attention?
 * Where do visitors hesitate or lose confidence?
 * Which funnel step causes the biggest drop-off?
 * Which form field creates too much effort?
 * Which CTA, layout, product page, or message should be tested next?
 * Are bots, spam, errors, or slow pages distorting your decisions?

The goal is not more dashboards. The goal is better decisions.

#### ✅ Core Features Included Free

 * Click and scroll heatmaps for desktop and mobile behavior.
 * Real-time traffic overview with visitors, sessions, pageviews, bounce rate, scroll
   depth, top pages, traffic sources, and visitor map.
 * Unlimited conversion funnels with multi-step drop-off analysis and device filtering.
 * Automatic funnel suggestions: Opti-Behavior detects your site type (WooCommerce,
   Easy Digital Downloads, blog, lead-gen, signup, membership, LMS, booking) and
   proposes ready-made funnels built from your own store URLs — create one in a 
   click, or customize it in the builder first. Nothing is ever created without 
   you asking.
 * A/B testing for page-split experiments, variant previews, conversion goals, and
   winner application.
 * Session and visitor tracking with duration, visited pages, referrers, outbound
   links, and engagement patterns.
 * [Smart Insights](https://optiuser.com/opti-behavior/ob-feature-smart-insights/):
   cards ranked by visitors lost, confidence from the visits measured, before / 
   after results, weekly summaries and notifications.
 * “How it works” page with a Setup check, a first-days checklist and the latest
   release notes.
 * Bot and spam detection and filtering for cleaner decisions.
 * Scheduled email reports: daily, weekly, or monthly.
 * Hybrid Storage engine designed to reduce database bloat by storing high-volume
   analytics events in optimized files.
 * Cookie-free anonymous tracking by default, IP anonymization, and no third-party
   analytics data sharing. Full Tracking mode uses cookies only after the visitor
   accepts the consent banner, and the `[opti_behavior_cookie_settings]` shortcode
   lets visitors change or withdraw their choice at any time.
 * Multilingual admin: English, French, German, Spanish, Portuguese, and Italian.

#### 💎 Pro Growth Features

Upgrade when you want to move from analytics to deeper behavior diagnosis:

 * **Page X-Ray** – one report per page with a health score, behavior map, page 
   audit, WordPress change log, before / after evolution and an action plan.
 * **Session Recordings** – watch real visits and understand what users actually
   experienced.
 * **Error Tracking** – detect JavaScript errors, network issues, broken links, 
   and Core Web Vitals problems.
 * **Friction Detection** – find rage clicks and dead clicks that signal frustration.
 * **Form Analytics** – measure field-level effort, abandonment, refill behavior,
   and completion time.
 * **User Journey Analytics** – use Sankey-style journey visualization to see common
   paths, exits, and opportunities.
 * **Advanced Heatmap Filtering** – segment heatmaps by country, browser, device,
   visitor type, and date.
 * **Advanced A/B Testing** – use visual edits, targeting, scheduling, WooCommerce
   tests, and revenue attribution.
 * **Pro Smart Insights signals** – errors, rage and dead clicks, slow pages, broken
   links and abandoned forms feed Smart Insights and Page X-Ray, with a session 
   recording as proof when one exists.
 * **Priority Support** – get faster help when optimizing business-critical pages.

🎁 **Try Pro FREE for 6 months** – no credit card required.

[Explore Opti-Behavior Pro](https://optiuser.com/opti-behavior/) | 🚀 [Live Demo](https://demo.optiuser.com/?demo_login=go)

#### 🛡️ Privacy & Performance by Design

Opti-Behavior is made for WordPress site owners who want insight without giving 
up control.

 * **Self-hosted data** – visitor behavior stays on your WordPress server.
 * **No third-party analytics cloud** – analytics data is not sold or shared with
   external behavior platforms.
 * **Privacy controls** – cookie-free anonymous mode by default, IP anonymization,
   retention settings, consent banner and visitor cookie preferences, and uninstall
   cleanup options.
 * **Lightweight tracking** – minified trackers loaded with `defer` never block 
   page rendering, and Hybrid Storage keeps databases lean.
 * **WooCommerce ready** – analyze product pages, carts, checkout funnels, and revenue-
   focused experiments while keeping customer behavior data under your control.

### External Services

This plugin may connect to external services in limited circumstances:

#### IP Geolocation (ip-api.com)

**Purpose:** Provides geographic location data (country, city, timezone) for visitor
analytics and map visualization.

**When Used:** Only when a visitor’s location cannot be determined from CloudFlare
headers. If CloudFlare is active, no external calls are made.

**Data Sent:** Only the visitor’s IP address. No personally identifiable information
is transmitted.

**Caching:** Results are cached for 1 hour to minimize API requests.

**Privacy:**
 * Service: https://ip-api.com/ * Terms & Privacy: https://ip-api.com/
docs/legal * Note: ip-api.com may log IP addresses. Review their privacy policy 
for details.

#### IP Geolocation Fallback (ipwho.is)

**Purpose:** Secondary geolocation fallback when ip-api.com is rate-limited or unavailable.
Provides geographic location data (country, city, region, timezone) for visitor 
analytics.

**When Used:** Only when both CloudFlare headers and ip-api.com fail to resolve 
a visitor’s location. ip-api.com’s free tier has a 45 requests/minute rate limit,
so on high-traffic sites ipwho.is ensures visitors are still geolocated accurately.

**Data Sent:** Only the visitor’s IP address. No personally identifiable information
is transmitted.

**Caching:** Results are cached for 1 hour to minimize API requests.

**Privacy:**
 * Service: https://ipwho.is/ * Terms & Privacy: https://ipwho.is/ *
Note: ipwho.is may log IP addresses. Review their privacy policy for details.

#### OpenStreetMap Tiles

**Purpose:** Displays the interactive visitor location map in your WordPress admin
dashboard.
 **When Used:** Only when YOU (the admin) view the real-time visitor 
map. Not used on the frontend. **Data Sent:** Your browser makes direct requests
to OpenStreetMap tile servers (standard HTTP headers only).

**Privacy:**
 * Service: https://www.openstreetmap.org/ * Tile Policy: https://operations.
osmfoundation.org/policies/tiles/ * Privacy Policy: https://wiki.osmfoundation.org/
wiki/Privacy_Policy

#### OptiUser API (api.optiuser.com)

**Purpose:** Handles anonymous install tracking, plugin deactivation notifications,
Pro trial license generation, license validation, update checks, and download access
code generation for the Pro plugin.

**When Used:**
 * **Install tracker:** Sends a heartbeat once every 24 hours after
activation, containing only: site URL, WordPress version, PHP version, plugin version,
plugin type (free/pro), and one best available administrator contact email when 
a valid contact exists. No visitor data is sent. * **Deactivation:** Notifies the
API when the plugin is deactivated so installation records stay up to date. * **
Pro upgrade pages:** When an admin views a Pro feature upgrade page (Session Recordings,
Error Tracking, User Journeys, Form Analytics), the plugin requests a one-time download
access code from the API. This code is used to securely access the Pro download 
page on optiuser.com.

**Data Sent:** Site URL, WordPress admin username when applicable, and one best 
available administrator contact email for install tracking, Pro trial/license management,
and Pro download access code requests. The plugin selects a single valid contact
email and does not send a list of administrator emails. No visitor analytics data
is ever sent to the API.

**Privacy:**
 * Service: https://api.optiuser.com/ * Website: https://optiuser.com/*
Privacy Policy: https://optiuser.com/privacy-policy/ * The API stores installation
metadata (site URL, plugin version) for license management. No visitor data is collected
or stored by the API.

#### OptiUser Website (optiuser.com)

**Purpose:** Hosts the Opti-Behavior Pro download page and sales/feature pages. 
When an admin clicks “Download Pro — Free for 6 Months” on a Pro upgrade page, they
are redirected to optiuser.com to register and download the Pro plugin.

**When Used:** Only when an admin chooses to download Opti-Behavior Pro from a Pro
upgrade page within the WordPress admin. This is an optional, user-initiated action.

**Data Sent:** Site URL, username, and email address are passed as URL parameters
to pre-fill the registration form. No visitor analytics data is sent.

**Privacy:**
 * Service: https://optiuser.com/ * Privacy Policy: https://optiuser.
com/privacy-policy/

**Important Note:** All analytics data is stored locally on your WordPress server.
The external services listed above are used only for optional geographic features(
ip-api.com, ipwho.is, OpenStreetMap), anonymous install tracking, and Pro license
management (api.optiuser.com). No visitor analytics data ever leaves your server.

### Privacy Policy

Opti-Behavior collects user interaction data to provide analytics insights. This
data includes:

 * Page URLs and titles
 * Click coordinates and target elements
 * Mouse movement patterns
 * Scroll depth
 * Session timestamps
 * Referrer URLs
 * Browser and device information
 * IP addresses (can be anonymized)
 * Approximate location based on browser timezone (client-side only, no external
   services)

**Data Storage:** All analytics data is stored locally in your WordPress database
or file system. No data is sent to external analytics servers.

**External Services:** This plugin may make API calls to ip-api.com and ipwho.is
for IP geolocation when CloudFlare headers are not available. ipwho.is is used as
a secondary fallback when ip-api.com is rate-limited or unavailable. Only the visitor’s
IP address is sent to these services. See the “External Services” section above 
for complete details.

**Usage Tracking:** With your explicit consent (granted via the first-run welcome
screen), this plugin sends usage statistics to api.optiuser.com once every 24 hours.
The data includes: site URL, plugin version, WordPress version, PHP version, and
one best available administrator contact email when a valid contact exists. This
data is used solely to understand plugin adoption, support license/trial email flows,
and improve the product. Tracking only begins after you click “Accept …

## Screenshots

[⌊Real-time WordPress analytics dashboard with visitors, sessions, page views, average
session time, scroll depth, and bounce rate KPIs.⌉⌊Real-time WordPress analytics
dashboard with visitors, sessions, page views, average session time, scroll depth,
and bounce rate KPIs.⌉[

Real-time WordPress analytics dashboard with visitors, sessions, page views, average
session time, scroll depth, and bounce rate KPIs.

[⌊Live visitor activity feed with country flags, anonymized visitor identifiers,
page URLs, and an interactive real-time visitor map.⌉⌊Live visitor activity feed
with country flags, anonymized visitor identifiers, page URLs, and an interactive
real-time visitor map.⌉[

Live visitor activity feed with country flags, anonymized visitor identifiers, page
URLs, and an interactive real-time visitor map.

[⌊Traffic overview chart comparing visitors, sessions, and page views across the
selected date range.⌉⌊Traffic overview chart comparing visitors, sessions, and page
views across the selected date range.⌉[

Traffic overview chart comparing visitors, sessions, and page views across the selected
date range.

[⌊Top engaged users and top pages report showing session frequency, average session
duration, country, page views, and interaction counts.⌉⌊Top engaged users and top
pages report showing session frequency, average session duration, country, page 
views, and interaction counts.⌉[

Top engaged users and top pages report showing session frequency, average session
duration, country, page views, and interaction counts.

[⌊Visitor activity heatmap showing high-traffic days and hours for behavior analytics
and content timing decisions.⌉⌊Visitor activity heatmap showing high-traffic days
and hours for behavior analytics and content timing decisions.⌉[

Visitor activity heatmap showing high-traffic days and hours for behavior analytics
and content timing decisions.

[⌊Audience analytics widgets for new vs returning visitors, visited directories,
and logged-in visitor authentication activity.⌉⌊Audience analytics widgets for new
vs returning visitors, visited directories, and logged-in visitor authentication
activity.⌉[

Audience analytics widgets for new vs returning visitors, visited directories, and
logged-in visitor authentication activity.

[⌊Traffic classification dashboard with human traffic, spam traffic, bot detection,
crawler breakdown, and user intent segmentation.⌉⌊Traffic classification dashboard
with human traffic, spam traffic, bot detection, crawler breakdown, and user intent
segmentation.⌉[

Traffic classification dashboard with human traffic, spam traffic, bot detection,
crawler breakdown, and user intent segmentation.

[⌊Acquisition and environment analytics for referrers, countries, and browser usage.⌉⌊
Acquisition and environment analytics for referrers, countries, and browser usage
.⌉[

Acquisition and environment analytics for referrers, countries, and browser usage.

[⌊Device analytics for desktop, mobile, tablet, operating systems, and screen resolutions.⌉⌊
Device analytics for desktop, mobile, tablet, operating systems, and screen resolutions
.⌉[

Device analytics for desktop, mobile, tablet, operating systems, and screen resolutions.

[⌊Heatmaps overview with total heatmaps, total clicks, mobile traffic, average time
on page, hottest page, click-through rate, and searchable page list.⌉⌊Heatmaps overview
with total heatmaps, total clicks, mobile traffic, average time on page, hottest
page, click-through rate, and searchable page list.⌉[

Heatmaps overview with total heatmaps, total clicks, mobile traffic, average time
on page, hottest page, click-through rate, and searchable page list.

[⌊Click heatmap detail view with date, country, browser, visitor type, desktop/mobile
filters, page preview, and click intensity overlay.⌉⌊Click heatmap detail view with
date, country, browser, visitor type, desktop/mobile filters, page preview, and 
click intensity overlay.⌉[

Click heatmap detail view with date, country, browser, visitor type, desktop/mobile
filters, page preview, and click intensity overlay.

[⌊Move heatmap detail view showing mouse movement trails and visitor movement patterns
on a live page preview.⌉⌊Move heatmap detail view showing mouse movement trails 
and visitor movement patterns on a live page preview.⌉[

Move heatmap detail view showing mouse movement trails and visitor movement patterns
on a live page preview.

[⌊Attention heatmap detail view showing attention intensity and engagement hotspots
on the selected page.⌉⌊Attention heatmap detail view showing attention intensity
and engagement hotspots on the selected page.⌉[

Attention heatmap detail view showing attention intensity and engagement hotspots
on the selected page.

[⌊Scroll heatmap detail view showing scroll-depth intensity, loaded scroll points,
and page-level engagement depth.⌉⌊Scroll heatmap detail view showing scroll-depth
intensity, loaded scroll points, and page-level engagement depth.⌉[

Scroll heatmap detail view showing scroll-depth intensity, loaded scroll points,
and page-level engagement depth.

[⌊Post Analytics panel with entry sources, on-page visitor behavior, exit behavior,
total interactions, scroll depth, bounce rate, and update time.⌉⌊Post Analytics 
panel with entry sources, on-page visitor behavior, exit behavior, total interactions,
scroll depth, bounce rate, and update time.⌉[

Post Analytics panel with entry sources, on-page visitor behavior, exit behavior,
total interactions, scroll depth, bounce rate, and update time.

[⌊Page-level analytics with country, browser, device breakdowns, visitor trends,
heatmap access, and session recording access.⌉⌊Page-level analytics with country,
browser, device breakdowns, visitor trends, heatmap access, and session recording
access.⌉[

Page-level analytics with country, browser, device breakdowns, visitor trends, heatmap
access, and session recording access.

[⌊Pro: Session Recordings list with watched status, duration, visitor activity, 
visited pages, referrer, country, browser, operating system, and device data.⌉⌊Pro:
Session Recordings list with watched status, duration, visitor activity, visited
pages, referrer, country, browser, operating system, and device data.⌉[

Pro: Session Recordings list with watched status, duration, visitor activity, visited
pages, referrer, country, browser, operating system, and device data.

[⌊Pro: Session recording page timeline showing multi-page visitor journeys with 
events, clicks, durations, and replay controls.⌉⌊Pro: Session recording page timeline
showing multi-page visitor journeys with events, clicks, durations, and replay controls
.⌉[

Pro: Session recording page timeline showing multi-page visitor journeys with events,
clicks, durations, and replay controls.

[⌊Pro: Session replay player with visitor metadata, event timeline, playback controls,
skip-inactive mode, and page-by-page session navigation.⌉⌊Pro: Session replay player
with visitor metadata, event timeline, playback controls, skip-inactive mode, and
page-by-page session navigation.⌉[

Pro: Session replay player with visitor metadata, event timeline, playback controls,
skip-inactive mode, and page-by-page session navigation.

[⌊Conversion funnels dashboard showing funnel steps, completion rate, abandonment
rate, device and country filters, and funnel performance cards.⌉⌊Conversion funnels
dashboard showing funnel steps, completion rate, abandonment rate, device and country
filters, and funnel performance cards.⌉[

Conversion funnels dashboard showing funnel steps, completion rate, abandonment 
rate, device and country filters, and funnel performance cards.

[⌊Funnel builder modal for creating or editing URL-based funnel steps with URL match
rules and step ordering.⌉⌊Funnel builder modal for creating or editing URL-based
funnel steps with URL match rules and step ordering.⌉[

Funnel builder modal for creating or editing URL-based funnel steps with URL match
rules and step ordering.

[⌊Pro: User Journey Analytics with journey flow visualization, top paths, entry 
and exit analysis, page groups, device, browser, country, visitor, and referrer 
filters.⌉⌊Pro: User Journey Analytics with journey flow visualization, top paths,
entry and exit analysis, page groups, device, browser, country, visitor, and referrer
filters.⌉[

Pro: User Journey Analytics with journey flow visualization, top paths, entry and
exit analysis, page groups, device, browser, country, visitor, and referrer filters.

[⌊Pro: Errors Tracking dashboard for JavaScript errors, network errors, friction
events, rage clicks, slow pages, affected sessions, performance, and broken links.⌉⌊
Pro: Errors Tracking dashboard for JavaScript errors, network errors, friction events,
rage clicks, slow pages, affected sessions, performance, and broken links.⌉[

Pro: Errors Tracking dashboard for JavaScript errors, network errors, friction events,
rage clicks, slow pages, affected sessions, performance, and broken links.

[⌊Pro: Form Analytics dashboard with form views, submissions, conversion rate, completion
time, abandonments, activity trends, and top forms by conversion.⌉⌊Pro: Form Analytics
dashboard with form views, submissions, conversion rate, completion time, abandonments,
activity trends, and top forms by conversion.⌉[

Pro: Form Analytics dashboard with form views, submissions, conversion rate, completion
time, abandonments, activity trends, and top forms by conversion.

[⌊Privacy and GDPR settings comparing anonymous mode and full tracking for cookies,
IP storage, geolocation, consent, session accuracy, and user journey tracking.⌉⌊
Privacy and GDPR settings comparing anonymous mode and full tracking for cookies,
IP storage, geolocation, consent, session accuracy, and user journey tracking.⌉[

Privacy and GDPR settings comparing anonymous mode and full tracking for cookies,
IP storage, geolocation, consent, session accuracy, and user journey tracking.

[⌊Consent banner configuration with third-party consent plugin detection, banner
position controls, colors, title, and message settings.⌉⌊Consent banner configuration
with third-party consent plugin detection, banner position controls, colors, title,
and message settings.⌉[

Consent banner configuration with third-party consent plugin detection, banner position
controls, colors, title, and message settings.

[⌊A/B Testing dashboard with running tests, drafts, completed tests, impressions,
search, filters, conversion rate, and test results actions.⌉⌊A/B Testing dashboard
with running tests, drafts, completed tests, impressions, search, filters, conversion
rate, and test results actions.⌉[

A/B Testing dashboard with running tests, drafts, completed tests, impressions, 
search, filters, conversion rate, and test results actions.

[⌊A/B Testing decision engine results with weighted goals, recommended winner, composite
score by variant, per-goal breakdown, and Pro-only heatmap impact by variant.⌉⌊A/
B Testing decision engine results with weighted goals, recommended winner, composite
score by variant, per-goal breakdown, and Pro-only heatmap impact by variant.⌉[

A/B Testing decision engine results with weighted goals, recommended winner, composite
score by variant, per-goal breakdown, and Pro-only heatmap impact by variant.

[⌊A/B Testing click-goal results with statistical significance, confidence, goal
configuration, variant conversion rates, winner status, Pro-only Bayesian analysis,
and conversion trend chart.⌉⌊A/B Testing click-goal results with statistical significance,
confidence, goal configuration, variant conversion rates, winner status, Pro-only
Bayesian analysis, and conversion trend chart.⌉[

A/B Testing click-goal results with statistical significance, confidence, goal configuration,
variant conversion rates, winner status, Pro-only Bayesian analysis, and conversion
trend chart.

[⌊Smart Insights: one card per problem, ranked by the visitors it costs, with confidence,
evidence, the next action and a "How it works" strip showing what each module sent.⌉⌊
Smart Insights: one card per problem, ranked by the visitors it costs, with confidence,
evidence, the next action and a "How it works" strip showing what each module sent
.⌉[

Smart Insights: one card per problem, ranked by the visitors it costs, with confidence,
evidence, the next action and a “How it works” strip showing what each module sent.

[⌊Smart Insights notification panel with new problems and the admin menu light (
red, yellow, green).⌉⌊Smart Insights notification panel with new problems and the
admin menu light (red, yellow, green).⌉[

Smart Insights notification panel with new problems and the admin menu light (red,
yellow, green).

[⌊How it works page: the seven collectors with your own numbers, the four-step loop,
the Setup check and the first-days checklist.⌉⌊How it works page: the seven collectors
with your own numbers, the four-step loop, the Setup check and the first-days checklist
.⌉[

How it works page: the seven collectors with your own numbers, the four-step loop,
the Setup check and the first-days checklist.

[⌊Pro: Page X-Ray report with health score, behavior map, page audit, WordPress 
changes and action plan.⌉⌊Pro: Page X-Ray report with health score, behavior map,
page audit, WordPress changes and action plan.⌉[

Pro: Page X-Ray report with health score, behavior map, page audit, WordPress changes
and action plan.

[[

[[

## Installation

#### Automatic Installation

 1. Log in to your WordPress admin panel
 2. Navigate to Plugins > Add New
 3. Search for “Opti-Behavior”
 4. Click “Install Now” and then “Activate”

#### Manual Installation

 1. Download the plugin zip file
 2. Log in to your WordPress admin panel
 3. Navigate to Plugins > Add New > Upload Plugin
 4. Choose the downloaded zip file and click “Install Now”
 5. After installation, click “Activate Plugin”

#### After Activation

 1. Navigate to **Opti-Behavior** in your WordPress admin menu. The menu has two groups:**
    Your data** and **What to fix**.
 2. The plugin starts tracking automatically – no configuration required!
 3. Open **How it works**: the Setup check confirms that visits are received and offers
    to exclude your own visits.
 4. Visit **Traffic** to see real-time visitor activity and **Heatmaps** to see where
    visitors click and scroll.
 5. Open **Funnels**: Opti-Behavior proposes ready-made funnels for your site type,
    created in one click.
 6. Check **Smart Insights**: the first cards usually come after about 100 visits on
    a page, and the menu light turns red, yellow or green.
 7. Adjust **Settings** to customize tracking behavior and privacy options.

That’s it! Opti-Behavior works out of the box with smart defaults.

## FAQ

### Is there a live demo I can try?

Yes! You can explore the full Opti-Behavior dashboard instantly at [demo.optiuser.com](https://demo.optiuser.com/?demo_login=go)–
no installation, no account, no credit card required. Browse real heatmaps, funnels,
A/B tests, and Smart Insights before installing.

### How does Smart Insights decide what to fix first?

By the visitors each problem costs. Every card counts the visits it touches and 
the visitors it loses, compares the page with your site average, and gets a confidence
level from the number of visits measured. A card is “Critical” only with enough 
visits, high confidence and a loss that matters on your site; cards built on few
visits are marked “Provisional”. Money is shown only for a checkout funnel with 
at least 20 orders or a form with your own value of a conversion. When you fix a
problem, mark the card as resolved: Opti-Behavior measures the period after your
change and shows the result.

### Why don’t I see any insights yet?

Smart Insights needs data first: the first cards usually come after about 100 visits
on a page. Open **How it works**: its Setup check tells you whether visits are received,
whether a caching or optimization plugin blocks a tracker, and whether your own 
visits are counted (exclude them for cleaner data).

### What is Page X-Ray?

Page X-Ray is the per-page report of Smart Insights, in Opti-Behavior Pro. It answers“
why doesn’t this page convert?” with a health score, what the page is for and whether
visitors reach its main button, a behavior map, a page audit (clarity, buttons, 
trust, content, sharing), the WordPress changes that came before a problem, a before/
after comparison and an action plan. The free plugin shows the tab with an example
report.

### Does this plugin slow down my website?

Opti-Behavior is designed to stay lightweight. The tracking scripts are minified
and loaded with `defer`, so they never block page rendering, events are batched,
and the Hybrid Storage engine can store high-volume analytics events in optimized
files instead of writing every interaction directly to MySQL. As with any analytics
tool, performance depends on hosting, traffic volume, and settings, but the plugin
is built to minimize frontend impact.

### Is this plugin GDPR compliant?

Opti-Behavior includes privacy controls that help with GDPR-friendly analytics: 
self-hosted data storage, IP anonymization, data retention controls, cookie-free
anonymous tracking by default, a built-in consent banner (or your consent plugin)
before Full Tracking sets any cookie, and the `[opti_behavior_cookie_settings]` 
shortcode so visitors can change or withdraw their choice at any time. You should
still update your privacy policy and confirm your setup with your own legal requirements.

### Is this plugin CCPA compliant?

Opti-Behavior supports CCPA-friendly practices because visitor behavior data stays
on your server and is not sold by Opti-Behavior. You can anonymize IP addresses,
delete stored data, and use your existing consent or opt-out workflow before tracking
starts.

### How is this different from Microsoft Clarity?

Clarity is cloud-based and Microsoft may process behavioral data under its own terms.
Opti-Behavior is WordPress-native and self-hosted, so visitor behavior data stays
on your server. Opti-Behavior also includes funnels, scheduled reports, bot filtering,
self-hosted A/B testing, and Smart Insights that ranks what to fix first and checks
whether your fix worked.

### How is this different from Hotjar?

Hotjar sends behavior data to an external cloud and many advanced features require
paid plans. Opti-Behavior keeps behavior analytics inside WordPress, includes heatmaps
and funnels in the Free plugin, and adds recordings, form analytics, journeys, errors,
and advanced A/B testing in Pro.

### How is this different from Matomo?

Matomo is strong self-hosted analytics, but many behavior features are separate 
premium add-ons. Opti-Behavior focuses specifically on behavior analytics and conversion
optimization for WordPress: heatmaps, funnels, A/B testing, recordings, forms, journeys,
and friction insights.

### Are there any session or pageview limits?

There are no artificial SaaS-style session caps in the plugin. Your practical limit
is your own server storage, database capacity, and retention settings.

### Can I export my data?

Yes. Analytics data can be exported from the dashboard where export tools are available.

### Does this work with caching plugins?

Yes. Opti-Behavior is designed to work with common WordPress caching plugins such
as WP Rocket, LiteSpeed Cache, W3 Total Cache, Autoptimize, SG Optimizer, and WP
Super Cache.

### Will this work on multisite?

Yes. Opti-Behavior supports WordPress multisite and can be activated network-wide
or on individual sites.

### Does this plugin call any external services?

Yes, only for specific supporting features such as geolocation, admin map tiles,
anonymous install tracking after consent, Pro trial/license management, and user-
initiated OptiUser website links. See the **External Services** section below for
details.

### What data does this plugin collect?

Depending on settings, Opti-Behavior can collect page views, URLs, click positions,
scroll depth, session timestamps, referrers, device/browser data, anonymized IP 
data, approximate location signals, and interaction metadata. It does not collect
form field values by default, and analytics data is stored locally in your WordPress
database or file system.

### Can I delete all data when uninstalling?

Yes. Enable **Delete all data on uninstall** in Settings to remove stored plugin
data when the plugin is uninstalled.

### My host is busy or shared — how do I keep the plugin light on the server?

Two settings make the biggest difference. First, run WP-Cron from a real server 
cron instead of inside visitor page loads: add `define( 'DISABLE_WP_CRON', true );`
to `wp-config.php` and have your host call `wp-cron.php` every 5 minutes. Cleanup,
reports and database upkeep then never run inside a visitor request. Second, keep
the default “Posts & Pages Only” heatmap scope and the default data retention so
tables stay small. All heavy maintenance (index changes, table conversion, OPTIMIZE)
is size-capped and time-boxed, and every frontend tracking request is rate-limited
so concurrent visitors cannot pile up on the database.

### Does it work with WooCommerce?

Yes. Use Opti-Behavior to analyze product pages, cart behavior, checkout funnels,
CTA clicks, and revenue-focused A/B tests while keeping customer behavior data under
your control.

### Does it work with page builders?

Yes. Opti-Behavior works with Gutenberg, Elementor, Divi, Beaver Builder, WPBakery,
and other major WordPress builders.

### What is the Hybrid Storage Engine?

Hybrid Storage is Opti-Behavior’s performance-focused storage approach. Instead 
of pushing every click, scroll, and pageview directly into MySQL, high-volume events
can be stored in optimized files and aggregated for faster reporting. This helps
reduce database bloat on busy sites.

### How do I get support?

Free users can use the WordPress.org support forum. Pro users get priority support
through OptiUser.

## Reviews

![](https://secure.gravatar.com/avatar/840d318e4cb8b6d0c9e9d42ec8f2801660ddd85f3ea37d616171bb01c930ccc6?
s=60&d=retro&r=g)

### 󠀁[Excellent stats, optimised for speed](https://wordpress.org/support/topic/excellent-stats-optimised-for-speed/)󠁿

 [Pete](https://profiles.wordpress.org/hekai/) September 22, 2026

Early versions (before 1.9.1) focused on adding features – *lots* of them. Impressive
as that was, they dented Lighthouse performance a *little*. After a brief word with
the (very helpful) team, they soon fixed that. Providing such rich, privacy-focused
analytics data within the admin area, yet with *zero* significant impact on site
speed and no connections to external services, is impressive. Definitely worth trying
if you're serious about optimising your site.

![](https://secure.gravatar.com/avatar/1a57338a0d795ca4ce0f7c447dd88f77b1ed6f8465c73d21e403760098c61d6e?
s=60&d=retro&r=g)

### 󠀁[More Than an Analytics Plugin , A Developer Who Truly Listens](https://wordpress.org/support/topic/more-than-an-analytics-plugin-a-developer-who-truly-listens/)󠁿

 [jeandupon](https://profiles.wordpress.org/jeandupon/) August 1, 2026

I've tested many analytics plugins, and Opti-Behavior is one of the most impressive.
It brings a clean, native WordPress analytics experience without unnecessary complexity.
The developer is also amazing & very responsive, open to feedback, and genuinely
cares about users. I suggested a few features for the free version, and some of 
them were actually added. That level of support is rare. Highly recommended.

![](https://secure.gravatar.com/avatar/033c114913cf6614951425e698df8715477b7401e2d925f978bc4a69ac50df15?
s=60&d=retro&r=g)

### 󠀁[Helpful for seeing what visitors actually do](https://wordpress.org/support/topic/helpful-for-seeing-what-visitors-actually-do/)󠁿

 [damiengallou](https://profiles.wordpress.org/damiengallou/) May 19, 2026

I installed Opti-Behavior on one of my WordPress sites because I wanted to understand
why people were leaving a page that I thought was clear. After checking the heatmap
and scroll data, I noticed that visitors were not really reaching the section I 
expected them to see, and some clicks were happening in places I didn’t expect. 
The setup was not complicated, and I liked that I could see everything directly 
inside WordPress instead of opening another platform. For me, the most useful part
is that it shows behavior in a visual way, not just numbers. It helped me make a
few small changes to the layout and move an important button higher on the page.
I’m still testing it, but so far it feels practical and useful, especially for improving
pages based on real visitor behavior instead of just guessing.

![](https://secure.gravatar.com/avatar/d06f076d9a21c7ab28b2324fd29a75c1908a7bb855e03afd037f38d8a8b21b00?
s=60&d=retro&r=g)

### 󠀁[Good plugin. Solid free version](https://wordpress.org/support/topic/good-plugin-solid-free-version/)󠁿

 [mariamilano](https://profiles.wordpress.org/mariamilano/) April 6, 2026

Honestly didn't expect much when I installed this. There are so many analytics plugins
that promise everything and deliver nothing. Been using it for 3 days now. The thing
that actually surprised me was the form analytics. I've never seen a WordPress plugin
that shows you exactly how people interact with each field, how long they stay on
it, where they stop and leave. Found a real issue on my contact form in like 20 
minutes. One field was killing my submissions and I had no idea. Everything runs
on my own server which was important to me. Not a fan of sending my visitors' data
to Microsoft or whoever. Still waiting for the WooCommerce features they mentioned.
That's the main reason I'll be sticking around. If that works half as well as the
form analytics, it'll be worth it.

![](https://secure.gravatar.com/avatar/49a4e4698f6312c5e193e1ad347f6e76642c744827ba7296981eef6a8d6bef27?
s=60&d=retro&r=g)

### 󠀁[Wow, this plugin is actually awesome!](https://wordpress.org/support/topic/wow-this-plugin-is-actually-awesome/)󠁿

 [devanharoun](https://profiles.wordpress.org/hamdouch/) March 29, 2026

I got to test the Pro plan for free and honestly… I’m blown away! 😄Opti Behavior
is a real all-in-one beast for understanding your website traffic. It shows you 
exactly how people are moving around your site and, most importantly, what you actually
need to optimize to make things better.

 [ Read all 5 reviews ](https://wordpress.org/support/plugin/opti-behavior/reviews/)

## Contributors & Developers

“Opti-Behavior – Self-Hosted Heatmaps, Session Recordings, Funnels, A/B Testing &
Smart Insights” is open source software. The following people have contributed to
this plugin.

Contributors

 *   [ OptiUser ](https://profiles.wordpress.org/optiuser/)

“Opti-Behavior – Self-Hosted Heatmaps, Session Recordings, Funnels, A/B Testing &
Smart Insights” has been translated into 1 locale. Thank you to [the translators](https://translate.wordpress.org/projects/wp-plugins/opti-behavior/contributors)
for their contributions.

[Translate “Opti-Behavior – Self-Hosted Heatmaps, Session Recordings, Funnels, A/B Testing & Smart Insights” into your language.](https://translate.wordpress.org/projects/wp-plugins/opti-behavior)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/opti-behavior/), check
out the [SVN repository](https://plugins.svn.wordpress.org/opti-behavior/), or subscribe
to the [development log](https://plugins.trac.wordpress.org/log/opti-behavior/) 
by [RSS](https://plugins.trac.wordpress.org/log/opti-behavior/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 1.9.2.1 – 2026-09-25

 * **Security:** Hardening from the WordPress.org security review. Funnel events
   are tied to the visitor’s own session cookie, so a public request can no longer
   report made-up sessions, and new funnel entries are limited per visitor IP. Forwarding
   headers (X-Forwarded-For, Client-IP, CF-Connecting-IP) are only trusted from 
   Cloudflare or from a reverse proxy on your own network. Visitor IP addresses 
   are never sent to a geolocation service before the visitor accepts the consent
   banner, and outbound geolocation lookups are limited per minute.
 * **Fix:** Translation files no longer contain pieces of source code in their translator
   comments (a build tool copied them by mistake; security scanners reported them
   as suspicious). Translations are unchanged.

#### 1.9.2 – 2026-09-25

 * **Security:** Fixed an unauthenticated stored cross-site scripting issue in the
   post analytics box and the dashboard (CVE-2026-95686, CVE-2026-95809, reported
   through Wordfence). Link addresses, referrers and location data sent by the public
   tracker are now validated before they are stored, the country name is always 
   resolved by the server, values already stored are cleaned when they are read 
   back, and every value is escaped before it is displayed. Update recommended.
 * **New:** “How it works” page (was Roadmap): an animated view of the seven collectors
   feeding Smart Insights with your own numbers, the four-step loop, a first-days
   checklist, the Free and Pro modules, the latest release notes, the roadmap and
   support. Its “Setup check” card shows whether visits are received, whether a 
   caching or optimization plugin blocks a tracker and whether your own visits are
   counted, with a button to fix each item.
 * **Fix:** Spam filter — after saving the Traffic & Behavior thresholds, the spam
   recalculation could flag every session as spam (“few scrolls”), so “Exclude spam”
   hid all recordings, sessions and stats. The recalculation and the scheduled spam
   cleanup now read scrolls and clicks from the same sources as the rest of the 
   plugin, and sessions wrongly flagged by 1.9.1 are re-checked automatically in
   the background after the update. Nothing to do on your side.
 * **Fix:** A click on a cookie / consent banner no longer counts as a visitor click,
   so a visitor who only answered the banner is no longer counted as engaged when
   spam is excluded. Single-page visits are no longer counted as having at most 
   one scroll.
 * **New:** Admin menu in two groups: “Your data” (Traffic, Heatmaps, Recordings,
   Funnels, User Journeys, Errors Tracking, Forms), then “What to fix” (Smart Insights,
   A/B Testing). The Dashboard is now “Traffic”, with a chart icon; its page is 
   titled “Traffic Overview”. The Smart Insights menu item pulses in the colour 
   of your open problems: red = a Critical problem, yellow = High or Medium, green
   = nothing to fix. Nothing is computed on page load and nothing is added to the
   public site.
 * **New:** Cookie preferences shortcode — paste `[opti_behavior_cookie_settings]`
   into your Privacy or Cookie Policy page: visitors see their current choice and
   can change or withdraw it at any time (GDPR art. 7). Withdrawing removes the 
   tracking cookies and identifiers immediately and tracking falls back to cookie-
   free anonymous mode. `[opti_behavior_cookie_settings display="link"]` (or the
   CSS class `ob-consent-open` on any link) reopens the banner instead. Settings
   Privacy & GDPR.
 * **Privacy:** The visitor’s consent choice is now remembered for 6 months by default(
   CNIL recommendation); 12 months remains available in Settings  Privacy & GDPR.
   When the choice expires or is refused, the identifiers stored under the earlier
   consent are removed from the browser. A/B tests in Full Tracking mode write the
   variant cookie only after the visitor accepts the consent banner; until then 
   tests keep running cookie-free, exactly like Anonymous mode, and a visitor who
   accepts later keeps the variant already seen.
 * **New:** Smart Insights “How it works” strip: what each module sent over the 
   period, then what was found, fixed and confirmed.
 * **New:** Page X-Ray, the per-page report of Smart Insights, is part of Opti-Behavior
   Pro. In the free version the “Page X-Ray” tab shows a lock and a PRO badge, what
   the tab does and an example report; the “Dossier” button of the heatmap list 
   carries the same lock.
 * **New:** Two one-time messages, on Opti-Behavior screens only: 2 days after installation,
   if your own visits are still counted, an offer to exclude them; after an update,
   a note that the menu changed, with a link to the guide. The welcome popup now
   ends on the “How it works” page, and the welcome screen and popup say “Smart 
   Insights” (was “AI Insights”).
 * **Changed:** Smart Insights cards are more reliable. Confidence comes from the
   number of visits measured (a 65-visit card is Medium at most) and Critical must
   be earned: enough visits measured, High confidence and a loss that matters on
   this site. Cards with the same numbers get the same priority, “Worse” / “Better”
   needs a real change, site-wide cards no longer read “Observation on 0 sessions”,
   cards with identical data are merged into one, and a “Provisional · N visits”
   badge marks cards built on few visits.
 * **Changed:** Funnel drop-off cards name the step visitors leave (“between Product
   and Cart, 60 of 90 visitors leave”), count visits instead of tracking rows, need
   two steps and 50 visits, show a “Where visitors leave” step bar and open the 
   funnel on that step. The end-to-end drop rule, true of almost every funnel, is
   gone, and the Funnels page warns when two funnels track the same steps.
 * **Changed:** Smart Insights money figures are real: an amount “at risk” is shown
   only for a funnel that ends at the checkout (with at least 20 orders over the
   period) or for a form priced with your own value of a conversion. Content funnels,
   errors, slow pages and engagement drops show the visitors they lose instead of
   a dollar figure, and amounts computed by the previous rule are no longer displayed.
 * **Changed:** Insight details say each thing once, show “Things to check” when
   nothing was measured, show no lift range without a published source, and show
   the “Result” of a resolved card (before, after, verdict or the day the measurement
   ends). Cards the new rules no longer confirm close as “Closed: rule updated” 
   and never count as resolved.
 * **Changed:** Heatmap page: each device button shows its icon above the number
   and keeps the same width whatever the number (12 k above 9 999, exact number 
   on hover); Views, Clicks and Avg Time sit on the same row as the heatmap types.
 * **Fix:** Smart Insights: a custom date range that ends before it starts shows
   a clear message; the notification panel no longer lists locked Pro previews one
   by one and no longer covers the buttons of the A/B test wizard; high bounce and
   low scroll cards use one rule (30 visits, same limits, same comparison with the
   site average).
 * **Fix:** Heatmaps: the background tasks no longer schedule the same hourly job
   twice or queue pages without an ID again and again, and the action buttons of
   the heatmap list no longer overlap the “Last Updated” column.
 * **Fix:** Danger Zone: “Heatmap Data” now counts and deletes the archived heatmaps
   too, deleting Smart Insights resets the menu colour at once, and a reset is recorded
   in Cleanup History. Cleanup History folds repeated runs that deleted nothing 
   into one entry and only says “deleted” when something was deleted.
 * **Fix:** Funnels: a link to a funnel opens the list page that contains it, and
   the suggestions panel keeps both display choices when they are clicked quickly.
 * **Fix:** Dashboard: the real-time visitors globe shows again for visitors without
   a country, instead of a raw code snippet, and the User Intent card no longer 
   shows rows of zeros above its empty state.
 * **Fix:** Translations: Smart Insights is fully translated (spam filter button,
   one label per category), the plugin’s own admin language now also applies to 
   Smart Insights and Forms, the deactivation survey and about 100 Portuguese strings
   carry their accents, and every new string is translated in French, German, Spanish,
   Italian and Portuguese.

#### 1.9.1 – 2026-09-18

 * **Feature:** Heatmaps only where they matter — recorded for posts, pages, products,
   home and shop; tag, category, author, date, search and paginated archives no 
   longer create one heatmap per URL. Existing archive-page heatmaps are archived
   in the background and can be restored in one click (Settings  Data Collection).
 * **Feature:** Database size caps — optional global and per-table caps (Data Retention
   Advanced). Oldest raw rows go first; the last 7 days and dashboard summaries 
   are always kept.
 * **Feature:** Cleanup Tasks — “Run all now”, plus two new tasks: “Database size
   cap” and “Database schema upkeep”.
 * **Changed:** Page speed — frontend trackers are minified and loaded with `defer`:
   nothing blocks rendering, tracker weight drops by about half. Tracking behaviour
   is unchanged.
 * **Changed:** Smaller database — the heatmap events table is up to 10x smaller,
   duplicate indexes are dropped automatically, and all tables use InnoDB (older
   MyISAM tables are converted in the background).
 * **Changed:** Tables shared with Opti-Behavior Pro are now defined once, in Free.
   Both plugins can be updated in any order without data loss.
 * **Changed:** Funnels page — Suggested Funnels comes first when you have no funnels;
   your funnel list leads once you do.
 * **Changed:** Clearer data-retention summary, WP-Cron hint under Settings  Reports,
   and all new strings translated in French, German, Spanish, Italian and Portuguese.
 * **Changed:** Passes the WordPress.org Plugin Check with no errors and no warnings.
 * **Fix:** Server stability on busy sites — cache sweeps on `wp_options` no longer
   cause “Lock wait timeout exceeded”; the realtime “Active visitors” widget uses
   an indexed query and polls every 15 s; heatmap files are written atomically under
   a per-page lock; daily database upkeep is size-capped.
 * **Fix:** `Duplicate entry … for key PRIMARY` on the visitors table when two first
   hits raced.
 * **Fix:** Cleanup now respects every retention window — heatmap files, recording
   side files, archived heatmap data, bot visit logs, error summaries and 404 reports
   no longer grow without limit.
 * **Fix:** Dashboard CSV export no longer leaves a temporary file behind; the archive-
   page cleanup “Configure” link opens the right tab.

#### 1.9.0 – 2026-09-08

 * **Feature:** Smart Insights v2 — insights are ranked by measured cost (the visitors
   and conversions actually lost, blended with severity and confidence) and labelled
   Critical/High/Medium/Low by rank inside the batch, so a busy site gets a short
   ordered shortlist instead of dozens of “high priority” items. Thinly observed
   signals are flagged as observations to confirm instead of being promoted.
 * **Feature:** Business impact in money — when a value per conversion is known,
   cards and the detail modal show the exposure (“≈ $1,240 at risk this period”)
   with the drop-off count, conversion rate and order value behind it. A new “Value
   of one conversion” setting covers sites without readable WooCommerce order history;
   WooCommerce data takes precedence.
 * **Feature:** “Where is the problem?” — every insight now names the audience carrying
   it. The segment split is computed on the real behaviour tables across 8 dimensions(
   device, browser, country, traffic source, campaign, new vs returning, time of
   day, day type) with a significance test, comparison bars you can click to re-
   scope the evidence, and a daily chart of the metric with the previous period 
   behind it and a “first detected” marker.
 * **Feature:** Outcome verification — resolving an insight freezes its “before”
   measurement and a daily job re-measures the same signal over the two weeks that
   follow. Resolved cards carry a “Fixed —  ” chip, the weekly brief gained a “Wins
   this month” block, and the CSV export gained `outcome_verdict` and `outcome_change`
   columns. Too little post-fix traffic stores an honest `inconclusive` verdict 
   instead of a win.
 * **Feature:** Automatic funnel creation — Opti-Behavior detects what kind of site
   you run (WooCommerce, Easy Digital Downloads, blog/content, lead generation, 
   signup, membership, LMS, booking) and suggests ready-made funnels on the Funnels
   page, with one-click creation, a “Set up recommended funnels” bulk action, and
   a “Customize” path that opens the normal builder pre-filled.
 * **Feature:** Suggested funnel steps resolve their URLs through each source plugin’s
   own API, so localized slugs (`/panier/`, `/commander/`, `/kasse/`) are used as-
   is. Funnels record where they came from (`source` / `recipe_id`) so re-scanning
   never creates duplicates, and a “Re-scan site” button plus a per-card Dismiss
   keep the list under your control. New `opti_behavior_funnel_site_context`, `opti_behavior_funnel_recipes`
   and `opti_behavior_funnel_recipe_steps` filters and an `opti_behavior_funnel_created`
   action for developers.
 * **Feature:** With Opti-Behavior Pro, a funnel created from a suggestion is backfilled
   from your existing session history so it opens with real numbers, alongside Pro-
   tier recipes, data-driven “discovered” funnels and a weekly automatic re-scan.
 * **Changed:** The insight detail modal is readable again — it lists only the reports
   you can actually open (the rest collapse behind one line), caps recommended actions
   at three and reconciles their wording against those reports, shows the measured
   probe-ranked causes with their values, and drops the empty placeholder sections.
   Traffic-source insights of the same signal collapse into a single list card, 
   and the weekly CRO summary opens with the three costliest issues instead of a
   count.
 * **Changed:** Smart Insights opens on Last 3 Months by default (new period option),
   and the Suggested Funnels panel collapses to a one-line summary (“2 new · 8 created”)
   once you have funnels.
 * **Changed:** Scheduled cleanup no longer stalls on spam-heavy sites. Spam, bot
   and automated sessions are an exempt class the daily tier purges unconditionally
   within its per-run cap, the mass-delete safety limit is measured on the non-spam
   rules against the non-spam session count only, and a tripped limit produces a
   logged partial run instead of cancelling the whole run. New `opti_behavior_cleanup_spam_bypasses_safety_limit`
   escape hatch, and Cleanup History collapses repeated identical entries.
 * **Changed:** Scheduled cleanup “Maximum sessions per run” default raised from
   5000 to 50000 — installs still on the old default are migrated once, custom values
   are preserved.
 * **Changed:** All funnel and user-journey admin messages are translatable; all
   5 locale catalogs were refreshed.
 * **Fix:** Report links now arrive already filtered. Opening a report from an insight
   used to land on an unfiltered view: the Analytics dashboard applies the incoming
   device, browser, country, OS, traffic source, campaign, medium, channel, visitor-
   type and entry/exit-page parameters to its first data request, funnel links open
   the funnel they name on the window the insight was measured on, internal segment
   keys are decoded to the values the reports really filter on, and device values
   match regardless of case.
 * **Fix:** Concurrent first-visit tracking requests could return HTTP 500 through
   a visitor/session insert race.
 * **Fix:** Previous-period trends were empty on every insight — the previous window
   inherited the current window’s minimum-sessions filter, device insights were 
   never given a previous period, and Pro-produced error, form and segment insights
   were skipped entirely.
 * **Fix:** Funnel insights offered no session recordings and site-wide error or
   friction insights were collapsed as “not applicable”; both now open the exact
   scope they were measured on.
 * **Fix:** “Direct” was missing from the Form Analytics referrer filter options.
 * **Fix:** Heatmap detail applies a desktop viewport floor, so a narrow reference
   width no longer selects a mobile or tablet breakpoint.
 * **Fix:** “Could not load funnel suggestions” on busy, memory-constrained hosts—
   funnel requests now raise the admin memory limit like the rest of the admin, 
   and the suggestions panel retries its first load once.

#### 1.8.3 – 2026-08-27

 * Added: Filter Profiles — save a named set of advanced-filter values (Visitor,
   Session, Pages & Traffic, UTM) and reuse it across the Analytics Dashboard, Funnels,
   and Pro screens. Save / Edit control sits next to Apply / Reset; date range is
   never stored.
 * Added: configurable cache purge after funnel modification. New Funnels setting
   to purge all page caches on every save/delete/status change (default) or never.
   With “Never”, cached pages keep the old funnel config until the cache expires.
   Per-mutation override via the new `opti_behavior_should_purge_cache` filter (
   receives the action and funnel ID).
 * Added: schema parity for Pro’s Error Tracking visitor filters. Error, friction,
   and performance tables now store visitor country; friction and performance also
   store OS. Existing rows are backfilled. Data-model change only — no free-side
   behavior change.
 * Fixed: cached-page visitor merging — anonymous visitor and session IDs baked 
   into cached HTML made every direct visitor count as one visitor in one session.
   Identity is now recomputed server-side on each (uncached) tracking request, preserving
   cookieless privacy.
 * Fixed: cached-page traffic under-counting — a stale baked nonce caused bounce
   visits to go unrecorded. The page-view/session-start request now re-sends once
   with the fresh nonce, and click batches queued during a refresh are preserved.
 * Fixed: cached-page funnel under-counting — with two or more active funnels, a
   stale nonce silently dropped every step past the first. Funnel tracking now refreshes
   the nonce once and re-sends each step.
 * Changed: lockstep release keeping free and Pro version numbers in sync with Pro’s
   Error Tracking filter enhancement. Free-side change is limited to a shared filter-
   ui stylesheet sync.

#### 1.8.2 – 2026-08-16

 * New: re-architected, user-configurable data retention — set your own tiered retention
   periods so the plugin auto-manages storage, keeps the database lean and stops
   resource/space bloat, all from a rebuilt Smart Cleanup screen.
 * New: visitor-segment filtering — slice dashboard stats and every heatmap page
   by visitor type and attributes, so you can read behavior per segment.
 * Enhancement: heatmap list and detail pages now scale to 500K+ recording files,
   with faster heatmap table loading on large datasets.
 * Fixed: heatmap session totals are now consistent across the list, filters and
   detail page (the reset floor is applied everywhere).
 * Enhancement: redesigned heatmap detail page — filter option counts scoped to 
   the hero session set, detail date inputs synced with the presets, and a more 
   compact stats layout.
 * Enhancement: never-synced pages are merged into the heatmap fast path instead
   of forcing a full scan.
 * Fixed: cache poisoning — bot and IP exclusion moved from asset enqueue to data
   ingest, so cached pages no longer skew stats.
 * Fixed: session-duration over-accumulation and spam-excluded average session time.
 * Fixed: A/B variant filters are treated as advanced result filters, and stale/
   under-counted filter options under A/B variant scope are corrected.
 * Enhancement: simplified the sessions pill tooltip to single-number semantics.
 * Enhancement: Top Pages widget redesigned with a stacked layout; the Top Engaged
   Users table now fills the widget height instead of a fixed 380px cap.
 * Fixed: on large sites, upgrading could make the site unreachable — heavy database
   migrations and index builds now run in the background (one step per cron tick,
   resumable), never in a web or AJAX request.
 * Enhancement: the storage stats tab now loads asynchronously to stop long blank-
   page waits.
 * Enhancement: debug mode auto-disables after 3 hours and debug JavaScript is no
   longer loaded when debug is off.
 * Fixed: the Admin Language setting had no effect on WordPress 6.7+ — translations
   now load through WordPress’s standard pipeline, with a new “Same as WordPress”
   default, and all locale catalogs were refreshed.

#### 1.8.1 – 2026-08-01

 * Fix: Bug in the last update that stopped the plugin.

#### 1.8.0 – 2026-08-01

 * New: Interactive heatmap preview — click to expand accordions, menus, popups 
   and other collapsed elements directly inside the preview, with clicks anchored
   to their element and redrawn correctly as it’s shown/hidden. Preview now also
   renders at the selected device’s real viewport width (mobile/tablet/desktop),
   so heatmaps match the actual responsive layout.
 * New: IP exclusion setting to exclude specified addresses from tracking.
 * Fix: Guest preview iframe AJAX/REST requests failed nonce checks by running with
   admin cookies instead of the guest context.
 * Enhancement: Tracker assets are cache-busted/versioned with the plugin version,
   and the anon broker script is registered in the optimizer-compat registry so 
   cache/optimizer plugins never delay it.
 * Enhancement: Filter-bar buttons on the heatmap page aligned to filter select 
   height; “All devices” view reprojects anchored clicks onto the current layout
   for consistent hotspots.

#### 1.7.2 – 2026-07-15

 * Smart Insights now show when each signal was detected (relative time with exact
   date on hover), and saving Traffic Classification settings no longer resets “
   Track admin users”.

#### 1.7.1 – 2026-07-12

 * Major cache/optimizer compatibility release: unified exclusion layer, early-click
   capture queue, tracker heartbeat warning, A/B nonce auto-refresh and retries,
   funnel exact-match and analytics fixes, and ~90% fewer admin-ajax requests.

#### 1.7.0 – 2026-07-04

 * Analytics dashboard and Heatmaps performance rebuild for large sites (parallel
   cached widgets, collapsible sections, indexed heatmap aggregates) plus a User
   Intent classification fix.

#### Earlier versions

The complete changelog for all versions is available at [optiuser.com/opti-behavior/changelog/](https://optiuser.com/opti-behavior/changelog/)(
also shipped as changelog.txt in the plugin folder).

## Meta

 *  Version **1.9.2.1**
 *  Last updated **3 hours ago**
 *  Active installations **1,000+**
 *  WordPress version ** 5.8 or higher **
 *  Tested up to **7.1.2**
 *  PHP version ** 7.4 or higher **
 *  Languages
 * [English (US)](https://wordpress.org/plugins/opti-behavior/) and [Lao](https://lo.wordpress.org/plugins/opti-behavior/).
 *  [Translate into your language](https://translate.wordpress.org/projects/wp-plugins/opti-behavior)
 * Tags
 * [a/b testing](https://zgh.wordpress.org/plugins/tags/ab-testing/)[conversion](https://zgh.wordpress.org/plugins/tags/conversion/)
   [funnel](https://zgh.wordpress.org/plugins/tags/funnel/)[heatmap](https://zgh.wordpress.org/plugins/tags/heatmap/)
   [session recording](https://zgh.wordpress.org/plugins/tags/session-recording/)
 *  [Advanced View](https://zgh.wordpress.org/plugins/opti-behavior/advanced/)

## Ratings

 5 out of 5 stars.

 *  [  5 5-star reviews     ](https://wordpress.org/support/plugin/opti-behavior/reviews/?filter=5)
 *  [  0 4-star reviews     ](https://wordpress.org/support/plugin/opti-behavior/reviews/?filter=4)
 *  [  0 3-star reviews     ](https://wordpress.org/support/plugin/opti-behavior/reviews/?filter=3)
 *  [  0 2-star reviews     ](https://wordpress.org/support/plugin/opti-behavior/reviews/?filter=2)
 *  [  0 1-star reviews     ](https://wordpress.org/support/plugin/opti-behavior/reviews/?filter=1)

[Your review](https://wordpress.org/support/plugin/opti-behavior/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/opti-behavior/reviews/)

## Contributors

 *   [ OptiUser ](https://profiles.wordpress.org/optiuser/)

## Support

Issues resolved in last two months:

     1 out of 1

 [View support forum](https://wordpress.org/support/plugin/opti-behavior/)

## Donate

Would you like to support the advancement of this plugin?

 [ Donate to this plugin ](https://optiuser.com/)