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

# Event Tracking

> How Upstack Data captures ecommerce events — browser pixel, Shopify webhooks, and server-side API — and how the event taxonomy organizes them for attribution and destination forwarding.

Event tracking is the foundation of everything Upstack Data does: every metric, attribution model, and destination forward starts with a captured event.

Upstack captures events from three surfaces:

* **Browser** — the [Upstack pixel](/pixel/setup) fires standard events like `page_view`, `add_to_cart`, and `purchase` as shoppers browse your store.
* **Shopify** — automatic webhooks feed server-side `purchase` and `refund` events without any browser dependency.
* **Server-side** — the [Events API](/api-reference/introduction) and the [`upstack` CLI](/cli/install) ingest events from your own backend.

Every captured event flows through the same pipeline: identity resolution, enrichment (click IDs, UTMs, order data), and forwarding to your configured [destinations](/destinations/catalog/overview).

## The event taxonomy

All events Upstack recognizes are organized in the [Event Taxonomy](/event-tracking/event-taxonomy):

* [Standard Events](/event-tracking/event-taxonomy/standard-events) — the 27 predefined ecommerce and lead-gen events every destination understands.
* [Custom Events](/event-tracking/event-taxonomy/custom-events) — your own events beyond the standard set.
* [Upstack-Generated Events](/event-tracking/event-taxonomy/upstack-generated) — backend-derived events like `nc_purchase` and AOV-tier purchases.
* [Quiz Events](/event-tracking/event-taxonomy/quiz-events) — quiz funnel tracking.
* [SaaS Events](/event-tracking/event-taxonomy/saas-events) — subscription lifecycle, trials, payments, and seat management for B2B.
* [Event Properties](/event-tracking/event-taxonomy/properties) — the fields every event accepts, from `value` and `currency` to the `items` array.

## Next steps

* Install the pixel with [Pixel Setup](/pixel/setup).
* Send events from your own code with the [JavaScript SDK](/pixel/javascript-sdk).
* Query tracked events with the [Analytics API](/api-reference/introduction).
