# CauseWise goals

Ordered multi-step funnels are separate from goals. See [causewise-funnels.md](./causewise-funnels.md).

Goals count matching events as conversions. Tracking status tells you whether those events are arriving. A goal with zero conversions in the selected period is not necessarily broken.

## Install tracking

Add the CauseWise snippet from the site’s Setup page. After it loads, pageviews are sent automatically on the first page load and on client-side navigations.

Until the site has sent at least one event, every active goal shows **Tracking not installed**.

## Page visit goals

Choose **Page visit** and a URL path or pattern:

- `/pricing` matches paths that contain `/pricing`
- `/thank-you` matches that path
- `/checkout/*` matches paths such as `/checkout/complete`

No `window.causewise.track()` call is required. The goal counts `pageview` events whose path fits the pattern.

## Custom event goals

Choose **Custom event** and an event name such as `signup_completed`. Your site must send that event. CauseWise does not detect signups, form submissions, purchases, newsletter joins, or downloads on its own.

```js
window.causewise.track("signup_completed", {
  method: "email"
});
```

An optional path restriction limits where the event counts. Leave it blank to count the event on any page.

## Property conditions

Optional conditions use equality, and every condition must match (AND).

Event `purchase_completed` with `plan = pro` and `currency = USD` counts only events whose properties include both values. Other `purchase_completed` events do not count.

Goals saved without conditions keep matching on event name and path only.

## Verify a goal

On the site dashboard, open **Verify this goal** to see:

- the expected event name and path
- the latest matching event in the selected reporting period, when one exists
- a JavaScript example you can copy
- a link to the event debugger

The debugger lists recent events and which goals they matched. Verification never writes a test conversion.

## Why conversions can be zero

**Receiving events** means matching events arrived in the selected period. The conversion count is how many of them satisfied the goal.

**No matching events** means the site is sending data, but nothing in the period matched this goal’s event, path, and property conditions. The outcome may simply not have happened yet, or a custom event may not be wired up.

**Inactive** goals are excluded from conversion metrics.

Change the dashboard date range if you want a wider or narrower period. The configuration preview uses the last 30 days (or your plan’s retention, when that is shorter) and does not save the goal.
