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

# Modulo Analytics

> Traccia eventi personalizzati e attività utente tramite base44.analytics.

<Warning>
  Questa pagina fa parte di una skill per agenti di codifica IA ed è scritta per gli agenti, non per gli esseri umani. Per la documentazione Base44 leggibile dagli umani, consulta la [documentazione per sviluppatori](/developers).
</Warning>

# Modulo Analytics

Traccia eventi personalizzati e attività utente tramite `base44.analytics`.

## Contenuti

* [Metodi](#metodi)
* [Esempi](#esempi)
* [Tracciamento automatico](#tracciamento-automatico)
* [Best practice](#best-practice)

## Metodi

| Metodo          | Firma  | Descrizione                      |
| --------------- | ------ | -------------------------------- |
| `track(params)` | `void` | Traccia un evento personalizzato |

## Esempi

### Tracciare un evento personalizzato

```javascript theme={null}
// Track a simple event
base44.analytics.track({
  eventName: "button_clicked"
});

// Track event with properties
base44.analytics.track({
  eventName: "purchase_completed",
  properties: {
    product_id: "prod-123",
    amount: 99.99,
    currency: "USD"
  }
});
```

### Tracciare azioni utente

```javascript theme={null}
// Track page view
base44.analytics.track({
  eventName: "page_view",
  properties: {
    page: "/dashboard",
    referrer: document.referrer
  }
});

// Track feature usage
base44.analytics.track({
  eventName: "feature_used",
  properties: {
    feature: "export_data",
    format: "csv"
  }
});
```

## Tracciamento automatico

Il modulo analytics traccia automaticamente:

* **Eventi di inizializzazione**: quando l'app viene caricata
* **Eventi di heartbeat**: segnali periodici di attività
* **Durata della sessione**: tempo trascorso nell'app

Questi eventi interni aiutano a misurare l'engagement dell'utente senza strumentazione manuale.

## Best practice

1. **Usa nomi di evento descrittivi**: `order_completed` invece di `click`
2. **Includi proprietà rilevanti**: aggiungi contesto che aiuta ad analizzare l'evento
3. **Sii coerente**: usa gli stessi nomi di evento e chiavi di proprietà in tutta l'app
4. **Non tracciare dati sensibili**: evita informazioni personali nelle proprietà dell'evento

```javascript theme={null}
// Good: Descriptive with relevant properties
base44.analytics.track({
  eventName: "subscription_started",
  properties: {
    plan: "pro",
    billing_cycle: "annual"
  }
});

// Avoid: Vague event name, no context
base44.analytics.track({
  eventName: "click"
});
```

## Definizioni di tipo

```typescript theme={null}
/** Properties that can be attached to a tracked event. */
type TrackEventProperties = {
  [key: string]: string | number | boolean | null | undefined;
};

/** Parameters for the track() method. */
interface TrackEventParams {
  /** The name of the event to track. */
  eventName: string;
  /** Optional properties to attach to the event. */
  properties?: TrackEventProperties;
}

/** The analytics module interface. */
interface AnalyticsModule {
  /** Track a custom event with optional properties. */
  track(params: TrackEventParams): void;
}
```

<Note>Questa pagina è stata tradotta utilizzando l'IA. Per informazioni più accurate e aggiornate, consulta la [versione inglese](/). </Note>
