Quickstart
Learn how to get started with Dub Conversions
Dub Conversions is currently in closed beta. 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:
React
Add Dub Analytics to your React or Next.js app.
Website Builder
Add Dub Analytics to websites built using Webflow, WordPress, or Framer.
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:
TypeScript
TypeScript library for the Dub API
Go
Go library for the Dub API
Python
Python library for the Dub API
Ruby
Ruby library for the Dub API
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:
NextAuth.js
Tracking a lead conversion event with NextAuth.js and the Dub SDK
Clerk
Tracking a lead conversion event with Clerk and the Dub SDK
Supabase Auth
Tracking a lead conversion event with Supabase Auth and the Dub SDK
Auth0
Tracking a lead conversion event with Auth0 and the Dub SDK
When sending a lead conversion event, you can include the following properties:
Property | Description | Required |
---|---|---|
clickId | The unique dub_id parameter that the lead conversion event is attributed to. | Yes |
eventName | The name of the event. Example: “Sign up”. | Yes |
customerId | The unique ID of the customer in your system. Will be used to identify and attribute all future events to this customer. | Yes |
customerEmail | The email address of the customer. If not passed, a random email address will be generated. | No |
customerName | The name of the customer. If not passed, a random name will be generated (e.g. “Big Red Caribou”). | No |
customerAvatar | The 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:
Stripe
Tracking a sale conversion event with Stripe and the Dub SDK
Shopify
Tracking a sale conversion event with Shopify and the Dub SDK
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:
Property | Description | Required |
---|---|---|
customerId | The unique ID of the customer in your system. | Yes |
amount | The amount of the sale in cents. | Yes |
paymentProcessor | The name of the payment processor that processed the sale. | Yes |
eventName | The name of the event. Defaults to “Purchase”. | No |
invoiceId | The unique ID of the invoice in your system. | No |
currency | The currency of the sale. Defaults to “usd”. | No |
metadata | An object containing additional information about the sale. | No |
Step 4: Enable conversion tracking for your links
Lastly, you’ll need enable conversion tracking for your Dub links for to be able to start tracking conversions. You can do this by:
- Go to your Dub dashboard
- Click on the short link you want to track conversions for, which will open up the Link Builder.
- Enable Conversion Tracking and click Save changes
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:
- Time-series: A time-series view of the number clicks, leads and sales.
- 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
Was this page helpful?