Skip to main content
When you finish, your event appears in Events with a stable name and the properties a conversion rule needs.

What the SDK tracks without you

The web SDK sends a pageview on load and on every SPA route change. That’s the whole list. Clicks, scrolls, form submits, outbound links, and errors are yours to send, so call track() for each one.

Name the event

Use one lowercase, stable name per action. Put the variation in properties.
Never put an ID, a price, or any other changing value in the event name. A name such as purchase_ord_4821 creates a new event name per order, and no conversion rule can match it.

Reserved names

Datalyr sends these names itself. Passing one to track() corrupts the data behind that feature. Every name starting with $ is reserved. Never send one.

Properties a revenue event needs

A conversion rule reads these four properties. Send all four on any purchase-like event.
Keep a property’s type stable. A property that’s a number one day and a string the next breaks the sum in Reports.

Limits

Datalyr enforces no event-name length limit, no property count limit, and no per-property size limit. Datalyr drops an event that has no workspace ID, event name, event ID, or visitor_id. A request returns 400 only when every event in it is invalid.
Never send a password, an access token, a full card number, or regulated health data in a property. We store every property you send and forward matched ones to your ad platforms, so a secret in a property leaves your control.

Verify

  1. Deploy to a staging environment.
  2. Perform the action once as a known test user.
  3. Open Events.
  4. Filter by your event name.
  5. Confirm the row shows the right distinct id, timestamp, and properties.
Build the conversion rule only after this row is correct.

When it does not work

Next