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

# Introduction

> Learn more about the Dub Analytics script and how to install it.

Dub Analytics (`@dub/analytics`) is a lightweight (\~1kb), [open-source](https://github.com/dubinc/analytics) client-side script for [tracking conversion events](/help/article/dub-conversions) with Dub.

The script handles the detection of the `dub_id` query parameter and storing it as a first-party cookie, which will be used to attribute subsequent conversion events to the original link.

![A diagram showing how click events are tracked in the conversion funnel](https://assets.dub.co/help/conversion-click-event.png)

If you're using Dub Partners, this script also lets you [track clicks on the client-side](/docs/sdks/client-side/features/click-tracking) using query parameters (e.g. `?via=john`). This gives you the flexibility to track clicks directly on your website or app, without needing to rely on link redirects.

## Installation guides

You can install the Dub Analytics script in several different ways:

> **[React](/docs/sdks/client-side/installation-guides/react)**

> **[Manual installation](/docs/sdks/client-side/installation-guides/manual)**

> **[Framer](/docs/sdks/client-side/installation-guides/framer)**

> **[Shopify](/docs/sdks/client-side/installation-guides/shopify)**

> **[WordPress](/docs/sdks/client-side/installation-guides/wordpress)**

> **[Webflow](/docs/sdks/client-side/installation-guides/webflow)**

> **[Google Tag Manager](/docs/sdks/client-side/installation-guides/google-tag-manager)**

## Features

The Dub Analytics script comes with the following features:

* [Conversion-tracking](/docs/sdks/client-side/features/conversion-tracking)
* [Client-side click-tracking](/docs/sdks/client-side/features/click-tracking)
* [Cross-domain tracking](/docs/sdks/client-side/features/cross-domain-tracking)
* [Reverse-proxy support](/docs/sdks/client-side/features/reverse-proxy-support)

## Properties

You can pass the following props to the Dub Analytics script to customize its behavior:

**data-api-host** `url` (default: [https://api.dub.co](https://api.dub.co))

The base URL for the Dub API. This is useful for [setting up reverse
proxies](/docs/sdks/client-side/features/reverse-proxy-support) to avoid
adblockers.

**data-attribution-model** `first-click | last-click` (default: last-click)

The attribution model to use for the analytics event. The following
attribution models are available:

* `first-click`: The first click model
  gives all the credit to the first touchpoint in the customer journey.
* `last-click`: The last click model gives all the credit to the last
  touchpoint in the customer journey.

**data-cookie-options** `JSON-stringified object`

Custom properties to pass to the cookie. Refer to
[MDN's Set-Cookie documentation](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Set-Cookie) for
all available options.

**properties**

**domain** `string`

Specifies the value for the `Domain` Set-Cookie attribute. This is useful
for cross-domain tracking. Example: `.example.com`

**expires** `integer` (default: 90)

Specifies the `Date` object to be the value for the `Expires` Set-Cookie
attribute. Example: `new Date('2024-12-31')`

**expiresInDays** `integer` (default: 90)

Specifies the number (in days) to be the value for the `Expires`
Set-Cookie attribute.

For example, to set the cookie window to 60 days (instead of the default 90 days), you can add the following to your script:

```html theme={null}
<script
  src="https://www.dubcdn.com/analytics/script.js"
  defer
  data-cookie-options='{"expiresInDays": 60}'
></script>
```

**path** `string` (default: /)

Specifies the value for the `Path` Set-Cookie attribute. By default, the
path is considered the "default path". Example: `/`

**data-domains** `JSON-stringified object`

Configure the domains that Dub will track. The following properties are available:

**properties**

**refer** `string`

The Dub custom domain for [referral program client-side click tracking](http://d.to/clicks/refer) (previously `data-short-domain`).
Example: `refer.dub.co`

**site** `string`

The Dub short domain for tracking site visits.
Example: `site.dub.co`

**outbound** `string | string[]`

An array of domains for cross-domain tracking. When configured, the existing `dub_id` cookie
will be automatically appended to all outbound links targeting these domains to enable
cross-domain tracking across different applications.
Example: `"dub.sh, git.new"`

**data-query-params** `string[]` (default: \["via"])

An array of query parameters to listen to for client-side click-tracking (e.g.
`?via=abc123`).

## Open-source examples

Here are some open-source code examples that you can reference:

> **[Dub Analytics with Client-side Click Tracking + Reverse Proxy](https://github.com/dubinc/analytics/tree/main/apps/nextjs-reverse-proxy)**
>
> See the full example on GitHub.

> **[Dub Analytics with Geolocation](https://github.com/dubinc/analytics/tree/main/apps/nextjs-geolocation-script)**
>
> See the full example on GitHub.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.