# Plausible Analytics changelog > Simple, lightweight, privacy-friendly web analytics without cookies. - Vendor: Plausible - Category: Productivity - Official site: https://plausible.io - Tracked by: What's New (https://whatsnew.fyi/product/plausible) - Harvested from: GitHub (plausible/analytics) - Entries below: 10 (newest first) What's New is an index, not a publisher: every entry below links to the vendor's own release notes, which are the authoritative source. Entries are labelled where they are hand-curated sample data, pre-releases, or drawn from a secondary source such as a developer blog. Reuse: the summaries, labels and curation here are © What's New. Quote freely with attribution and a link back; wholesale republication of the corpus is not permitted — terms: https://whatsnew.fyi/terms. The vendors' own release notes remain their publishers'. ## Releases ### v3.2.1 - Date: 2026-05-15 - Version: v3.2.1 - Original notes: https://github.com/plausible/analytics/releases/tag/v3.2.1 - Permalink: https://whatsnew.fyi/product/plausible/releases/v3.2.1 - **security** — Remove HTTP "/storybook" endpoint that allowed remote code execution under certain conditions #### Security related update This patch release **fixes a security vulnerability**[`CVE-2026-8467` / `GHSA-55hg-8qxv-qj4p`](https://github.com/phenixdigital/phoenix_storybook/security/advisories/GHSA-55hg-8qxv-qj4p) affecting the following versions of Plausible Community Edition (image: ghcr.io/plausible/community-edition): Tags: - v3.2 - v3.2.0 - v3 - v3.2.0-rc.0 - v3.1 - v3.1.0 - v3.1.0-rc.1 - v3.1.0-rc.0 - v3.0.1 - v3.0 - v3.0.0 - v3.0.0-rc.6 - v3.0.0-rc.5 - v3.0.0-rc.4 - v3.0.0-rc.3 - v3.0.0-rc.2 - v3.0.0-rc.1 - v3.0.0-rc.0 The affected versions expose a `HTTP "/storybook"` endpoint which, under certain conditions, allows remote code execution with privileges of system user running the application. This release v3.2.1 of Plausible Community Edition completely removes that endpoint. ##### Who is affected? All deployments of Plausible Community Edition running the following versions: - v3.2 - v3.2.0 - v3 - v3.2.0-rc.0 - v3.1 - v3.1.0 - v3.1.0-rc.1 - v3.1.0-rc.0 - v3.0.1 - v3.0 - v3.0.0 - v3.0.0-rc.6 - v3.0.0-rc.5 - v3.0.0-rc.4 - v3.0.0-rc.3 - v3.0.0-rc.2 - v3.0.0-rc.1 - v3.0.0-rc.0 where `HTTP "/storybook"` endpoint is exposed to a public or other untrusted network. ##### Mitigation All affected versions of Plausible Community Edition should be updated to v3.2.1 as soon as possible. As an immediate mitigation, it is recommended to block access to HTTP "/storybook" endpoint in your reverse proxy configuration or via other applicable means. ##### Changes in this release - Remove `HTTP "/storybook"` endpoint along with the associated logic No other changes are included in this release. ### v3.2.0 - Date: 2026-01-26 - Version: v3.2.0 - Original notes: https://github.com/plausible/analytics/releases/tag/v3.2.0 - Permalink: https://whatsnew.fyi/product/plausible/releases/v3.2.0 - **added** — Add limit to segment feature for shared links - **added** — Show visitor percentage breakdown on all reports in dashboard and detailed breakdown - **changed** — Make segment filters visible to anyone who can view the dashboard with that segment applied, including personal segments on public dashboards - **fixed** — Fix shared link auth cookie not being set in internal stats API requests for password-protected shared links - **fixed** — Fix site guests in Editor role and team members in Editor role not being able to change the domain of site - **fixed** — Fix direct dashboard links using legacy dashboard filters containing URL encoded special characters - **fixed** — Fix tracker script config cache bug that caused requests for certain cached scripts to return error 500 - **fixed** — Fix Clickhouse low-memory settings that were not actually applied This release - adds "[Limit to segment](https://plausible.io/docs/shared-links#limit-to-segment)" feature for shared links - fixes a bug requesting tracker scripts in v3.1.0 ([issue 5901](https://github.com/plausible/analytics/issues/5901)) - fixes Clickhouse low-memory settings that weren't actually applied (https://github.com/plausible/community-edition/pull/265) - ...contains a few other fixes and changes, full details below ##### Upgrade Checkout the branch `plausible/community-edition:v3.2.0`. Needed because Clickhouse profile settings in the [community-edition](https://github.com/plausible/community-edition) repository have changed. console ```console $ git fetch origin v3.2.0:v3.2.0 $ git checkout v3.2.0 ``` Re-apply any local changes to tracked files in the repository. If all configuration changes were in `.env` and `compose.override.yml`, this step isn't necessary. console ```console $ docker compose up -d ``` This will boot up the new version of the app. ##### Changelog ###### Added - A visitor percentage breakdown is now shown on all reports, both on the dashboard and in the detailed breakdown - Shared links can now be limited to a particular segment of the data ###### Changed - Segment filters are visible to anyone who can view the dashboard with that segment applied, including personal segments on public dashboards ###### Fixed - To make internal stats API requests for password-protected shared links, shared link auth cookie must be set in the requests - Fixed issue with site guests in Editor role and team members in Editor role not being able to change the domain of site - Fixed direct dashboard links that use legacy dashboard filters containing URL encoded special characters (e.g. character `ê` in the legacy filter `?page=%C3%AA`) - Fix bug with tracker script config cache that made requests for certain cached scripts give error 500 ### v3.2.0-rc.0 - Date: 2025-12-29 - Version: v3.2.0-rc.0 - Original notes: https://github.com/plausible/analytics/releases/tag/v3.2.0-rc.0 - Permalink: https://whatsnew.fyi/product/plausible/releases/v3.2.0-rc.0 - Labels: Pre-release - **added** — A visitor percentage breakdown is now shown on all reports, both on the dashboard and in the detailed breakdown - **added** — Shared links can now be limited to a particular segment of the data - **changed** — Segment filters are visible to anyone who can view the dashboard with that segment applied, including personal segments on public dashboards - **fixed** — To make internal stats API requests for password-protected shared links, shared link auth cookie must be set in the requests - **fixed** — Fixed issue with site guests in Editor role and team members in Editor role not being able to change the domain of site - **fixed** — Fixed direct dashboard links that use legacy dashboard filters containing URL encoded special characters - **fixed** — Fix bug with tracker script config cache that made requests for certain cached scripts give error 500 This release - adds "[Limit to segment](https://plausible.io/docs/shared-links#limit-to-segment)" feature for shared links - fixes a bug requesting tracker scripts in v3.1.0 ([issue 5901](https://github.com/plausible/analytics/issues/5901)) - ...contains a few other fixes and changes, full details below ##### Upgrade Update the image used for `plausible` compose.yml ```diff plausible: - image: ghcr.io/plausible/community-edition:v3.1.0 + image: ghcr.io/plausible/community-edition:v3.2.0-rc.0 ``` and restart the containers console ```console $ docker compose up -d ``` This will boot up the new version of the app. ##### Changelog ###### Added - A visitor percentage breakdown is now shown on all reports, both on the dashboard and in the detailed breakdown - Shared links can now be limited to a particular segment of the data ###### Changed - Segment filters are visible to anyone who can view the dashboard with that segment applied, including personal segments on public dashboards ###### Fixed - To make internal stats API requests for password-protected shared links, shared link auth cookie must be set in the requests - Fixed issue with site guests in Editor role and team members in Editor role not being able to change the domain of site - Fixed direct dashboard links that use legacy dashboard filters containing URL encoded special characters (e.g. character `ê` in the legacy filter `?page=%C3%AA`) - Fix bug with tracker script config cache that made requests for certain cached scripts give error 500 ### v3.1.0 - Date: 2025-11-13 - Version: v3.1.0 - Original notes: https://github.com/plausible/analytics/releases/tag/v3.1.0 - Permalink: https://whatsnew.fyi/product/plausible/releases/v3.1.0 - **added** — Custom events can now be marked as non-interactive in events API and tracker script; events marked as non-interactive are not counted towards bounce rate - **added** — Ability to leave team via Team Settings > Leave Team - **added** — Stats APIv2 now supports `include.trim_relative_date_range` option allowing trimming empty values after current time for day, month and year date_range values - **added** — Properties are now included in full site exports done via Site Settings > Imports & Exports - **added** — Google Search Console integration settings support dynamically seeking properties - **added** — Weekly/monthly e-mail reports now contain top goal conversions - **added** — Newly created sites are offered a new dynamic tracking script and snippet specific to the site - **added** — Old sites that go to Review installation flow are offered the new script and snippet, along with a migration guide from legacy snippets - **added** — The new tracker script allows configuring `transformRequest` function to change event payloads before they're sent - **added** — The new tracker script allows configuring `customProperties` function hook to derive custom props for events on the fly - **added** — The new tracker script supports tracking form submissions if enabled - **added** — The new tracker script automatically updates to respect site domain if it's changed in Change domain flow - **added** — The new tracker script automatically updates to respect configuration options available in New site flows and Review installation flows: whether to track outbound links, file downloads, form submissions - **added** — The new tracker script allows overriding almost all options by changing the snippet on the website with the function `plausible.init({ ...your overrides... })` - **added** — A new `@plausible-analytics/tracker` ESM module is available on NPM with near-identical configuration API and identical tracking logic as the script - **added** — Ability to enforce enabling 2FA by all team members - **added** — Support for a new optional `interactive` property on events - **changed** — A session is now marked as a bounce if it has less than 2 pageviews and no interactive custom events - **changed** — All dropmenus on dashboard are navigable with Tab and no two dropmenus can be open at once on the dashboard - **changed** — Special path-based events like 404 don't need `event.props.path` to be explicitly defined when tracking; it is set to be the same as `event.pathname` in event ingestion - **changed** — Main graph no longer shows empty values after current time for day, month and year periods - **changed** — Include `bounce_rate` metric in Entry Pages breakdown - **changed** — Dark mode theme has been refined with darker color scheme and better visual hierarchy - **changed** — Configuring shared links is now in a modal - **fixed** — Make clicking Compare / Disable Comparison in period picker menu close the menu - **fixed** — Do not log page views for hidden pages until pages are viewed - **fixed** — Password-authenticated shared links now carry over dashboard params properly - **fixed** — Realtime and hourly graphs of visit duration, views per visit no longer overcount due to long-lasting sessions, instead showing each visit when they occurred - **fixed** — Fixed realtime and hourly graphs of visits overcounting - **fixed** — When reporting only `visitors` and `visits` per hour, count visits in each hour they were active in - **fixed** — Fixed unhandled tracker-related exceptions on link clicks within svgs - **fixed** — Remove Subscription and Invoices menu from CE - **fixed** — Fix email sending error Mua.SMTPError 503 Bad sequence of commands - **fixed** — Make button to include / exclude imported data visible on Safari This release - Introduces the new dynamic and more configurable tracking snippet and script (legacy scripts and snippets will still continue to work). See [this doc](https://plausible.io/docs/script-update-guide) for more details - Supports a new optional property on events: `interactive`. See [this doc](https://plausible.io/docs/events-api#request-body-json-parameters:~:text=interactive%20optional) for more details. - Revamps dark theme - ...other fixes and improvements listed below ##### Upgrade Update the image used for `plausible` compose.yml ```diff plausible: - image: ghcr.io/plausible/community-edition:v3.0.1 + image: ghcr.io/plausible/community-edition:v3.1.0 ``` and restart the containers console ```console $ docker compose up -d ``` This will boot up the new version of the app. ##### Changelog ###### Added - Custom events can now be marked as non-interactive in events API and tracker script: events marked as non-interactive are not counted towards bounce rate - Ability to leave team via Team Settings > Leave Team - Stats APIv2 now supports `include.trim_relative_date_range` - this option allows trimming empty values after current time for `day`, `month` and `year` date_range values - Properties are now included in full site exports done via Site Settings > Imports & Exports - Google Search Console integration settings: properties can be dynamically sought - Weekly/monthly e-mail reports now contain top goal conversions - Newly created sites are offered a new dynamic tracking script and snippet that's specific to the site - Old sites that go to "Review installation" flow are offered the new script and snippet, along with a migration guide from legacy snippets, legacy snippets continue to function as before - The new tracker script allows configuring `transformRequest` function to change event payloads before they're sent - The new tracker script allows configuring `customProperties` function hook to derive custom props for events on the fly - The new tracker script supports tracking form submissions if enabled - The new tracker script automatically updates to respect site domain if it's changed in "Change domain" flow - The new tracker script automatically updates to respect the following configuration options available in "New site" flows and "Review installation" flows: whether to track outbound links, file downloads, form submissions - The new tracker script allows overriding almost all options by changing the snippet on the website, with the function `plausible.init({ ...your overrides... })` - this can be unique page-by-page - A new `@plausible-analytics/tracker` ESM module is available on NPM - it has near-identical configuration API and identical tracking logic as the script and it receives bugfixes and updates concurrently with the new tracker script - Ability to enforce enabling 2FA by all team members ###### Removed ###### Changed - A session is now marked as a bounce if it has less than 2 pageviews and no interactive custom events - All dropmenus on dashboard are navigable with Tab (used to be a mix between tab and arrow keys), and no two dropmenus can be open at once on the dashboard - Special path-based events like "404" don't need `event.props.path` to be explicitly defined when tracking: it is set to be the same as `event.pathname` in event ingestion; if it is explicitly defined, it is not overridden for backwards compatibility - Main graph no longer shows empty values after current time for `day`, `month` and `year` periods - Include `bounce_rate` metric in Entry Pages breakdown - Dark mode theme has been refined with darker color scheme and better visual hierarchy - Configuring shared links is now in a modal ###### Fixed - Make clicking Compare / Disable Comparison in period picker menu close the menu - Do not log page views for hidden pages (prerendered pages and new tabs), until pa _[Truncated at 4000 characters — full notes: https://github.com/plausible/analytics/releases/tag/v3.1.0]_ ### v3.1.0-rc.1 - Date: 2025-11-03 - Version: v3.1.0-rc.1 - Original notes: https://github.com/plausible/analytics/releases/tag/v3.1.0-rc.1 - Permalink: https://whatsnew.fyi/product/plausible/releases/v3.1.0-rc.1 - Labels: Pre-release - **fixed** — Fixed issue with backfilling tracker script config - **changed** — Configuring shared links is now in a modal This release fixes [v3.1.0-rc.0](https://github.com/plausible/analytics/releases/tag/v3.1.0-rc.0), see the notes of that release for the full picture. ##### Upgrade guide from last stable release Update the image used for `plausible` compose.yml ```diff plausible: - image: ghcr.io/plausible/community-edition:v3.0.1 + image: ghcr.io/plausible/community-edition:v3.1.0-rc.1 ``` and restart the containers console ```console $ docker compose up -d ``` ##### Changes (since [v3.1.0-rc.0](https://github.com/plausible/analytics/releases/tag/v3.1.0-rc.0)) ###### Fixed - Fixed issue with backfilling tracker script config ###### Changed - Configuring shared links is now in a modal ### v3.1.0-rc.0 - Date: 2025-11-03 - Version: v3.1.0-rc.0 - Original notes: https://github.com/plausible/analytics/releases/tag/v3.1.0-rc.0 - Permalink: https://whatsnew.fyi/product/plausible/releases/v3.1.0-rc.0 - Labels: Pre-release - **added** — Custom events can now be marked as non-interactive in events API and tracker script, with non-interactive events not counted towards bounce rate - **added** — Ability to leave team via Team Settings > Leave Team - **added** — Stats APIv2 now supports include.trim_relative_date_range option to trim empty values after current time for day, month and year date_range values - **added** — Properties are now included in full site exports done via Site Settings > Imports & Exports - **added** — Google Search Console integration settings now allow properties to be dynamically sought - **added** — Weekly and monthly email reports now contain top goal conversions - **added** — Newly created sites are offered a new dynamic tracking script and snippet specific to the site - **added** — Sites in Review installation flow are offered the new script and snippet along with a migration guide from legacy snippets - **added** — New tracker script allows configuring transformRequest function to change event payloads before they are sent - **added** — New tracker script allows configuring customProperties function hook to derive custom props for events on the fly - **added** — New tracker script supports tracking form submissions if enabled - **added** — New tracker script automatically updates to respect site domain if changed in Change domain flow - **added** — New tracker script automatically updates to respect configuration options for tracking outbound links, file downloads, and form submissions - **added** — New tracker script allows overriding options by changing the snippet with plausible.init() function for page-by-page customization - **added** — New @plausible-analytics/tracker ESM module available on NPM with near-identical configuration API and identical tracking logic - **changed** — A session is now marked as a bounce if it has less than 2 pageviews and no interactive custom events - **changed** — All dropmenus on dashboard are navigable with Tab and no two dropmenus can be open at once - **changed** — Special path-based events like 404 do not need event.props.path to be explicitly defined when tracking - **changed** — Main graph no longer shows empty values after current time for day, month and year periods - **changed** — Include bounce_rate metric in Entry Pages breakdown This release - Introduces the new dynamic and more configurable tracking snippet and script (legacy scripts and snippets will still continue to work). See [this doc](https://plausible.io/docs/script-update-guide) for more details - Supports a new optional property on events: `interactive`. See [this doc](https://plausible.io/docs/events-api#request-body-json-parameters:~:text=interactive%20optional) for more details. - Revamps dark theme - ...other fixes and improvements listed below ##### Upgrade Update the image used for `plausible` compose.yml ```diff plausible: - image: ghcr.io/plausible/community-edition:v3.0.1 + image: ghcr.io/plausible/community-edition:v3.1.0-rc.0 ``` and restart the containers console ```console $ docker compose up -d ``` This will boot up the new version of the app. ##### Changelog ###### Added - Custom events can now be marked as non-interactive in events API and tracker script: events marked as non-interactive are not counted towards bounce rate - Ability to leave team via Team Settings > Leave Team - Stats APIv2 now supports `include.trim_relative_date_range` - this option allows trimming empty values after current time for `day`, `month` and `year` date_range values - Properties are now included in full site exports done via Site Settings > Imports & Exports - Google Search Console integration settings: properties can be dynamically sought - Weekly/monthly e-mail reports now contain top goal conversions - Newly created sites are offered a new dynamic tracking script and snippet that's specific to the site - Old sites that go to "Review installation" flow are offered the new script and snippet, along with a migration guide from legacy snippets, legacy snippets continue to function as before - The new tracker script allows configuring `transformRequest` function to change event payloads before they're sent - The new tracker script allows configuring `customProperties` function hook to derive custom props for events on the fly - The new tracker script supports tracking form submissions if enabled - The new tracker script automatically updates to respect site domain if it's changed in "Change domain" flow - The new tracker script automatically updates to respect the following configuration options available in "New site" flows and "Review installation" flows: whether to track outbound links, file downloads, form submissions - The new tracker script allows overriding almost all options by changing the snippet on the website, with the function `plausible.init({ ...your overrides... })` - this can be unique page-by-page - A new `@plausible-analytics/tracker` ESM module is available on NPM - it has near-identical configuration API and identical tracking logic as the script and it receives bugfixes and updates concurrently with the new tracker script ###### Removed ###### Changed - A session is now marked as a bounce if it has less than 2 pageviews and no interactive custom events - All dropmenus on dashboard are navigable with Tab (used to be a mix between tab and arrow keys), and no two dropmenus can be open at once on the dashboard - Special path-based events like "404" don't need `event.props.path` to be explicitly defined when tracking: it is set to be the same as `event.pathname` in event ingestion; if it is explicitly defined, it is not overridden for backwards compatibility - Main graph no longer shows empty values after current time for `day`, `month` and `year` periods - Include `bounce_rate` metric in Entry Pages breakdown - Dark mode theme has been refined with darker color scheme and better visual hierarchy ###### Fixed - Make clicking Compare / Disable Comparison in period picker menu close the menu - Do not log page views for hidden pages (prerendered pages and new tabs), until pages are viewed - Password-authenticated shared links now carry over dashboard params properly _[Truncated at 4000 characters — full notes: https://github.com/plausible/analytics/releases/tag/v3.1.0-rc.0]_ ### v3.0.1 - Date: 2025-04-11 - Version: v3.0.1 - Original notes: https://github.com/plausible/analytics/releases/tag/v3.0.1 - Permalink: https://whatsnew.fyi/product/plausible/releases/v3.0.1 - **fixed** — Fix migration procedure This release contains a patch for the migration procedure (fixes https://github.com/plausible/analytics/issues/5319). Functionally it is equivalent of https://github.com/plausible/analytics/releases/v3.0.0 ##### Upgrade Update the image used for `plausible` compose.yml ```diff diff --git a/compose.yml b/compose.yml index f5a0a7e..3e03415 100644 --- a/compose.yml +++ b/compose.yml @@ -11,7 +11,7 @@ services: start_period: 1m plausible_events_db: - image: clickhouse/clickhouse-server:24.3.3.102-alpine + image: clickhouse/clickhouse-server:24.12-alpine restart: always volumes: - event-data:/var/lib/clickhouse @@ -27,12 +27,14 @@ services: nofile: soft: 262144 hard: 262144 + environment: + - CLICKHOUSE_SKIP_USER_SETUP=1 healthcheck: test: ["CMD-SHELL", "wget --no-verbose --tries=1 -O - http://127.0.0.1:8123/ping || exit 1"] start_period: 1m plausible: - image: ghcr.io/plausible/community-edition:v2.1.5 + image: ghcr.io/plausible/community-edition:v3.0.1 restart: always command: sh -c "/entrypoint.sh db createdb && /entrypoint.sh db migrate && /entrypoint.sh run" depends_on: ``` and restart the containers ### v3.0.0 - Date: 2025-04-11 - Version: v3.0.0 - Original notes: https://github.com/plausible/analytics/releases/tag/v3.0.0 - Permalink: https://whatsnew.fyi/product/plausible/releases/v3.0.0 - **added** — Ability to create teams and manage users and permissions - **added** — Average scroll depth metric - **added** — Scroll Depth goals - **added** — Dashboard shows comparisons for all reports - **added** — Two new shorthand time periods 28d and 91d available on both dashboard and in public API - **added** — UTM Medium report and API shows (gclid) and (msclkid) for paid searches when no explicit utm medium present - **added** — Support for case_sensitive: false modifiers in Stats API V2 filters for case-insensitive searches - **added** — Add text version to emails - **added** — Acquisition channels report - **added** — Filter is not for goals in dashboard - **added** — Segments feature to group filters into persistent, named presets - **added** — Support ["is", "segment", []] filter in Stats API - **added** — Time on page metric is now sortable in reports - **added** — Plausible tracker script reports maximum scroll depth reached and time engaged with the site in an engagement event with sd and e integer parameters - **added** — Plausible tracker script reports the version of the script in the v parameter sent with each request - **added** — Support behavioral filters has_done and has_not_done on the Stats API to allow filtering sessions by other events - **added** — Introduce billing team role for users - **added** — Introduce editor role with permissions greater than viewer but lesser than admin - **changed** — Default period for brand new sites is now today rather than last 28 days - **changed** — Increase decimal precision of the Exit rate metric from 0 to 1 decimal place > [!WARNING] > Please use [3.0.1 patch](https://github.com/plausible/analytics/releases/tag/v3.0.1) that contains fix for https://github.com/plausible/analytics/issues/5319 The highlights of this release are: - Create teams, manage users and permissions - Scroll depth, engagement time and (reworked) time on page metrics - Segments feature: group filters into persistent, named presets ##### Upgrade Update the image used for `plausible` compose.yml ```diff diff --git a/compose.yml b/compose.yml index f5a0a7e..3e03415 100644 --- a/compose.yml +++ b/compose.yml @@ -11,7 +11,7 @@ services: start_period: 1m plausible_events_db: - image: clickhouse/clickhouse-server:24.3.3.102-alpine + image: clickhouse/clickhouse-server:24.12-alpine restart: always volumes: - event-data:/var/lib/clickhouse @@ -27,12 +27,14 @@ services: nofile: soft: 262144 hard: 262144 + environment: + - CLICKHOUSE_SKIP_USER_SETUP=1 healthcheck: test: ["CMD-SHELL", "wget --no-verbose --tries=1 -O - http://127.0.0.1:8123/ping || exit 1"] start_period: 1m plausible: - image: ghcr.io/plausible/community-edition:v2.1.5 + image: ghcr.io/plausible/community-edition:v3.0.0 restart: always command: sh -c "/entrypoint.sh db createdb && /entrypoint.sh db migrate && /entrypoint.sh run" depends_on: ``` and restart the containers console ```console $ docker compose up -d ``` This will boot up the new version of the app. ##### Changelog The following [changes](https://github.com/plausible/analytics/compare/v2.1.5...v3.0.0) have been made since 2.1.5: ###### Added - Ability to sort by and compare the `exit_rate` metric in the dashboard Exit Pages > Details report - Add top 3 pages into the traffic spike email - Two new shorthand time periods `28d` and `91d` available on both dashboard and in public API - Average scroll depth metric - Scroll Depth goals - Dashboard shows comparisons for all reports - UTM Medium report and API shows (gclid) and (msclkid) for paid searches when no explicit utm medium present. - Support for `case_sensitive: false` modifiers in Stats API V2 filters for case-insensitive searches. - Add text version to emails plausible/analytics#4674 - Add acquisition channels report - Add filter `is not` for goals in dashboard plausible/analytics#4983 - Add Segments feature - Support `["is", "segment", []]` filter in Stats API - Time on page metric is now sortable in reports - Plausible tracker script now reports maximum scroll depth reached and time engaged with the site in an `engagement` event. These are reported as `sd` and `e` integer parameters to /api/event endpoint respectively. If you're using a custom proxy for plausible script, please ensure that these parameters are being passed forward. - Plausible tracker script now reports the version of the script in the `v` parameter sent with each request. - Add support for creating and managing teams owning multiple sites - Introduce "billing" team role for users - Introduce "editor" role with permissions greater than "viewer" but lesser than "admin" - Support behavioral filters `has_done` and `has_not_done` on the Stats API to allow filtering sessions by other events that have been completed. - `time_on_page` metric is now graphable, sortable on the dashboard, and available in the Stats API and CSV and GA4 exports/imports ###### Removed - Internal stats API routes no longer support legacy dashboard filter format. - Dashboard no longer shows "Unique visitors" in top stats when filtering by a goal which used to count all users including ones who didn't complete the goal. "Unique conversions" shows the number of unique visitors who completed the goal. ###### Changed - Default period for brand new sites is now `today` rather than `last 28 days`. On _[Truncated at 4000 characters — full notes: https://github.com/plausible/analytics/releases/tag/v3.0.0]_ ### v3.0.0-rc.6 - Date: 2025-04-10 - Version: v3.0.0-rc.6 - Original notes: https://github.com/plausible/analytics/releases/tag/v3.0.0-rc.6 - Permalink: https://whatsnew.fyi/product/plausible/releases/v3.0.0-rc.6 - Labels: Pre-release - **added** — Ability to sort by and compare the exit_rate metric in the dashboard Exit Pages > Details report - **added** — Two new shorthand time periods 28d and 91d available on both dashboard and in public API - **changed** — Default period for brand new sites is now today rather than last 28 days, changing to last 28 days on the next day - **changed** — Increase decimal precision of the Exit rate metric from 0 to 1 decimal place - **changed** — Always set site and team member limits to unlimited for Community Edition - **changed** — Stats API now supports more date_range shorthand options like 30d and 3mo Another follow-up to pre-release [3.0.0-rc.0](https://github.com/plausible/analytics/releases/tag/v3.0.0-rc.0) On top of original rc.0 this contains all the Community Edition upgrade/startup fixes + latest changes, namely: ###### Added - Ability to sort by and compare the `exit_rate` metric in the dashboard Exit Pages > Details report - Two new shorthand time periods `28d` and `91d` available on both dashboard and in public API ###### Changed - Default period for brand new sites is now `today` rather than `last 28 days`. On the next day, the default changes to `last 28 days`. - Increase decimal precision of the "Exit rate" metric from 0 to 1 (e.g. 67 -> 66.7) - Always set site and team member limits to unlimited for Community Edition - Stats API now supports more `date_range` shorthand options like `30d`, `3mo`. --- Full changelog: https://github.com/plausible/analytics/compare/v2.1.5...v3.0.0-rc.6 --- > [!WARNING] > ClickHouse upgrade is necessary. See below. Use the following diff to test the pre-release: ```diff diff --git a/compose.yml b/compose.yml index f5a0a7e..3e03415 100644 --- a/compose.yml +++ b/compose.yml @@ -11,7 +11,7 @@ services: start_period: 1m plausible_events_db: - image: clickhouse/clickhouse-server:24.3.3.102-alpine + image: clickhouse/clickhouse-server:24.12-alpine restart: always volumes: - event-data:/var/lib/clickhouse @@ -27,12 +27,14 @@ services: nofile: soft: 262144 hard: 262144 + environment: + - CLICKHOUSE_SKIP_USER_SETUP=1 healthcheck: test: ["CMD-SHELL", "wget --no-verbose --tries=1 -O - http://127.0.0.1:8123/ping || exit 1"] start_period: 1m plausible: - image: ghcr.io/plausible/community-edition:v2.1.5 + image: ghcr.io/plausible/community-edition:v3.0.0-rc.6 restart: always command: sh -c "/entrypoint.sh db createdb && /entrypoint.sh db migrate && /entrypoint.sh run" depends_on: ``` ### v3.0.0-rc.4 - Date: 2025-04-09 - Version: v3.0.0-rc.4 - Original notes: https://github.com/plausible/analytics/releases/tag/v3.0.0-rc.4 - Permalink: https://whatsnew.fyi/product/plausible/releases/v3.0.0-rc.4 - Labels: Pre-release - **fixed** — Address issue with disappearing sites for users trying out previous release candidates - **changed** — Upgrade ClickHouse to version 24.12-alpine Another follow-up to pre-release [3.0.0-rc.0](https://github.com/plausible/analytics/releases/tag/v3.0.0-rc.0) This one should address issue with "disappearing sites" for people trying out previous release candidates. > [!WARNING] > ClickHouse upgrade is necessary. See below. Use the following diff to test the pre-release: ```diff diff --git a/compose.yml b/compose.yml index f5a0a7e..3e03415 100644 --- a/compose.yml +++ b/compose.yml @@ -11,7 +11,7 @@ services: start_period: 1m plausible_events_db: - image: clickhouse/clickhouse-server:24.3.3.102-alpine + image: clickhouse/clickhouse-server:24.12-alpine restart: always volumes: - event-data:/var/lib/clickhouse @@ -27,12 +27,14 @@ services: nofile: soft: 262144 hard: 262144 + environment: + - CLICKHOUSE_SKIP_USER_SETUP=1 healthcheck: test: ["CMD-SHELL", "wget --no-verbose --tries=1 -O - http://127.0.0.1:8123/ping || exit 1"] start_period: 1m plausible: - image: ghcr.io/plausible/community-edition:v2.1.5 + image: ghcr.io/plausible/community-edition:v3.0.0-rc.4 restart: always command: sh -c "/entrypoint.sh db createdb && /entrypoint.sh db migrate && /entrypoint.sh run" depends_on: ```