Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Symfony Utm Bundle Laravel Package

tourze/symfony-utm-bundle

A Symfony bundle for UTM parameter tracking that helps capture campaign query parameters and persist attribution data across requests, making it easier to integrate marketing analytics and conversion tracking into Symfony applications.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Marketing attribution and campaign measurement. A UTM bundle captures utm_source, utm_medium, utm_campaign, utm_term, and utm_content from inbound requests and makes them available to the application (typically persisted to session or cookie). This directly supports decisions about which channels and campaigns actually drive signups, activation, and revenue rather than just clicks.
  • Build vs. buy for tracking plumbing. The alternative is hand-rolling query-param capture, persistence, and first-touch/last-touch logic in middleware, or buying a heavier attribution/CDP product. A small bundle is a low-cost way to get a consistent capture layer without a vendor contract — relevant if attribution is a supporting capability, not a core product differentiator.
  • Roadmap input for growth and lifecycle features. Reliable UTM capture is a prerequisite for referral programs, partner/affiliate tracking, landing-page experiments, and onboarding personalization ("you came from campaign X"). If those are on the roadmap, this is enabling infrastructure to land early.
  • Data-quality and privacy posture. Storing campaign parameters in cookies/sessions is personal-data-adjacent in many jurisdictions (ePrivacy, GDPR consent for non-essential cookies). This package forces an explicit decision on consent gating, retention windows, and whether attribution survives across sessions — a decision PM should own, not leave to engineering defaults.
  • Analytics vendor migration. Owning first-party UTM capture reduces dependence on a single analytics vendor's client-side attribution, which matters when evaluating an analytics replatform.
  • 1.1.0 release signal: a minor bump from 1.0.1 indicates backwards-compatible evolution — likely small feature additions or fixes rather than a rewrite. No migration work should be required, so it does not create roadmap pressure. It is not, on its own, a reason to adopt.

When to Consider This Package

Consider it when:

  • Your application genuinely needs first-touch or session-scoped campaign attribution — paid acquisition, partner/referral programs, or multi-channel growth where "where did this user come from" drives product logic.
  • You are on Symfony (this is a Symfony bundle, not a Laravel package). In a Laravel codebase you would be porting or wrapping it — worth costing that explicitly rather than assuming drop-in compatibility.
  • You want a thin, self-hosted capture layer and are comfortable owning the attribution model (first-touch vs. last-touch, window length, overwrite rules) yourself.
  • The dependency surface and maintenance burden are acceptable for a non-differentiating capability.

Look elsewhere when:

  • The requirement is a full analytics or attribution platform (multi-touch attribution, channel-mix modeling, click IDs like gclid/fbclid beyond UTM). This bundle will not cover that; use a dedicated vendor or warehouse-side modeling.
  • The stack is Laravel-first and the team does not want a Symfony bundle in the dependency tree — a ~100-line middleware plus a small service is often cheaper to own than an adapter layer.
  • Governance requires demonstrable community traction and long-term support. This is a small single-vendor package in the Tourze ecosystem; verify release cadence, test coverage, issue responsiveness, and security disclosure policy before committing. A minor version bump published with only a changelog diff link and no described changes is a weak transparency signal — ask the maintainer or read the commit range before relying on 1.1.0.
  • Consent management is unresolved. If you cannot gate non-essential storage, defer adoption rather than ship a compliance liability.

How to Pitch It (Stakeholders)

For executives: This is a small, low-cost component that fixes a data gap — our ability to say which campaigns and channels produce customers rather than traffic. Today attribution is either manual or vendor-dependent; a first-party capture layer makes marketing spend defensible and unlocks referral and partner tracking later. Cost is engineering time, not licence fees. It is not strategic infrastructure, and it is not a reason to delay other work. The new 1.1.0 release is a backwards-compatible minor update; no action or migration is implied, and it does not change our recommendation.

For engineering: tourze/symfony-utm-bundle is a Symfony bundle for capturing and persisting UTM parameters; 1.1.0 is a non-breaking minor release over 1.0.1, so no upgrade work is triggered. Two things to confirm before we lean on it: (1) it is Symfony — in a Laravel app we would wrap or reimplement the capture in middleware, and we should price that honestly; (2) release notes for 1.1.0 are a changelog link only, so review the diff and confirm tests cover persistence and overwrite semantics. We also need an explicit decision on consent gating and whether attribution is first-touch (sticky) or last-touch (overwriting), because that choice is baked into any downstream reporting and is expensive to change later.

Recommendation: adopt narrowly if we are on Symfony and attribution is a real near-term need; otherwise treat it as reference material for a small internal implementation rather than a dependency.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
jinas/dhivatar
store-doc/laravel-storage-driver
plus-it/laravel-translation-manager
diephp/perhaps
diephp/telegraph
osmaviation/spreadsheet
microsoft/fluentui-system-icons
mmccook/php-json-canonicalization-scheme
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console
pnscripts/filament-broadquill-lite
pnscripts/laravel-sentfold-lite
vleap/mx-sdk-laravel-internal
twidpay/utils
htetmyathlaing/scout-elasticsearch-driver
artisan-toolbox/front-awesome
ls/client-assistant
users-au/laravel-client
cgv/localized-resource