Laravel UTM Tracker is a package for Laravel that automatically or manually tracks UTM parameters from your visitors and stores them in your database. It is ideal for marketing attribution, analytics, and campaign tracking. The package is easy to configure, extend, and integrates seamlessly with Laravel middleware and facades.
- Automatic UTM tracking via middleware
- Manual UTM tracking via Facade
- Stores UTM data in the database, session, or cookie
- Easily extendable for custom UTM parameters
- Ready for analytics and marketing attribution
Install the package via Composer:
composer require code-tree-dev/laravel-utm-trackerPublish the config and migration files (optional):
php artisan vendor:publish --provider="CodeTreeDev\LaravelUtmTracker\LaravelUtmTrackerServiceProvider"Run the migrations if using database storage:
php artisan migrateYou can configure the package in config/laravel-utm-tracker.php:
storage: Where to store UTM data (session,cookie, ordatabase)parameters: Default UTM parameters to trackcustom_parameters: Add your own custom UTM parameterscookie_lifetime: Lifetime for cookies (if using cookie storage)auto_track: Enable/disable automatic tracking via middlewaretable: Table name for database storage
By default, the package's middleware is registered and will automatically capture UTM parameters from incoming requests:
// No action needed if auto_track is enabled in config.You can manually create a UTM visit record using the Facade:
use LaravelUtmTracker;
LaravelUtmTracker::track([
'utm_source' => 'newsletter',
'utm_medium' => 'email',
'utm_campaign' => 'spring_sale',
// ...other fields...
]);Run the test suite with:
composer testContributions are welcome! Please read the CONTRIBUTING and CODE_OF_CONDUCT files for details.
- Open issues for bugs or feature requests
- Submit pull requests for improvements
If you discover any security related issues, please email codetreedev@gmail.com instead of using the issue tracker.
See CHANGELOG for recent changes.
The MIT License (MIT). See License File for details.
This package was generated using the Laravel Package Boilerplate.