Dub Conversions is currently in closed beta and would require a Business plan subscription and above. If you’d like to join the beta, reach out to us via email.

Dub Conversions is a powerful tool that lets you to turn any short link you create on Dub into a full attribution engine. This allows you to understand how well your links are translating to actual users and revenue dollars.

Learn more about how Dub Conversions works.

In this guide, we’ll walk you through the steps to get started with Dub Conversions.

Step 1: Install the Dub analytics client-side SDK

First step is to install the Dub analytics client-side SDK.

This will handle 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.

Depending on which framework or platform you’re using, you can install the script in different ways:

Step 2: Install the Dub server-side SDK

Dub Conversions uses server-side event tracking to track conversions. To enable this, you’ll need to install the Dub server-side SDKs.

Depending on which framework you’re using, you can use our native SDKs:

If you’re using a framework that isn’t listed, you can use the Dub REST API to track events on the server-side:

Step 3: Start sending events

Now that you’ve installed the SDKs, you can start sending events to Dub. Since click events are tracked automatically, you’ll only need to send events for the following cases:

Step 3a: Sending Lead Events

The first event you’ll want to send is a lead event. This happens when a user performs an action that indicates interest in your product or service. This could be anything from:

  • Signing up for an account
  • Adding a product to cart
  • Joining a mailing list

Our most common lead event is Sign Up, which happens when a user signs up for an account. Depending on which authentication framework you’re using, here are a few examples of how to send Sign Up lead events:

If you’re using the Remix framework, you might run into an issue where you get an empty/null value for the dub_id cookie. In that case, try using a library like cookie instead:

import cookie from "cookie";

const cookies = cookie.parse(request.headers.get("cookie") ?? "");
const dubId = cookies.dub_id;

When sending a lead conversion event, you can include the following properties:

PropertyDescriptionRequired
clickIdThe unique dub_id parameter that the lead conversion event is attributed to.Yes
eventNameThe name of the event. Example: “Sign up”.Yes
customerIdThe unique ID of the customer in your system. Will be used to identify and attribute all future events to this customer.Yes
customerEmailThe email address of the customer. If not passed, a random email address will be generated.No
customerNameThe name of the customer. If not passed, a random name will be generated (e.g. “Big Red Caribou”).No
customerAvatarThe avatar URL of the customer. If not passed, a random avatar URL will be generated.No

The lead event will serve as the source of truth for the customer’s identity and which link they came from. This means that all subsequent actions performed by the customer (e.g. upgrading their plan, purchasing a product) will automatically be attributed to the original link.

Step 3b: Sending Sale Events

The second event you’ll want to send is a sale event. This happens when a user purchases your product or service. This could be anything from:

  • Subscribing to a paid plan
  • Usage expansion (upgrading from one plan to another)
  • Purchasing a product

Depending on which payment processor you’re using, we offer native integrations for the following:

Alternatively, you can also send sale events manually using our SDKs or the POST /track/sale API endpoint.

Here are the properties you can include when sending a sale event:

PropertyDescriptionRequired
customerIdThe unique ID of the customer in your system.Yes
amountThe amount of the sale in cents.Yes
paymentProcessorThe name of the payment processor that processed the sale.Yes
eventNameThe name of the event. Defaults to “Purchase”.No
invoiceIdThe unique ID of the invoice in your system.No
currencyThe currency of the sale. Defaults to “usd”.No
metadataAn object containing additional information about the sale.No

Lastly, you’ll need enable conversion tracking for your Dub links for to be able to start tracking conversions. You can do this by:

  1. Go to your Dub dashboard
  2. Click on the short link you want to track conversions for, which will open up the Link Builder.
  3. Click on the ... button, which will open up the additional options menu.
  4. Select Enable Conversion Tracking to enable conversion tracking for the link.

You can also use the C keyboard shortcut when inside the link builder to quickly enable conversion tracking for a given link.

Alternatively, you can also enable conversion tracking programmatically via the Dub API. All you need to do is pass trackConversion: true when creating or updating a link:

Step 5: View your conversions

Once you’ve enabled conversion tracking for your links, all your tracked conversions will show up on your Analytics dashboard. We provide 3 different views to help you understand your conversions:

  • Funnel chart: A funnel chart view visualizing the conversion & dropoff rates across the different steps in the conversion funnel (clicks → leads → sales).
  • Real-time events stream: A real-time events stream of every single conversion event that occurs across all your links in your workspace.

Example Apps