> ## Knowledge Base Index
> Fetch the complete knowledge base index at: https://help.crisp.chat/sitemap.xml
> Use this file to discover available pages before exploring further.
> Pure-Markdown content can be obtained by appending a '.md' suffix to the content URLs listed in the sitemap (without the trailing slash).

# How to Connect Segment.com with Crisp

*Learn how to connect Segment to Crisp so Segment identify calls can create and update Crisp contacts.*

The **Segment** integration lets Crisp receive contact data from Segment. Crisp acts as a destination, which means data sent from your Segment sources can create or enrich contacts in Crisp.

| The Segment integration is available from the **Crisp Essentials** plan.

---

# ${color}[#0080dd](Connect Segment to Crisp)

1. Go to [**Crisp**](https://app.crisp.chat).
2. Open **Plugins → Segment**.

![Open the Segment plugin in Crisp](https://storage.crisp.chat/users/helpdesk/website/87ae2703583ac800/segment_wtnzho.png =1000xauto)

3. Click **Connect to Segment**.
4. In Segment, select the workspace and source to connect.
5. Click **Allow**.

![Authorize Crisp in Segment](https://storage.crisp.chat/users/helpdesk/website/87ae2703583ac800/segment-auth_ikz2jt.png =1000xauto)

Crisp can now receive contact data from Segment.

---

# ${color}[#0080dd](Create a Crisp contact with Segment Identify)

To create or update a Crisp contact through Segment, use the **Identify** method. The email trait is required to create a Crisp contact.

```js
analytics.identify('userId123', {
  name: 'John Doe',
  email: 'john.doe@segment.com',
  phone: '012346789',
  avatar: 'https://pbs.twimg.com/profile_images/834424630630817795/TfyS4uXb_400x400.jpg'
});
```

When Segment sends the identify call, Crisp uses the supported traits, such as **name**, **email**, **avatar**, and **phone**, to update the contact.

![Segment contact created in Crisp](https://storage.crisp.chat/users/helpdesk/website/87ae2703583ac800/cleanshot-2025-02-28-at-104513_7nzuja.png =1000xauto)

||| The `email` trait is mandatory when creating a Crisp contact from Segment.

---

# ${color}[#0080dd](Track events with Segment)

||| Segment event tracking to Crisp is currently disabled. Use the [Crisp Web SDK](https://docs.crisp.chat/guides/chatbox-sdks/web-sdk/dollar-crisp/) to push user data and events instead.

A Segment `track` call can look like this, but events are not currently available through the Segment integration:

```js
analytics.track('Completed Purchase', {
  revenue: 42.99,
  shippingMethod: '2-day',
  category: 'Conversion'
});
```

![Segment event example in Crisp](https://storage.crisp.chat/users/helpdesk/website/87ae2703583ac800/cleanshot-2025-02-28-at-104533_1feje6j.png =1000xauto)

---

# ${color}[#0080dd](Identify conversations on the frontend)

Segment identifies contacts and events, but conversations happen on the frontend. To attach the Segment identity to the Crisp chatbox session, listen to Segment identify calls and pass the user data to `$crisp`.

```js
analytics.on("identify", function(event, properties, options) {
  if (properties.email) {
    $crisp.push(["set", "user:email", properties.email]);
  }

  if (properties.name) {
    $crisp.push(["set", "user:nickname", properties.name]);
  }
});
```