Skip to main content

Upgrade Overview

Plausible Community Edition is released twice per year with long-term support. Staying up to date ensures you have the latest bug fixes, performance improvements, and features.
Always backup your databases before upgrading. See the Maintenance guide for backup procedures.

Release Schedule

Community Edition follows a different release schedule than Plausible Cloud:
  • Frequency: Long-term releases published twice per year
  • Versioning: Semantic versioning (MAJOR.MINOR.PATCH)
  • Support: Community-supported through GitHub Discussions
Plausible Cloud receives continuous updates multiple times per week. CE releases bundle these changes into stable releases.

Before You Upgrade

1

Review the Changelog

Check the CHANGELOG.md for:
  • Breaking changes
  • New features
  • Configuration changes
  • Migration requirements
2

Backup Your Data

Create backups of both databases:
3

Check System Requirements

Verify your system meets requirements for the new version:
  • Docker version compatibility
  • Database version requirements
  • Available disk space
  • Memory requirements
4

Plan Downtime

Schedule the upgrade during low-traffic periods. Typical downtime: 5-15 minutes.

Standard Upgrade Procedure

Using Docker Compose

1

Pull Latest Changes

Update the community-edition repository:
2

Pull New Images

Download the latest Docker images:
This downloads:
  • Latest Plausible application image
  • Updated PostgreSQL (if version changed)
  • Updated ClickHouse (if version changed)
3

Stop Services

Gracefully stop all running containers:
4

Start Services

Launch with new images:
5

Run Migrations

Apply database migrations:
Migrations use an interweaved approach, running PostgreSQL and ClickHouse migrations in order.
6

Verify Upgrade

Check that services are running:
Verify the version:

Migration Details

Database Migrations

Plausible uses two databases that must be migrated:
Stores application data:
  • User accounts
  • Site configurations
  • API keys
  • Team memberships
Migrations are applied automatically by the migrate.sh script.

Checking Migration Status

Manual Migration Control

For advanced users:

Version-Specific Upgrade Notes

Upgrading to v3.0+

Version 3.0 reworked the time-on-page metric calculation:
  • Now uses engagement events from tracker
  • Legacy calculation used for historical data
  • Warnings shown when legacy methods are used
No action required - changes are automatic.
Dashboard filters changed from encoded to readable format:
  • Old: ?filters=((is,page,(/docs,/blog)),...)
  • New: ?f=is,page,/docs,/blog&f=...
Old links continue to work automatically.
ClickHouse now uses VersionedCollapsingMergeTree for visit data:
  • Prevents race conditions
  • Improves data accuracy
  • Automatic migration during upgrade
Large datasets may take longer to migrate.

Upgrading to v2.1+

Default registration mode changed to invite_only:
ECTO_IPV6 and ECTO_CH_IPV6 are deprecated:
  • IPv6 is now automatic with IPv4 fallback
  • Remove these variables from configuration
  • No action needed for most deployments

Upgrading to v2.0+

Environment variables consolidated:Old format:
New format:
Update your configuration file before upgrading.
Default mailer changed from Postmark to Bamboo.Mua:

Rollback Procedure

If issues occur during upgrade:
1

Stop Services

2

Restore Database Backups

3

Revert to Previous Version

4

Verify

Check that the previous version is running correctly:
Database migrations may not be reversible. Always maintain backups before upgrading.

Upgrading ClickHouse

ClickHouse Version Compatibility

Plausible supports ClickHouse 21.0+. To upgrade ClickHouse:
1

Check Current Version

2

Review ClickHouse Release Notes

Check ClickHouse releases for breaking changes
3

Backup Data

Create a full ClickHouse backup before proceeding
4

Update docker-compose.yml

5

Restart Services

ClickHouse upgrades are generally backward compatible, but always test in a staging environment first.

Upgrading PostgreSQL

PostgreSQL upgrades require more care:
PostgreSQL major version upgrades (e.g., 14 → 15) require a database dump and restore. This is NOT automatic.
1

Backup Current Database

2

Stop All Services

3

Update Database Volume

For major version upgrades, you may need to remove the old volume:
4

Update docker-compose.yml

5

Start Database

6

Restore Backup

7

Start Remaining Services

Troubleshooting Upgrades

Error: Migration script exits with errorSolutions:
  1. Check logs: docker compose logs plausible
  2. Verify database connectivity
  3. Ensure sufficient disk space
  4. Check for schema conflicts
  5. Consult GitHub Discussions for specific error
If migration fails, rollback to backup and investigate.
Error: Plausible container exits immediatelySolutions:
  1. Check configuration: docker compose config
  2. Review environment variables
  3. Check logs: docker compose logs plausible
  4. Verify BASE_URL and SECRET_KEY_BASE
  5. Ensure databases are accessible
Issue: Plausible is slower after upgradeSolutions:
  1. Run ClickHouse OPTIMIZE:
  2. Check database sizes and consider archival
  3. Review ClickHouse buffer settings
  4. Monitor resource usage (CPU, RAM, disk)
Issue: Some statistics don’t appearSolutions:
  1. Check if migrations completed successfully
  2. Review ClickHouse materialized views:
  3. Verify ClickHouse hasn’t dropped partitions
  4. Restore from backup if data loss occurred

Best Practices

Test First

Always test upgrades in a staging environment before production

Backup Everything

Maintain regular backups and verify restoration works

Read Changelogs

Review release notes for breaking changes and new features

Monitor After Upgrade

Watch logs and metrics after upgrading to catch issues early

Stay Updated

1

Watch Releases

Star and watch the Plausible Analytics repository on GitHub
2

Join Discussions

Participate in GitHub Discussions
3

Follow News

Follow Plausible on Twitter/X or Mastodon

Next Steps

Maintenance

Learn about operations, backups, and monitoring

Configuration

Review configuration options after upgrade