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

# Integrate with Your 3rd Party Analytics System

> Understanding Helium's event forwarding and analytics integration.

## Configure Automatic Event Forwarding

<Note>
  Don't see your analytics provider here, or have a custom setup you want us to send events to? Reach out to [founders@tryhelium.com](mailto:founders@tryhelium.com) — we might support it under the hood.
</Note>

Visit the [Integrations page](https://app.tryhelium.com/integrations/analytics) of the Helium dashboard and follow the instructions there to configure your analytics provider so Helium will automatically forward [Helium Events](https://docs.tryhelium.com/guides/helium-events).

## What events and properties are logged?

All Helium events are automatically forwarded to your analytics backend.

<Info>
  Helium forward events in batches. It may take several minutes for live events to populate in your analytics provider.
</Info>

### Event Names

| Event Name                      | Description                                                    |
| ------------------------------- | -------------------------------------------------------------- |
| `initialization_started`        | SDK initialization began                                       |
| `initialization_succeeded`      | SDK successfully initialized and downloaded paywalls           |
| `initialization_failed`         | SDK failed to initialize or download paywalls                  |
| `experience_opened`             | A paywall was presented to the user                            |
| `experience_open_failed`        | A paywall failed to open                                       |
| `experience_view_rendered`      | The paywall view finished rendering                            |
| `experience_view_render_failed` | The paywall view failed to render                              |
| `experience_skipped`            | A paywall was skipped (e.g. targeting rules excluded the user) |
| `experience_dismissed`          | The user dismissed the paywall                                 |
| `experience_view_closed`        | The paywall view was closed                                    |
| `purchase_started`              | The user tapped a purchase button                              |
| `purchase_pending`              | A purchase is pending (e.g. awaiting parental approval)        |
| `purchase_succeeded`            | A purchase completed successfully                              |
| `purchase_failed`               | A purchase failed                                              |
| `purchase_abandoned`            | The user cancelled the purchase flow                           |
| `entitlement_restored`          | A previous purchase was successfully restored                  |
| `entitlement_restore_failed`    | A purchase restore attempt failed                              |
| `user_experiment_allocated`     | The user was allocated to an experiment variant                |
| `custom_event`                  | A custom analytics event fired from the paywall                |

### Field Names

Below is a preview of the key fields that are sent with Helium events to your analytics system. For the complete list of all fields, download the CSV file.

<Card title="Download Full Field List" icon="download" href="/files/helium-event-fields.json">
  Download a JSON file containing all event field names, types, and descriptions
</Card>

#### Common Event Fields

| Field Name                     | Description                                  |
| ------------------------------ | -------------------------------------------- |
| `helium_event_timestamp`       | Timestamp when the event occurred            |
| `helium_event_name`            | Event type name (see Event Name Mapping tab) |
| `experiment_id`                | Experiment unique identifier                 |
| `experiment_chosen_variant_id` | Unique identifier of the assigned variant    |
| `geo_country_name`             | Country name derived from IP address         |
| `locale_country`               | Device country code                          |
| `trigger_name`                 | Name of the trigger that opened the paywall  |
| `paywall_id`                   | Paywall unique identifier                    |
| `paywall_name`                 | Human-readable paywall name                  |

## Linking & Identifying Users

See the **Identifying Users** section of the SDK quickstart guides. Let Helium know the user ID of your users so forwarded analytics events will link up.

If your user starts out anonymous, be sure to set the **third party analytics anonymous ID** on the Helium SDK with the anonymous/device ID from your analytics provider SDK. This will allow events from an anonymous user to link up as well.
