Socket
Book a DemoInstallSign in
Socket

@dub/analytics

Package Overview
Dependencies
Maintainers
2
Versions
26
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@dub/analytics

`@dub/analytics` allows you to track leads and sales conversions for Dub.

0.0.30
latest
Source
npmnpm
Version published
Weekly downloads
16K
89.55%
Maintainers
2
Weekly downloads
 
Created
Source

Overview

@dub/analytics allows you to track leads and sales conversions for Dub.

Quick start

  • Enable conversion tracking for your Dub link.
  • Install the @dub/analytics package to your project
npm install @dub/analytics
  • Inject the Analytics script to your app
import { Analytics as DubAnalytics } from '@dub/analytics/react';

export default function RootLayout({
  children,
}: Readonly<{
  children: React.ReactNode;
}>) {
  return (
    <html lang="en">
      <body>{children}</body>
      <DubAnalytics />
    </html>
  );
}

You can all use the inject() function to add the tracking script to other frameworks.

Available Props

You can pass the following props to the Analytics component to customize the tracking script.

apiHost

The API host to use for tracking. This is useful for setting up reverse proxies to avoid adblockers. The default is https://api.dub.co.

domainsConfig

This is a JSON object that configures the domains that Dub will track.

  • refer: The Dub short domain for referral program client-side click tracking (previously shortDomain).
  • site: The Dub short domain for tracking site visits.
  • outbound: 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.

shortDomain

[DEPRECATED: use domainsConfig.refer instead] The custom short domain you're using on Dub for your short links (for client-side click tracking).

attributionModel

Decide the attribution model to use for tracking. The default is last-click.

  • 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.

cookieOptions

The cookieOptions prop accepts the following keys:

KeyDefaultDescriptionExample
domainnullSpecifies the value for the Domain Set-Cookie attribute.example.com
expires90 days from nowSpecifies the Date object to be the value for the Expires Set-Cookie attribute.new Date('2024-12-31')
expiresInDays90Specifies the number (in days) to be the value for the Expires Set-Cookie attribute.90
path/Specifies the value for the Path Set-Cookie attribute. By default, the path is considered the "default path"./

For example, to set a 60-day cookie window, you can use the following code:

import { Analytics as DubAnalytics } from "@dub/analytics"

<DubAnalytics
   cookieOptions={{
      expiresInDays: 60,
   }}
/>

queryParam

The query parameter to listen to for client-side click-tracking (e.g. ?via=john, ?ref=jane). The default is via.

scriptProps

Custom properties to pass to the script tag. Refer to MDN for all available options.

Keywords

analytics

FAQs

Package last updated on 22 Aug 2025

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

About

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.

  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc

U.S. Patent No. 12,346,443 & 12,314,394. Other pending.