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

# Klaritics SDK Event and Attribute Naming Rules

> Follow Klaritics SDK naming conventions: use $ prefix for SDK-generated events and custom attributes. No org-specific prefixes. Screen tracking is not included.

Klaritics SDKs enforce a consistent naming convention for events and attributes. Following these rules ensures that analytics data is predictable, queryable, and compatible with the Klaritics platform. This page covers the `$` prefix rule, examples of valid names, and what is not currently supported.

## SDK-generated events

Events created automatically by the SDK must use a `$` prefix. This makes it easy to distinguish system events from custom business events in your analytics.

| Event              | Description                                |
| ------------------ | ------------------------------------------ |
| `$app_opened`      | Fired when the application is launched.    |
| `$session_started` | Fired when a new analytics session begins. |
| `$session_ended`   | Fired when an analytics session ends.      |

Do not add an organization-specific prefix. Use exactly `$` followed by the event name in `snake_case`.

## SDK-sent attributes

Attributes sent by the SDK that are not already defined in the Klaritics chunk model must also use a `$` prefix. This applies to custom user identifiers, device properties, and any other metadata you attach via the SDK.

| Attribute         | Description                                     |
| ----------------- | ----------------------------------------------- |
| `$custom_user_id` | A user identifier provided by your application. |
| `$device_model`   | The device model reported by the SDK.           |

Attributes that are part of the built-in chunk model do not need a prefix.

## What is not included

<Note>
  Screen tracking is not part of the current SDK setup. If you need page or screen analytics, use URL-based page tracking for web apps (configured from the Klaritics dashboard) or log custom events manually via `logEvent` / `logAppEvent`.
</Note>

## Summary

* Use `$` for all SDK-generated events.
* Use `$` for custom attributes not already in the chunk model.
* Do not use organization-specific prefixes.
* Do not use `$` for built-in chunk model fields.
