What is a tracked event?
A tracked event is any user action on your site that you've told datakant to record and surface under a human-friendly name. The tracker observes every page, click and scroll on its own — but those raw signals only become useful once you decide which ones matter and label them.
Once an event is tracked, it shows up in the Events table on the Settings page, in dashboards, funnels and AI Engine queries, and (if you mark it as a conversion) in attribution and ROI reports. Forwarding the event to Google Analytics, Meta CAPI or any of your other destinations is just a matter of mapping the event name on the Destinations tab.
The four trigger types
When you open Add event on the Events tab, the first thing you pick is how the event fires. Each trigger maps to a different shape of user behavior:
URL match
Fire when a visitor lands on a page whose path matches a pattern.
Element click
Fire when a visitor clicks an element you pick from a visual catalog.
Scroll depth
Fire once per page view when the visitor scrolls past 25 / 50 / 75 / 100 %.
Custom dataLayer Coming soon
Fire when your code calls datakant.track() with an event key you choose.
URL match
Use a URL match trigger when the action you care about is “reaching a page.” The classic examples are a thank-you page after a checkout, the post-signup welcome screen, or a specific tab inside a single-page app where the URL fragment changes.
Setup
- Open Settings → Events and click Add event.
- Pick URL match on step 1 and click Continue.
- Enter the path the URL should match, e.g.
/checkout/success. You don't include the domain — the tracker already scopes events to the property you're configuring. - Choose a match type — Exact, Starts with, Contains, or Regex. Wildcards with
*are supported for the first three (e.g./blog/*/share). - Continue to step 3, name the event (snake_case), and save.
/ with Contains) — every page view on your site will count toward this event.Element click
Use a click trigger when the meaningful action is clicking a specific button, link, or other UI element. The datakant tracker continuously observes your site and builds a catalog of elements visitors interact with — you don't need to know the CSS selector. You just pick the element from a visual list.
Setup
- Open Settings → Events → Add event.
- Pick Element click on step 1 and click Continue.
- On the left, browse the catalog of detected elements. Each row shows an inferred event key, a confidence score, how many times the element has been observed, and a sample of its visible text.
- Click an element to pin it. The right pane renders a captured screenshot of the page the element appears on so you can confirm you've picked the right one.
- Picking an element auto-fills a suggested event name into step 3 — review or rename it there, then save.
"Contact" and "Kontakt"), they are grouped together under one event key automatically. You pick the group once; the event fires for any member.Scroll depth
Scroll depth tells you how far down a page a visitor read before bouncing or moving on. It's the quickest engagement signal for long-form pages — blog posts, landing pages, pricing pages with FAQs at the bottom — where time-on-page alone is noisy.
Setup
- Open Settings → Events → Add event.
- Pick Scroll depth on step 1.
- Choose a threshold — 25 / 50 / 75 / 100 %. The visualization next to the picker shows where that threshold sits on a typical page of yours.
- Continue to step 3, name the event (e.g.
scroll_50), and save.
Custom dataLayer
When a meaningful action doesn't correspond to a URL or a click on a visible element — think a successful form submission with client-side validation, a video reaching 75 % playback, or a Stripe Elements payment confirmation — you'll be able to fire events directly from your own JavaScript with window.datakant.track('event_key', { ...properties }).
Naming conventions
Event names are snake_case — lowercase letters, digits and underscores only. They must start with a letter or underscore. The wizard validates this for you and disables Save if the name is invalid.
Good
- checkout_complete
- signup_form_submit
- pricing_cta_enterprise
- scroll_75
Avoid
- CheckoutComplete
- signup form submit
- pricing-cta
- 1stClick
A descriptive prefix (checkout_, signup_, nav_) is the cheapest way to keep your Events list browsable as it grows.
Mark as conversion
Any tracked event can be flagged as a conversion. Conversions are the events that show up in funnels, attribution reports, and the ROI / value rollups across your dashboards — and they're the ones the AI Engine prioritizes when you ask questions like “why did revenue drop last week.”
On step 3 of the wizard, toggle Treat as a conversion. Two extra fields appear:
Default value
The monetary value of one conversion. Used when the firing call doesn't supply its own value (e.g. a scroll-depth conversion will always use this default; a custom dataLayer conversion will use the per-call value if one is passed).
Currency
ISO 4217 code. Defaults to EUR. Used for display and for forwarding to destinations that expect a currency (GA4, Meta CAPI, etc.).
Tips & best practices
- Start narrow. Don't try to track every button on day one. Begin with the two or three events that map directly to your business goal (lead submission, trial start, purchase). Add more as your team starts asking questions the current set can't answer.
- Mark conversions intentionally. Conversions inflate funnel and attribution math. Marking too many events as conversions makes those reports noisy. A good rule of thumb: if an event isn't worth showing the CEO in a weekly summary, it probably isn't a conversion.
- Re-use the catalog. Before creating a new Element click event, scroll the catalog — the same element may already have a high-confidence inferred name you can rename rather than start fresh.
- Match event names across destinations. If the event will be forwarded to GA4 or Meta, pick a name those tools also recognize when possible (
purchase,sign_up,generate_lead) — it removes one mapping step on the Destinations tab.