Custom Event Tracking Without Cookies: A Practical Guide

Apr 16, 2026
4 min read
TL;DR

Define custom events, choose browser or server delivery, verify identity and retries, and compare documented event models without overstating privacy.

Custom Event Tracking Without Cookies: A Practical Guide

Featured Image

Custom events can be collected without analytics cookies, but event design, storage and identity still determine what the dataset can explain and what you need to review. Start with a business outcome and a precise event contract instead of assuming that a named event is anonymous or automatically exempt from consent.

Define intent and completion separately

EventMeaningWhen to emit
signup_clickedA visitor selected the signup action.After the click; it measures intent.
signup_completedThe application accepted a new account.After trusted application confirmation.
first_project_createdThe account reached a defined activation milestone.After the project was durably created.

Keep property names stable and allowlist the values needed for a report. Avoid whole form objects, email addresses, access tokens and query strings containing secrets. An event payload is only as minimal as the fields your application supplies.

Databuddy: choose the correct runtime

Use the browser helper reference for a browser event. A browser call to track() returns void; it is not a delivery acknowledgement. For a confirmed backend outcome, follow the Node SDK guide, inspect the delivery result and flush before a short-lived runtime exits.

The Next.js signup-to-paid example demonstrates synthetic completion and retry cases. The App Router starter covers installation and pageview delivery. Databuddy avoids analytics cookies but uses browser storage; review its collection settings separately from the event name.

Compare other event models using their current references

ToolImplementation starting pointWhat to verify
PlausibleCustom-event goals and properties.Goal setup, selected-plan funnels and event definitions.
MatomoIts event API and tracker configuration.Edition, plugins and the settings of every enabled feature.
PostHogThe SDK for the runtime you operate.Persistence, identification and enabled product settings.
UmamiCustom events and HTML event attributes.Supported reports, event properties and the deployed edition.

A click attribute still depends on the vendor's script executing; it is not JavaScript-free collection. Likewise, sending an event from a server does not guarantee that it is anonymous, that every action is captured, or that it should bypass a visitor's collection choice.

Choose the identity needed for the question

Aggregate action counts, a session funnel and account-level retention need different linking rules. Document what happens on a reload, on a later day, after login and after account switching. A daily-rotating visitor key and a persistent customer account ID do not provide interchangeable continuity.

Use the funnel comparison to evaluate ordering, conversion windows and counting rules. A UTM on an arrival URL does not by itself establish attribution to a payment days later; the UTM guide explains that scope.

Test delivery, rejection and recovery

  1. Define the expected events for a known synthetic journey.
  2. Complete the action and inspect received properties in the destination.
  3. Fail the action and confirm it does not emit a completion event.
  4. Repeat a callback or retry and check that a successful outcome is not duplicated.
  5. Interrupt event delivery, restore it and verify the intended retry behavior.
  6. Confirm the report uses the intended identity, period and timezone.

A sent request, collector receipt and included report row are distinct checkpoints. The recorded local delivery check demonstrates the first two for a disclosed fixture; it does not establish hosted persistence or real-world capture rates.

Budget and review the configured collection

Check each provider's current plan and billable units instead of relying on an old price quote. Databuddy's Free plan includes 10,000 monthly events; pageviews and custom events both matter when estimating usage. The free-tool comparison separates hosted allowances from operating a self-hosted service.

Review storage, identifiers, optional features, destinations and the applicable collection decision before launch. Cookieless describes one technical property, not a universal completeness, anonymity or consent guarantee.