Overview
Regular updates ensure you have the latest features, performance improvements, and security patches. Umami follows semantic versioning (MAJOR.MINOR.PATCH).Current version information is available in
package.json and displayed in the Umami interface.Version Information
Check your current version:- Web Interface
- package.json
- Docker
Look in the bottom left corner of the Umami dashboard after logging in.
Release Types
| Version Type | Example | Changes | Risk |
|---|---|---|---|
| Major | 3.0.0 | Breaking changes, major features | High |
| Minor | 3.1.0 | New features, backward compatible | Low |
| Patch | 3.0.1 | Bug fixes, security patches | Very Low |
Upgrading Docker Installation
Using Docker Compose (Recommended)
Recreate container
- Stops the current container
- Creates a new container with the latest image
- Runs database migrations automatically
- Starts the new container
One-Line Update
Combine steps for quick updates:Specific Version
Upgrade to a specific version:docker-compose.yml
Rollback
If something goes wrong, rollback to previous version:Upgrading Source Installation
Standard Upgrade Process
Run build
- Generates Prisma client
- Runs database migrations
- Builds the Next.js application
- Updates tracker script
Quick Update Command
Combine all steps:Using a Script
Create an update script:update.sh
Kubernetes Upgrade
Update Deployment
Using kubectl set image
Direct image update:Rollback Kubernetes Deployment
Database Migrations
Migrations run automatically during the upgrade process:Automatic Migration
- Docker
- Source
Migrations run automatically on container start via the The
start-docker script:check-db script runs prisma migrate deploy.Manual Migration
Run migrations manually if needed:Skip Migration
Skip automatic migration:Version-Specific Upgrade Notes
Upgrading to v3.x
v3.0.0 - Major Release
v3.0.0 - Major Release
Breaking Changes:
- Requires Node.js 18.18+
- Requires PostgreSQL 12.14+
- New database schema with additional tables
- Updated API endpoints
- Team collaboration
- Revenue tracking
- URL shortener
- Tracking pixels
- Enhanced reporting
- Allow extra time for migration (large databases may take 10+ minutes)
- Default admin password changed to
umami(wasadmin) - Review team permissions after upgrade
Upgrading from v2.x
Automated Updates
Renovate Bot
Use Renovate for automatic dependency updates:renovate.json
Watchtower (Docker)
Automatic Docker container updates:docker-compose.yml
Monitoring Updates
GitHub Releases
Watch for new releases:- Visit GitHub Releases
- Click “Watch” → “Custom” → “Releases”
- Get notified of new versions
RSS Feed
Subscribe to release feed:Changelog
Review changes before upgrading:- GitHub Changelog
- Release notes include:
- New features
- Bug fixes
- Breaking changes
- Migration notes
Upgrade Checklist
Pre-Upgrade Checklist
Pre-Upgrade Checklist
- Review changelog for breaking changes
- Backup database
- Check disk space (build requires temporary space)
- Test upgrade in staging environment
- Schedule maintenance window
- Notify users of potential downtime
- Verify Node.js and PostgreSQL versions
- Have rollback plan ready
During Upgrade
During Upgrade
- Monitor upgrade logs
- Watch for migration errors
- Check database performance
- Verify application starts successfully
Post-Upgrade
Post-Upgrade
- Verify version number in UI
- Test core functionality (login, analytics, reports)
- Check for JavaScript errors in browser console
- Review application logs
- Monitor performance metrics
- Test data collection (tracker)
- Verify API endpoints
- Keep backup until stability confirmed
Troubleshooting Upgrades
Migration fails
Migration fails
Check migration status:View error details in logs:Common issues:
- Insufficient disk space
- Database connection timeout
- Constraint violations from existing data
Application won't start
Application won't start
Check logs for errors:Common issues:
- Missing environment variables
- Database connection failed
- Port already in use
- Node.js version mismatch
Tracker not working after upgrade
Tracker not working after upgrade
Update tracker cache:Clear browser cache and test:
Performance degraded after upgrade
Performance degraded after upgrade
Run database maintenance:Check for missing indexes:Monitor query performance:
Best Practices
Test First
Always test upgrades in staging before production.
Backup Everything
Create backups before every upgrade, no exceptions.
Read Changelogs
Review release notes for breaking changes.
Monitor After Upgrade
Watch logs and metrics for issues after upgrading.
Next Steps
Migrations
Learn about database migrations
Troubleshooting
Solve upgrade issues
Environment Variables
Configure your instance
Docker Deployment
Docker upgrade details