v1.10.0
2026-10-10- Feature: Smart Insights "Things to check": page, funnel, engagement, scroll, mobile bounce and traffic spike cards now list the checks behind the problem, each one measured on your own data and shown as a compact card ("Not measured" when there is not enough traffic yet).
- Feature: Smart Insights cards have a clearer design: severity colour, key figures in tiles, a short story per signal family and a detail panel. Free users see every result Free computes.
- Feature: Spam filter: automated visits (headless browsers, scripts) are refused at collection and filtered from every report, even when they arrive with a referrer.
- Feature: Heatmap detail: hovering a click area shows "N clicks in this area" in the free plugin too, following the Count Bar Display setting. On small sites the Heatmaps list is up to date right away.
- Feature: The Pro feature pages (Recordings, User Journeys, Errors, Forms) explain what each feature does, with the trial button first. The Pro trial notice has a new design and can be closed for good.
- Enhancement: Pro trial: every "Try Pro" / "Upgrade to Pro" link (welcome screen, trial notice, Pro feature pages, heatmap, Smart Insights, A/B tests, Settings) opens the same Pro trial page on optiuser.com in a new tab. The plugin no longer starts a trial in one click and no longer downloads or installs Opti-Behavior Pro. It sends nothing when you click: only your site address travels in the link.
- Enhancement: Welcome screen: the data-sharing question is asked right after activation, only when Free runs alone, you can decline it, and the Pro trial is a separate choice. Settings show one line "Installation status: Shared / Not shared" with a Change link. Announcement banners are fetched only after you accept the daily status message, or with Pro active.
- Enhancement: The per-audience segment breakdown and the Weekly CRO Summary are now part of Opti-Behavior Pro.
- Enhancement: "How it works": the lines from the active modules to Smart Insights are animated. A/B tests: a click goal that is not a CSS selector (an XPath, for example) is refused with a clear message.
- Security: Admin screens (Traffic browsers / referrers / top pages, Smart Insights, A/B test builder) now escape quotes in every value they display, so a crafted browser name, referrer or page title sent by a visitor can no longer run script in the admin. A leftover debug branch of the heatmap data endpoint was removed.
- Security: Personal data (e-mail, user name, tokens, keys) is removed from tracked page addresses. Addresses already stored are cleaned in the background.
- Enhancement: wp-admin no longer waits when api.optiuser.com cannot be reached: the daily status message is sent in the background and the deactivation survey never holds the Deactivate click. Dashboard widget caches are cleared without heavy database queries.
- Fix: Same numbers everywhere: Traffic visitors, new / returning and Top Pages use one set of visits; Smart Insights, funnels and Page X-Ray count the same visits; Top Pages shows one row per page; the Heatmaps list and detail show the same click count.
- Fix: Smart Insights figures: each card shows the loss of its own gap (exit rate, scroll, segment vs all visitors), related cards never repeat the main card's figure, traffic spikes show no loss figure, and old figures are cleared on recalculation. A story card is never hidden as noise.
- Fix: Smart Insights: cards are regenerated once after each plugin update, the briefing stacks on phones, the Severity filter and severity sort work in every admin language, the Reset button appears with "All statuses", success messages stay visible, and the detail window moves keyboard focus.
- Fix: Traffic: "% vs last period" shows "—" when there is no previous period, an idle tab no longer inflates the visit duration, the Traffic Channel filter classifies visits exactly like the dashboard, and the review reminder only appears on the plugin's own screens.
- Fix: Heatmaps: Refresh now really clears the cached heatmap; deleting heatmap data keeps the device and type you were looking at; Reset puts the header period back to All time; switching views quickly never shows the previous view's numbers. Heatmaps taken over by URL query variants (?utm=…) are repaired and grouped like the list.
- Fix: Heatmaps list: a page number past the last page shows the last page; searching keeps your sort; the first click on a column sorts high to low.
- Fix: Funnels: editing a paused funnel keeps it paused, a deleted funnel cannot be saved back, a step without a URL is refused, the report of a paused funnel opens, a failed Re-scan no longer locks the button, and changing period quickly never shows the old numbers.
- Fix: A/B tests: "Declare Best Performer" no longer crowns a variant on a tie or without data. Numbers and dates follow your admin language. Filter profile labels are translatable. The onboarding popup sends its answer once.
- Fix: Heatmap image download — on long pages the downloaded PNG showed the clicks shifted and paler than the heatmap on screen. The image now shows every click exactly where the screen does, and very long pages no longer produce an empty image.
- Fix: With Opti-Behavior Pro on a renewed trial (or a licence bought after the trial), the red "Your Pro Trial Has Ended" banner could appear while Pro was working. It is no longer shown when the licence server confirms the licence is active.
- Fix: Smart Insights — "Visitor Confusion Pattern" now compares a page's button clicks with a site average in the same unit, and "quick visit" signals respect the minimum session duration of your spam filter.
- Fix: The code passes the WordPress.org Plugin Check without errors, and the plugin name is the same in the plugin list and on its WordPress.org page.