# Attribution Destination

## Destination Info

* Accepts [Page](/docs/segment/connections/spec/page), [Alias](/docs/segment/connections/spec/alias), [Identify](/docs/segment/connections/spec/identify), [Track](/docs/segment/connections/spec/track) calls.
* Refer to it as **Attribution** in the [Integrations object.](/docs/segment/guides/filtering-data/#filtering-with-the-integrations-object)

### Components

* Server

## Connection Modes

[Learn more about connection modes.](/docs/segment/connections/destinations/#connection-modes)

### Device-Mode

* web: no
* mobile: no
* server: no

### Cloud-Mode

* web: yes
* mobile: yes
* server: yes

[Attribution](http://attributionapp.com/) is an easy to use one stop dashboard for multi-touch attribution across all marketing channels. Attribution prides itself on high-fidelity and allows marketers to trace every visit, conversion or revenue dollar to the source. Marketers can easily integrate Attribution and Segment to begin measuring the effectiveness of their campaigns today.

## Getting Started

1. From the Segment web app, click **Catalog**.
2. Search for "Attribution" in the Catalog, select it, and choose which of your sources to connect the destination to.
3. Enter the "Project ID" into your Segment Settings UI which you can find from your [Attribution settings](https://dashboard.attributionapp.com/v1/#!/settings).
4. It will take 15 - 30 minutes for data to begin populating on your Attribution dashboard.

![Attribution dashboard showing traffic sources, spend, and conversions with user details on the right.](https://docs-resources.prod.twilio.com/550e565f2d8ef82ae09ff638919499ad590b8fea48903df349a6d707a5178ed5.png)

## Page

If you haven't had a chance to review our spec, take a look tounderstand what the [Page method](/docs/segment/connections/spec/page/) does. An example call would look like:

```js
analytics.page("pageLoaded");
```

Page calls are sent to Attribution to record visits on your dashboard.

![page.](https://docs-resources.prod.twilio.com/662c0c613c57b8e17d0d63f4e5642b9984e49373ad9b493649c5badeb727480f.png)

## Identify

If you're not familiar with the Segment Specs, take a look to understand what the [Identify method](/docs/segment/connections/spec/identify/) does. An example call would look like:

```js
analytics.identify("userId123", {
  email: "john.doe@segment.com"
});
```

Identify calls are sent to Attribution as an `identify` event and are used to assign traits like `userid`, `name`, and `email` to anonymous visitors.

![identify.](https://docs-resources.prod.twilio.com/40f4b8dada7e0682c624322f01a1b5fb3303e7ff857401504cfe111c20bbf1d8.png)

## Track

If you're not familiar with the Segment Specs, take a look to understand what the [Track method](/docs/segment/connections/spec/track/) does. An example call would look like:

```js
analytics.track("Clicked Login Button")
```

Track calls are sent to Attribution as a `conversion event`. You should add a `conversion event` anywhere a customer takes an action that you'd like to measure the return on ad spend & attribution for. Examples include `sign up`, `demo scheduled`, `deal won`, etc.

![Attribution dashboard showing conversion events, spend, visits, conversions, and revenue for different channels.](https://docs-resources.prod.twilio.com/453d4f679bbcfc3a8fe6a500796bd064e2980937a310f74a5643e297d2b543fc.png)

## Alias

If you're not familiar with the Segment Specs, take a look to understand what the [Alias method](/docs/segment/connections/spec/alias/) does. An example call would look like:

```js
analytics.alias('507f191e81');
```

The `alias` method can be used to merge two user identities in both Segment & Attribution, effectively connecting two sets of user data as one.

## Engage

You can send computed traits and audiences generated using [Engage](/docs/segment/engage) to this destination as a **user property**. To learn more about Engage, schedule a [demo](https://segment.com/contact/demo).

For user-property destinations, an [identify](/docs/segment/connections/spec/identify/) call is sent to the destination for each user being added and removed. The property name is the snake\_cased version of the audience name, with a true/false value to indicate membership. For example, when a user first completes an order in the last 30 days, Engage sends an Identify call with the property `order_completed_last_30days: true`. When the user no longer satisfies this condition (for example, it's been more than 30 days since their last order), Engage sets that value to `false`.

When you first create an audience, Engage sends an Identify call for every user in that audience. Later audience syncs only send updates for users whose membership has changed since the last sync.

> \[!NOTE]
>
> Real-time audience syncs to Attribution  may take six or more hours for the initial sync to complete. Upon completion, a sync frequency of two to three hours is expected.

## Settings

Segment lets you change these destination settings from the Segment app without having to touch any code.

| Field                  | Description                                                                                 | Required | Type   |
| ---------------------- | ------------------------------------------------------------------------------------------- | -------- | ------ |
| Attribution Project Id | Your unique project ID from Attribution, which is accessible from your Attribution account. | Yes      | string |
