> ## Documentation Index
> Fetch the complete documentation index at: https://docs.clickbase.so/llms.txt
> Use this file to discover all available pages before exploring further.

# Goals

> A goal is an action you want visitors to take — signing up, reaching a page, scrolling through your pitch, or making a purchase.

A **goal** is an action you want visitors to take — signing up, reaching a page, scrolling through your pitch, or making a purchase. Once a goal is defined, Clickbase counts how many visitors complete it and shows its conversion rate right in the dashboard, so you can measure outcomes rather than just traffic.

## Types of goal

Every goal has a **match type** that decides what triggers it:

| Type        | Completes when a visitor…                                                                   |
| ----------- | ------------------------------------------------------------------------------------------- |
| Page        | Views a specific page path.                                                                 |
| Scroll      | Scrolls past a depth threshold on a page.                                                   |
| Event       | Fires a named custom event you send from your site.                                         |
| Autocapture | Clicks an outbound link, downloads a file, clicks a button, submits a form, or copies text. |

Autocapture goals can either match any event of their kind (any outbound click, say) or be scoped to a specific element with a selector. A goal can also carry a **revenue** value when it's an event goal with a currency — that's how reported revenue attaches to a goal (see below).

## Create a goal

1. Open your site's **Goals**.
2. Add a goal and pick its match type.
3. Fill in what it matches:
   * **Page / scroll** — the page path (a scroll goal also takes a depth percentage).
   * **Event** — the custom event name your site sends.
   * **Autocapture** — optionally a selector, or leave it blank to match any event of that kind.
4. Optionally give it a display name; if you leave it blank, one is derived from the match type and value.

Conversions recompute live from your data, so if you retarget a goal later its numbers reflect the new definition across your whole history — nothing is locked in at creation time.

## Reserved event names

Event goals can't use names that Clickbase reserves for its own tracking. These names are off-limits and will be rejected:

* `pageview`, `engagement`, `performance`, `web-vitals`
* Stripe lifecycle goals: `payment`, `free_trial`, `trial_started`, `trial_converted`, and the `subscription_*` names (`subscription_started`, `subscription_renewed`, `subscription_upgraded`, `subscription_downgraded`, `subscription_cancel_scheduled`, `subscription_reactivated`, `subscription_ended`)

The Stripe lifecycle names are reserved because they represent **verified** revenue and subscription flow, which only Stripe and the Payments API are allowed to write — the browser can never fake them. After you connect Stripe they appear automatically in the goal picker / filter UI (and can be used as funnel steps) without creating a custom goal. See [Track revenue](/track-revenue) for the full explanation.

## Revenue goals

To attribute money to a goal, create an **event goal with a currency** — a revenue goal — and send the amount from your site with a matching event. This is **reported** revenue: great for attribution (which visits turn into sales), but never treated as accounting-grade money. It shows against the goal, never on the Revenue page. For confirmed money, connect Stripe instead — see [Connect Stripe](/kb/connect-stripe) and [Track revenue](/track-revenue).

Note that a revenue goal's target is denominated in the currency active when you create it, so you can't change the site's reporting currency while a revenue goal exists.

## From goals to funnels

A single goal answers "how many converted." To see *where* people fall off on the way there, chain several steps into a [funnel](/kb/funnels). The full API for managing goals is documented under [Goals](/api/goals).
