Goals And Conversions
Goals let you define the pages that represent a meaningful outcome on your website — a thank-you page after signup, an order confirmation, a pricing page visit — and see how often visitors reach them. Each goal completion can carry a monetary value, making it straightforward to track revenue alongside traffic.
What goals are
A goal is a rule that Statalog evaluates against the URL of every recorded pageview. When a URL matches a goal's pattern, a completion is recorded for that session. Goal completions are deduplicated per session using Redis: once a visitor triggers a goal within a 30-minute session window, triggering the same goal again will not add another completion.
Goals are the simplest way to answer: how often does something I care about happen on my site, and is that number going up or down?
Creating a goal
- In the sidebar, go to Analytics → Goals.
- Click Add goal.
- Enter a name for the goal (e.g. Signed Up, Checkout Complete).
- Choose a match type and enter the URL pattern (see below).
- Optionally, set a monetary value (see Revenue tracking).
- Click Save.
Goals take effect immediately for all future pageviews. They are not applied retroactively to historical data.
URL match types
Statalog supports three match types. Choose the one that best fits your conversion URL.
Exact
The pageview URL must be identical to the pattern you provide.
/thank-you
Matches: https://example.com/thank-you
Does not match: https://example.com/thank-you?ref=email or https://example.com/thank-you/
Use exact when your conversion URL never varies and has no query string or trailing slash variation.
Starts with
The pageview URL must begin with the pattern.
/order/confirmed
Matches: https://example.com/order/confirmed, https://example.com/order/confirmed/12345
Does not match: https://example.com/order/
Use starts with when the URL includes a dynamic segment after a fixed prefix, such as an order ID or user ID.
Contains
The pageview URL must contain the pattern anywhere.
checkout/success
Matches: https://example.com/en/checkout/success, https://example.com/checkout/success?plan=pro
Does not match: https://example.com/checkout/failed
Use contains when the URL structure varies by locale, path depth, or query parameters but always includes a recognisable substring.
Goal completions in the dashboard
The Goals report shows each goal with:
- Completions — the total number of times the goal was triggered in the selected date range
- Conversion rate — completions divided by total sessions, expressed as a percentage
- Revenue — the total monetary value of all completions (if a value is set)
- Unique converters — the number of distinct visitors who completed the goal
Click a goal name to see a trend graph of completions over time and a breakdown of which traffic sources drove the most conversions.
Revenue tracking
Every goal can have a fixed monetary value. When a goal is completed, Statalog copies the current value at the time of completion and stores it with the completion record. This means:
- If you later change the goal's value, past completion records are not affected.
- Revenue totals in the dashboard reflect the value that was set when each completion occurred.
To assign a value, enter an amount in the Value field when creating or editing a goal. You can use any currency — Statalog stores the number and you choose how to interpret it.
For dynamic values (e.g. actual purchase amounts that vary per order), use a custom event with a revenue property instead, which lets you pass the exact amount at the time of the transaction.
GoalConverted webhooks
When a goal is completed, Statalog can fire an outgoing webhook. This lets you connect conversions to external systems — CRMs, Slack notifications, automation workflows — without polling the API.
To configure a webhook, go to Site settings → Webhooks and add an endpoint. The payload delivered to your endpoint for a GoalConverted event includes the goal name, completion timestamp, page URL, and revenue value.
Comparison with Google Analytics 4
Google Analytics 4 uses an event-based goal model that requires you to define custom events, mark them as conversions, and often use Google Tag Manager to instrument non-standard interactions. The setup involves multiple screens and the concepts can be non-obvious for teams without analytics expertise.
Statalog's URL-based goals need no tag manager, no event instrumentation, and no Google product training. If you know what URL your confirmation page lives at, you can set up a goal in under 60 seconds. For custom interactions that do not result in a page navigation, Statalog's custom events provide the same flexibility as GA4's event conversions, with a simpler API.
Frequently asked questions
Can a visitor trigger the same goal twice?
Not within the same session. Statalog uses Redis to deduplicate goal completions within a 30-minute session window. If a visitor lands on your /thank-you page, navigates away, and returns to /thank-you within the same session, only one completion is counted. If they return after the 30-minute window has elapsed, a new session starts and a second completion is recorded.
When does a value change affect past data? It does not. The monetary value is copied at the moment of completion and stored with the completion record. Editing a goal's value only affects completions recorded after the change.
Can I delete a goal? Yes. Deleting a goal removes it from the Goals report. Historical completion data associated with the goal is also removed and cannot be recovered. If you want to stop tracking a goal temporarily without losing data, edit the goal and change its pattern to something that will not match any real URL.
Do goals work with SPAs?
Yes. Because Statalog tracks client-side navigation events from history.pushState and popstate, every route change in a single-page application is evaluated against your goal patterns — no additional setup required.