Skip to content
kymoDocs
Guides

Goals

A goal is any conversion you want to count: a signup, a purchase, a contact. Kymo captures three kinds.

Automatic goals

These need no code. beat.js watches for them:

  • WhatsApp links (wa.me, api.whatsapp.com, web.whatsapp.com, whatsapp:).
  • Phone links (tel:).
  • Email links (mailto:).
  • Form submits — any <form> submission, filed as form:<name> using the form's name or id.

Key-page goals

To count a view of a specific path as a conversion, list it in data-goals on the script tag, comma-separated:

<script defer src="https://kymo.in/beat.js"
        data-site="yoursite.com"
        data-goals="/signup,/onboarding/complete"></script>

A pageview of a listed path records a goal named page:/signup.

Custom goals

Fire a goal from your own code with window.kymo:

// a simple named goal
window.kymo('newsletter-signup');

// a goal with revenue attached
window.kymo('purchase', { revenue: 49 });

The name is capped at 100 characters. revenue must be a number; it feeds the revenue totals in the dashboard.

Reading goals

The Goals page shows, per goal: completions, conversion rate against site visitors, revenue where present, and the first-touch source — the UTM source, or the referrer when there is no UTM. First-touch attribution answers "what originally brought the people who converted," not just the last click.

Revenue

Attach revenue to a goal with window.kymo('purchase', { revenue: 49 }) and it totals in the dashboard's revenue view. Fire it wherever you confirm a payment — your checkout's success page is the usual spot.