Privacy-focused analytics for Symfony applications. Track pageviews, visitors, traffic sources, and user behavior without third-party services.
- Privacy-first - No cookies, anonymized IPs, GDPR-friendly
- Self-hosted - All data stays on your server
- Real-time capable - Configurable aggregation frequency
- Lightweight - Minimal JavaScript tracker (~2KB)
- Extensible - Custom entities and metrics
composer require xutim/analytics-bundle// config/bundles.php
return [
// ...
Xutim\AnalyticsBundle\XutimAnalyticsBundle::class => ['all' => true],
];The bundle requires you to create concrete entity classes. See Installation for entity setup.
# config/packages/xutim_analytics.yaml
xutim_analytics:
site_host: 'example.com'
models:
analytics_event:
class: App\Entity\AnalyticsEvent
analytics_event_archive:
class: App\Entity\AnalyticsEventArchive
analytics_daily_summary:
class: App\Entity\AnalyticsDailySummary
analytics_daily_traffic_source:
class: App\Entity\AnalyticsDailyTrafficSource
analytics_daily_country:
class: App\Entity\AnalyticsDailyCountry
analytics_daily_device:
class: App\Entity\AnalyticsDailyDevice
analytics_daily_utm:
class: App\Entity\AnalyticsDailyUtm
analytics_daily_page_referrer:
class: App\Entity\AnalyticsDailyPageReferrer
analytics_daily_session:
class: App\Entity\AnalyticsDailySessionbin/console doctrine:migrations:migrateSee Installation for Stimulus controller setup.
bin/console xutim:analytics:aggregate- Installation - Detailed setup for XutimCMS and standalone
- Configuration - All configuration options
- Scheduler - Automatic aggregation and real-time data
- Architecture - Entity types and data flow
- Templates - Admin routes and templates
- Commands - CLI reference
- Extending - Custom entities, templates, and routes