Goals
Turn any custom event or pageview into a tracked conversion, with unique converters, conversion rate and revenue, sliceable by any filter.
What a goal is
A goal turns something a visitor does into a tracked conversion. That "something" is either a custom event you send (a signup, a purchase) or a pageview of a page that only loads after the action (a /thanks or/welcome page). Once a goal exists, Numative reports how many visitors reached it and what share of your traffic that is.
The two goal types
| Type | Matches | Example value |
|---|---|---|
| Custom event | Events sent with this exact name | Signup |
| Pageview | Pageviews whose path matches (globs allowed) | /thanks/* |
A pageview goal accepts a * wildcard, so /thanks/* matches /thanks/order-123 and /thanks/newsletter alike. An event goal matches on the exact name you passed to numative(), including case, and accepts no wildcard.
A pageview goal is about the page, so query strings and a trailing slash don't break it: /thanks counts a visit to /thanks?utm_source=newsletter and to /thanks/. This holds whether or not the site keeps query strings in its reports. If you want a specific query to be its own goal, write it into the path (/checkout?step=2) and the goal is then matched literally.
An event goal counts only events your site actually sends, so the numative() call has to exist in your code first. For which type to choose, where that call goes, and how to confirm an event name has arrived before you type it here, see how the pieces fit together.
Set up a goal
- 1
Send the event (event goals only)
For a conversion that is not just a page load, send a custom event at the moment it happens. Skip this step if your goal is a pageview.
js numative("Signup")See Custom events for the full API, including properties and revenue.
- 2
Open the Goals section
In your site's dashboard, open Goals and click New goal.
- 3
Choose the type and value
Pick Custom event and type the event name (
Signup), or pick Pageview and type the path (/thanks/*). Give the goal a clear name so it reads well in the conversions table. - 4
Save
The goal starts counting immediately over your selected date range. Goals are retroactive: because they match your existing pageviews and events, a new goal shows history from before you created it.
What each goal reports
One row per goal, in the conversions table:
- Conversions: unique visitors who reached the goal at least once in the window.
- Rate: conversions divided by all visitors in the window.
- Events: how many times the goal fired in total. It is higher than Conversions when visitors convert more than once.
- Revenue: summed from the
revenueamounts the underlying events carry, counting only amounts in the goal's own currency so two currencies are never added together. A goal with no currency set reports no revenue.
The goal's currency is a 3-letter code such as USD, not an amount. It only decides which currency to total. The amounts themselves come from your site, on the event you send, so only a custom-event goal can report revenue: a pageview never carries an amount, and a page goal with a currency set will always report none. To track the value of a purchase, send an event when it completes and point the goal at that event name:
numative("Purchase", { revenue: { amount: 19.99, currency: "USD" } })sessionStorage if the amount is rendered into the page.Goals respect the dashboard's filters and segments, so you can read the same goal by source, country, device or any custom property. Filter to source = google to see your signup rate from organic search, for example.
Goals on the Overview
Once a site has at least one goal, a Goals card appears on the Overview beside the other breakdowns, ranking each goal by converting visitors over the selected range. It reports the same two figures as the Goals section: Visitors (unique converters) and Events (total times the goal fired). Sites with no goals don't get the card.
Filter by a goal
Clicking a row on that card, or adding a Goals filter from the filter bar, narrows the whole dashboard to the visits that converted that goal. The chart, Pages, Sources, Locations and Devices then all describe converting traffic, which is what answers "where do my conversions actually come from".
- The filter is visit-scoped: a visitor who converted this morning and browsed again in the evening contributes only the visit that converted, not both.
Goals is not Xmeans visits that did not convert X, not visits that converted something else. Comparing the two is the fastest read on what converting visits do differently.- The operators match on the goal's name, so
Goals contains signupcovers every goal you named that way.
Goals are a collector feature, so the card and the filter are absent while a dashboard is reading GA4.
Worked example
Say you want to measure newsletter signups that finish on a confirmation page, and paid-plan purchases that fire a Purchase event with revenue:
| Goal name | Type | Value |
|---|---|---|
| Newsletter signup | Pageview | /newsletter/confirmed |
| Purchase | Custom event | Purchase |
The Purchase goal then shows converting visitors, total purchases, the conversion rate and total revenue. Add a funnel if you want to see the steps between landing and converting: Funnels.