Event fields
revenue, or properties that is neither an object nor an array is dropped. With ?pagent_debug=1 the SDK logs why in the console.
Labels
The label is the key goals and funnels are built on, so pick names you will keep.- pagent trims the label, lowercases it and replaces spaces with underscores:
Add To Cartarrives asadd_to_cart. - After that, only lowercase letters, digits and
_ . : -are allowed, up to 120 characters. Events with other characters are dropped. - A website can have up to 200 distinct event labels. Events with new labels beyond that are dropped, so do not put IDs or other variable values into the label. Use
propertiesfor those. - A label cannot be renamed once recorded. You can give it a friendlier Display name under Tracking → Sources → Events → Edit definition.
signup, add_to_cart, checkout_started, demo_booked.
Shorthand
window.pagent.emit(label, properties) sends the same event without revenue:
window._pgnt.push because it also accepts revenue and works before the SDK has loaded without an extra check.
Consent
Events follow the same consent rules as every other pagent event. In the strict consent path they are held in memory until the visitor opts in.Checking your events
- Open your site with
?pagent_debug=1and trigger the action. The console showsPushing event (event). - Listen on the
pagent:eventbus to see the enriched event, including its session and URL. - In pagent, open Tracking → Sources → Events. The label appears with its source, the last 30 days of volume and when it was last seen.
Replacing programmatic conversions
If your site sendskind: "conversion", change the kind to "event" and keep the label. Then create an event goal on it. The full steps are in Migrating from programmatic goals.