# Welcome

Untitled is the all-in-one audience platform that puts all your audience data, from insights to activation, in one place.

Harness the power of data and AI to identify, curate, enrich and reach your target audience—all from a single platform. Maximize the efficiency of your ad spend by leveraging your existing audience data alongside our data and cutting out unnecessary intermediaries.

***

##

## Setup & Product Walkthrough

Familiarize yourself with the Untitled platform using these essential onboarding resources.

<table data-view="cards"><thead><tr><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td>Overview and Product Tour</td><td><a href="/product-overview/overview-and-product-tour">Overview and Product Tour</a></td></tr><tr><td>Quickstart Guide</td><td><a href="/product-overview/quickstart-guide">Quickstart Guide</a></td></tr><tr><td>Getting Started with the Untitled ID Tag</td><td><a href="/product-overview/untitled-id-tag/get-started-with-the-untitled-id-tag">Get Started with the Untitled ID Tag</a></td></tr></tbody></table>

***

## Discover Untitled

Explore our core features using the links below.&#x20;

<table data-view="cards"><thead><tr><th></th><th data-hidden data-card-target data-type="content-ref"></th><th data-hidden data-card-cover data-type="files"></th></tr></thead><tbody><tr><td>Untitled ID Tag</td><td><a href="/product-overview/untitled-id-tag">Untitled ID Tag</a></td><td></td></tr><tr><td>Visitor Enrichment</td><td><a href="/product-overview/visitor-enrichment">Visitor Enrichment</a></td><td></td></tr><tr><td>Audience Studio</td><td><a href="/audience-studio">Audience Studio</a></td><td></td></tr><tr><td>Sources</td><td><a href="/integrations/sources">Sources</a></td><td></td></tr><tr><td>Destinations</td><td><a href="/integrations/destinations">Destinations</a></td><td></td></tr><tr><td>Administration</td><td><a href="/managing-users">Managing Users</a></td><td></td></tr></tbody></table>


# Quickstart Guide

The following guide can be used to get Untitled setup for success right after you first sign-in.

## Create and Install the Untitled ID Tag <a href="#gettingstarted-createandinstallthedistilledidtag" id="gettingstarted-createandinstallthedistilledidtag"></a>

To start collecting visitor data, you will need to install the Untitled ID Tag on your website. This process in simple for anyone who has admin access to your website

1. Log in and select the **+ Create** **Tag** button in the top right corner of the Homepage. You can also go the Tags page available in the left navigation menu.
2. On this page, you will see two options for creating a tag. To start, **Create a Main Tag** to use on your primary website. After clicking, a window will appear with instructions to update your **Cookie Consent and Privacy Policy** on the website where the tag is placed.
3. **Copy** the provided statement and place it within your website privacy policy. For additional information, [<mark style="color:blue;">follow the guide here</mark>](https://docs.getuntitled.ai/). After updating your website privacy policy, check the ***agree to terms*** box and select **Create tag.**&#x20;
4. Copy the code and install on your website. For step-by-step instructions on installing the tag on your website, [<mark style="color:blue;">follow the guide here</mark>](/product-overview/untitled-id-tag)<mark style="color:blue;">.</mark>

Within ***one hour*** of successfully installing the tag on your website, visitor data will be available in your account. Find your visitor resolutions under the Visitor table page in the left navigation menu. To create additional tags, use the Secondary tag generator and follow the same process.

## Build Your First Audience <a href="#gettingstarted-accessingandfilteringyourvisitordata" id="gettingstarted-accessingandfilteringyourvisitordata"></a>

1. Navigate to the **Visitor table** tab on the left navigation menu
2. Toggle between visitors based on file types: “B2B”, “B2C” or “PTE”:
   * [*<mark style="color:blue;">B2B</mark>*](/product-overview/untitled-id-tag/visitor-dataset-features/b2b-data-points) *- Resolutions returned with name + business email address and firmographic attributes.*
   * [*<mark style="color:blue;">B2C</mark>*](/product-overview/untitled-id-tag/visitor-dataset-features/b2c-data-points) *- Resolutions returned with name + personal email address demographic attributes.*
   * [*<mark style="color:blue;">PTE</mark>*](/product-overview/untitled-id-tag/visitor-dataset-features/plain-text-email-pte-data-points) *- Resolutions that we could not associate back with a B2B or B2C profile, but still could resolve an email for.*
3. In the table column titled **Profile**, select the **View** button on an individual result to review all the attributes on a single individual.
4. Use the **Filter** dropdown to view all available filter settings.&#x20;
5. Once you have selected all desired filters, click “Apply filters” to generate your new audience.
6. You can now either save the current filter settings to the **Audience Library** or **Export** lists as a CSV.

## Need Further Support or Have Additional Questions?

Check out our[ <mark style="color:blue;">FAQs</mark> ](/misc/frequently-asked-questions)to get some answers, start a chat on our [website](https://getuntitled.ai/), or get connected directly with our team [<mark style="color:blue;">here</mark>](https://getuntitled.ai/contact/).


# Tips & Tricks

Welcome to Untitled! Below are some ways you can make the most of your Untitled ID Tag results by activating your data to Klaviyo and other platforms.

Follow the step-by-step guide below to get started!

### Instructions <a href="#howtoactivateyourvisitordata-instructions" id="howtoactivateyourvisitordata-instructions"></a>

#### **Build Hidden Shopper Lists for Klaviyo Campaigns** <a href="#howtoactivateyourvisitordata-buildhiddenshopperlistsforklaviyocampaigns" id="howtoactivateyourvisitordata-buildhiddenshopperlistsforklaviyocampaigns"></a>

Quickly connect your Shopify data to Untitled and dedupe tag results against your existing Shopify profiles. Follow the steps below to build hidden shopper lists for your next Klaviyo campaign:

1. **Connect Shopify Data to Untitled**: Start by integrating your Shopify store with Untitled. This will allow you to match your Shopify users to the Untitled ID visitor data. In your Untitled account, navigate to **Sources** > **Connect a source** and search Shopify. Follow the connection instructions provided and allow for 24 hours for your first historical data sync to complete.

2. **Dedupe Visitor Data Against Shopify Users**: Untitled enrichment allows you to integrate your first and third-party data in order to identify and exclude visitors that already exist in your Shopify customer database. Navigate to the **Visitor table** page and apply the following filters to the table to isolate your net new leads:
   1. Source → Shopify
   2. Filters → Exclude Shopify Matches

3. **Export and Send Email Blast**: Once you have refined your list, export the results and load into Klaviyo. For insight on how to upload lists to Klaviyo, follow the steps provided on [<mark style="color:red;">this guide</mark>](https://docs.untitledfirm.com/space/KB/634716164/How+to+Upload+Visitor+Data+to+Klaviyo). From there, you can create a personalized email campaign and send it to net new shoppers. To boost engagement, try offering a discount code for first-time purchases.

#### **Create Custom Audiences Across Social Media Campaigns** <a href="#howtoactivateyourvisitordata-createcustomaudiencesacrosssocialmediacampaigns" id="howtoactivateyourvisitordata-createcustomaudiencesacrosssocialmediacampaigns"></a>

Due to iOS14 roll outs, the majority of the visitors resolved through the Untitled ID Tag are not usually captured by traditional marketing tags. Follow the steps below to create and load custom audiences to Meta, TikTok, Twitter and other social media platforms:

1. **Prepare Your Lists:** Export both the B2C and PTE lists generated from the tag.
2. **Import as a Custom Audience:** Import these lists as custom audiences into platforms such as Facebook Meta, TikTok, Twitter, etc
3. **Generate Lookalike Audiences**: Custom Audiences generated through Untitled serve as an excellent foundation for creating high-performing lookalike audiences. Once you upload a custom audience to Meta, for example, this list is a great base for creating your lookalike audiences.

#### **B2B Prospecting** <a href="#howtoactivateyourvisitordata-b2bprospecting" id="howtoactivateyourvisitordata-b2bprospecting"></a>

Unlock B2B opportunities and conduct targeted outreach by leveraging the robust set of company attributes provided by the Untitled ID Tag:

1. **Select the B2B File Type**: Navigate to the **Visitor table** page and select the **B2B file type**

2. **Filter Company Attributes based on ICP:** Utilize the robust set of company attributes provided by Untitled Enrichment to filter through B2B prospect lists based on your Ideal Customer Profile (ICP).

#### **Direct Mail Campaigns** <a href="#howtoactivateyourvisitordata-directmailcampaigns" id="howtoactivateyourvisitordata-directmailcampaigns"></a>

Explore the potential of direct mail campaigns using personal addresses collected through the B2C list:

1. **Personalized Outreach through the B2C List:** Export your B2C list and leverage the personal addresses of your website visitors to run direct mail campaigns.
2. **Validate Recipient Engagement with QR Codes:** Track engagement by including QR codes on direct mail pieces, driving recipients to your website for further interaction.

Through Untitled, run every campaign with accurate and valuable visitor data. Follow this guide to explore different methods of utilizing your leads, and make the most of Untitled ID to drive engagement, conversions, and growth. If you have any questions or would like additional recommendations, please contact our support team!


# Overview and Product Tour

Take a video tour of the Untitled Platform to get familiar with, or refreshed on, the features, menus, and connections you can make with the de-anonymized information from your website visitors.

## Walkthrough Video

{% embed url="<https://youtu.be/6WpIImXcxpQ>" %}

## Timestamps for quick access:

* 0:00 Overview of Untitled
* 0:21 Dashboard and Summary Insights
* 0:40 Visitor Table and Visitor Information
* 1:45 Filtering Visitors into Audiences
* 2:50 Audiences
* 3:03 Tags
* 3:31 Sources
* 3:59 Ideal Customer Profile Creation
* 4:48 Destinations
* 5:25 Demand Side Platform Campaigns


# Quickstart Guide

Start supercharging your marketing funnel with engaged website visitors and the Untitled platform.

## What is Untitled?

Untitled is a software platform that de-anonymizes visitors to your website and enables you to turn them into loyal customers. By using digital fingerprints and the largest consumer data co-op in the world, we can provide you with comprehensive, marketing-compliant visitor profiles, including email addresses, names, demographic, firmographic, and website activity, even if the website visitor doesn’t fill out a form or take an “identifying action”.

## [It Starts with a Tag](/product-overview/untitled-id-tag)

The Untitled ID Tag is a custom snippet of code that you install on your website after signing up for an Untitled account. When this code runs each time a website page loads, it gathers information that helps complete that visitor’s profile in your Untitled Visitor Table.

## Enter the Visitor Table

Website visitors identified by the Untitled ID Tag are aggregated in your Visitor Table, where you can see all of the data captured and start to dream up how you’ll use it to create retargeting marketing campaigns.

## [Filter and Segment with Audiences](/audience-studio)

The Visitor Table can be filtered and segmented by demographics, on-site activity, and data like company title and location. Once you’ve honed in on the visitors you’d like to target, save them as a reusable, automatically-updated Audience in your account. Don’t stop with one! Build as many Audiences as you can dream up and put to use.

## [Enrich Further with Sources](/integrations/sources)

Integrate your existing marketing contact and ecommerce purchaser data with your Untitled account to harness the power of machine learning. Our algorithms can train themslves on existing customer data to better identify which visitors are likely to become high-value customers, enabling even better segmentation by Buyer Intent and creating an Ideal Customer Profile just for you.

## [Use AI to Build an Ideal Customer Profile](/audience-studio/creating-an-ideal-customer-profile-icp-with-your-shopify-store-data-and-untitled)

With your existing customer data as its training material, put AI to work, looking at hundreds of customer attributes and finding which ones correlate most to a high lifetime value for your business. This AI-generated customer profile can be put to work in your existing marketing channels.

## [Sync Data with Destinations](/integrations/destinations)

Destinations are your existing marketing tools, like Facebook/Meta ads or your email marketing platform. Easily sync your Audiences and AI-generated Customer Profile into new or existing campaigns, growing your marketing funnel. Your Audiences sync with Destinations daily, creating a seamless flow of new contacts into your drip campaigns, display ads, search engine ads, and more.

## [Turn Visitors into Customers with Demand Side Platform Advertising](/untitled-demand-side-platform-dsp)

Complete the marketing loop with our Demand Side Platform (DSP) advertising offering, giving you the power to plug in your Untitled Audiences to premium ad real estate on Hulu, Peacock, Amazon Ads, Disney +, Max, Prime Video, and more. Use the power of the Untitled platform to drive efficiency and display ads to already-interested audiences, not broad-match demographics.&#x20;

\
\ <br>


# Untitled ID Tag

Reveal your anonymous website visitors, turning everyone into a potential customer.

<table><thead><tr><th>Quick Links</th><th data-hidden data-type="content-ref"></th><th data-hidden data-type="content-ref"></th></tr></thead><tbody><tr><td><a href="/product-overview/untitled-id-tag/get-started-with-the-untitled-id-tag">Getting Started with the Untitled ID Tag</a> </td><td><a href="/product-overview/untitled-id-tag/get-started-with-the-untitled-id-tag/tag-installation-troubleshooting">Tag Installation Troubleshooting</a></td><td><a href="/product-overview/untitled-id-tag/get-started-with-the-untitled-id-tag">Get Started with the Untitled ID Tag</a></td></tr><tr><td><a href="/product-overview/untitled-id-tag/get-started-with-the-untitled-id-tag/installing-the-untitled-id-tag-on-a-shopify-store">Installing the Untitled ID Tag on a Shopify Store</a></td><td></td><td></td></tr><tr><td><a href="/product-overview/untitled-id-tag/get-started-with-the-untitled-id-tag/installing-the-untitled-id-tag-on-a-custom-or-wordpress-website">Installing the Untitled ID Tag on Custom or Wordpress Website</a></td><td></td><td></td></tr><tr><td><a href="/product-overview/untitled-id-tag/get-started-with-the-untitled-id-tag/installing-the-untitled-id-tag-with-google-tag-manager">Installing the Untitled Tag with Google Tag Manager</a></td><td><a href="/product-overview/untitled-id-tag/visitor-dataset-features">Visitor Dataset Features</a></td><td></td></tr><tr><td><a href="/product-overview/untitled-id-tag/get-started-with-the-untitled-id-tag/installing-the-untitled-id-tag-on-a-squarespace-store">Installing the Untitled ID Tag on a Squarespace Store</a></td><td></td><td></td></tr><tr><td><a href="/product-overview/untitled-id-tag/get-started-with-the-untitled-id-tag/tag-installation-troubleshooting">Tag Installation Trouble Shooting</a></td><td></td><td></td></tr><tr><td><a href="/product-overview/untitled-id-tag/visitor-dataset-features">Visitor Dataset Features</a></td><td></td><td></td></tr></tbody></table>

## Need Further Support or Have Additional Questions?

Check out our[ <mark style="color:blue;">FAQs</mark> ](/misc/frequently-asked-questions)to get some answers, start a chat on our [website](https://getuntitled.ai/), or get connected directly with our team [<mark style="color:blue;">here</mark>](https://getuntitled.ai/contact/).


# Get Started with the Untitled ID Tag

The Untitled ID Tag is a small piece of code that helps reveal your anonymous website visitors, turning everyone into a potential customer. These step-by-step guides will guide you through the setup.

## What happens when I install the ID Tag?

By installing the ID Tag, you can gather valuable data on your users, optimize marketing strategies, and boost website performance. All this data will be made available to you in your Untitled Dashboard.&#x20;

When installing the tag on your website, consider updating your Cookie Consent Policy and Privacy Policy on the website where the tag is placed. We offer [more information here](/misc/privacy-and-consent-management).

## Step-by-Step Installation Guides

<table data-view="cards"><thead><tr><th></th><th data-hidden data-type="content-ref"></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td>Installing the Untitled ID Tag on a Shopify Website</td><td><a href="/product-overview/untitled-id-tag/get-started-with-the-untitled-id-tag/installing-the-untitled-id-tag-on-a-shopify-store">Installing the Untitled ID Tag on a Shopify Store</a></td><td><a href="/product-overview/untitled-id-tag/get-started-with-the-untitled-id-tag/installing-the-untitled-id-tag-on-a-shopify-store">Installing the Untitled ID Tag on a Shopify Store</a></td></tr><tr><td>Installing the Untitled ID Tag on a Custom or Wordpress Website</td><td><a href="/product-overview/untitled-id-tag/get-started-with-the-untitled-id-tag/installing-the-untitled-id-tag-on-a-custom-or-wordpress-website">Installing the Untitled ID Tag on a Custom or Wordpress Website</a></td><td><a href="/product-overview/untitled-id-tag/get-started-with-the-untitled-id-tag/installing-the-untitled-id-tag-on-a-custom-or-wordpress-website">Installing the Untitled ID Tag on a Custom or Wordpress Website</a></td></tr><tr><td>Installing the Untitled ID Tag on a Squarespace Website</td><td><a href="/product-overview/untitled-id-tag/get-started-with-the-untitled-id-tag/installing-the-untitled-id-tag-on-a-squarespace-store">Installing the Untitled ID Tag on a Squarespace Store</a></td><td><a href="/product-overview/untitled-id-tag/get-started-with-the-untitled-id-tag/installing-the-untitled-id-tag-on-a-squarespace-store">Installing the Untitled ID Tag on a Squarespace Store</a></td></tr><tr><td>Installing the Untitled ID Tag with Google Tag Manager</td><td><a href="/product-overview/untitled-id-tag/get-started-with-the-untitled-id-tag/installing-the-untitled-id-tag-with-google-tag-manager">Installing the Untitled ID Tag with Google Tag Manager</a></td><td><a href="/product-overview/untitled-id-tag/get-started-with-the-untitled-id-tag/installing-the-untitled-id-tag-with-google-tag-manager">Installing the Untitled ID Tag with Google Tag Manager</a></td></tr><tr><td>Installing the Untitled ID Tag on a Wix Website</td><td><a href="/product-overview/untitled-id-tag/get-started-with-the-untitled-id-tag/installing-the-untitled-id-tag-on-a-wix-website">Installing the Untitled ID Tag on a Wix Website</a></td><td><a href="/product-overview/untitled-id-tag/get-started-with-the-untitled-id-tag/installing-the-untitled-id-tag-on-a-wix-website">Installing the Untitled ID Tag on a Wix Website</a></td></tr><tr><td>Installing the Untitled ID Tag on a Webflow Website</td><td><a href="/product-overview/untitled-id-tag/get-started-with-the-untitled-id-tag/installing-the-untitled-id-tag-on-a-webflow-website">Installing the Untitled ID Tag on a Webflow Website</a></td><td><a href="/product-overview/untitled-id-tag/get-started-with-the-untitled-id-tag/installing-the-untitled-id-tag-on-a-webflow-website">Installing the Untitled ID Tag on a Webflow Website</a></td></tr></tbody></table>

## Creating a New Tag

1. Log into Untitled and select the + Create Tag button in the top right corner of the Homepage. You can also go the Tags page available in the left navigation menu.

![Home Screen Tag Creation](https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FuJyoyDbKposSVwD2Mn9q%2FTag-Creation-1.png?alt=media\&token=d7561b4d-ae27-4f78-9a6e-34a3dc692d7e)

2. After clicking, please name the Tag something memorable and identifiable, such as the name of your company or the website the tag is being placed on.&#x20;
   1. Most websites just need one Tag.
3. After naming your tag and clicking <kbd>Create</kbd>, a consent window will appear where you confirm your understanding of opt-out and data-gathering requirements for your website, industry, and geography.
   1. Review your website privacy policy and cookie management platform and ensure you are comfortable that it encompasses the use of Untitled. We offer [more information here](/misc/privacy-and-consent-management).

***

Congratulations! You have successfully created the Untitled ID Tag for easy installation on your website. The Tag is one line of code that will look something like this:  `<script async src="https://tag.getuntitled.ai/[your_tag_name]"></script>`. After installing the script in the header of each page on your website, you can resolve and analyze hidden visitors, helping you make data-driven decisions to optimize your website’s performance and marketing strategies.

Within one hour of successfully installing the tag on your website, visitor data will be available in your account. Find your visitor resolutions on the Visitor table page in the left navigation menu.

For assistance with placing the Tag, follow one of the guides above. If you need assistance installing the Tag, our team is available to help and can be reached by submitting a support ticket from the bottom left of of the navigation menu.&#x20;


# Installing the Untitled ID Tag on a Shopify Store

This guide walks you through the process of inserting your Untitled ID Tag into the header of your Shopify website.

## Before You Begin&#x20;

Log in to your Shopify Store at <https://www.shopify.com/store-login>.

You'll need the "Edit Code" permission for your Shopify site. If you're not the site owner, you can request the site owner to give you this permission at **Settings** > **Users and permissions**.

## Walkthrough Video

{% embed url="<https://www.youtube.com/watch?v=aSKn29Dnfc8>" %}

## Written Guide with Screenshots

In this guide, we’ll walk through the steps to create your Untitled ID Tag and install it on your Shopify website. There are three main steps that we need to complete.&#x20;

1. Updating the code of your Shopify site to include your Untitled Tag. Let's start first within your Untitled account.&#x20;
2. Recommended: Turning on the cookie consent bar in your Shopify site. ([Learn more](/misc/privacy-and-consent-management))
3. Recommended: Reviewing or updating your privacy policy to include information about the Untitled ID Tag. ([Learn more](/misc/privacy-and-consent-management))

### Create and Name Your Tag

1. Log in to Untitled and click <kbd>Tags</kbd> on the left hand side

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2Fbs25eWXkJu9bK2w6QWw6%2F01%20Select%20Tags%20from%20Homepage.png?alt=media&amp;token=b4b32295-7739-414b-b9d0-df0e3a509ed3" alt=""><figcaption></figcaption></figure>

2. Click <kbd>Create Tag</kbd> in the upper right corner and give your tag a descriptive name. Many of our customers just have one tag in their account, and you only need one tag per website, so in this case, we'll use the example "Untitled Shopify Site".

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2F73pmttItwjH8In99Qsom%2F02%20Click%20Create%20Tag%2C%20Name%2C%20and%20Continue.png?alt=media&amp;token=b8f30a1f-9c3f-4233-9fcd-df01449154c5" alt=""><figcaption></figcaption></figure>

<details>

<summary>Recommended: Update Your Shopify Cookie Consent Banner</summary>

1. It's important that your visitors consent to cookie collection before the Untitled Tag identifies them. Shopify has a free default cookie consent banner that you can turn on within its settings.
2. Open your Shopify Administrator page and scroll down on the left menu and select <kbd>Settings</kbd>. Now a search bar is available at the top left of the page. Search "Privacy" there and select  <kbd>Customer Privacy</kbd> and then <kbd>Cookie Banner</kbd> in the main page.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2Fzezce4NtaYwNgFu9wqhN%2F04%20Shopify%20Customer%20Privacy%20Cookie%20Consent%20Banner%20Page.png?alt=media&amp;token=c30f722e-6684-43e0-b978-58a7daebc175" alt=""><figcaption></figcaption></figure>

3. Click the toggle to turn off the automated settings, and then click <kbd>Edit</kbd> in the Regions section. A new window will pop up.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FWqOp1U5NpKDqXJbNOPKy%2F05%20Turn%20off%20automated%20consent%20and%20click%20edit%20regions.png?alt=media&amp;token=f761b849-3e1c-44f8-849e-43ad15d9599d" alt=""><figcaption></figcaption></figure>

4. Search for "United States" in the search bar and click next to the American flag to select all of the states. We recommend leaving "recommended regions" selected. Click <kbd>Done</kbd>.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FHFB5OBbRytVe0pb31HPA%2F06%20Add%20United%20States%20to%20Cookie%20Consent%20Shopify.png?alt=media&amp;token=8436d10e-d7f8-4d5b-b10e-393341c6afe5" alt=""><figcaption></figcaption></figure>

5. Click <kbd>Save</kbd> at the top of your page within Shopify.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FutWOGWAudNYiolkTE6WM%2F07%20Save%20Cookie%20Consent%20Banner%20Changes.png?alt=media&amp;token=4d3e2f78-bd01-4215-95d0-94258230f361" alt=""><figcaption></figcaption></figure>

</details>

<details>

<summary>Recommended: Review Your Current Privacy Policy Disclosures In Place &#x26; Update if Needed</summary>

You may need to update your privacy policy to be compliant with the Untitled ID tag.

1. After you click <kbd>Continue</kbd> when creating a new ID Tag, our pre-written privacy policy will open. That policy may be used to supplement your existing policy if you don't feel the current policy covers and communicates the use of Untitled to your website visitors.&#x20;
   1. You can learn more about that on our [Privacy and Consent Management page](/misc/privacy-and-consent-management) and review or copy the [Sample Privacy Policy](/misc/privacy-and-consent-management/sample-privacy-policy).
2. If you're continuing from the cookie banner step, click <kbd>Privacy Policy</kbd> in the left side menu. If you're starting at this step, open your Shopify Admin page and navigate to <kbd>Settings</kbd> and then search "Privacy"  on that page and select <kbd>Privacy Policy</kbd>. A new window will pop up.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FMTZbKEHBh13qeG0l8UEb%2F08%20Select%20Privacy%20Policy%20from%20side%20menu%20Shopify.png?alt=media&amp;token=da89a17a-9fc6-4e2b-bf15-065d546ad756" alt=""><figcaption></figcaption></figure>

3. Turn off the toggle for "Use automated policy". Now you can edit your own privacy policy. We recommend adding a label to your privacy policy where you can paste the Untitled sample privacy policy into the rest of the content that Shopify provides.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FfW9FFW3PgODwyjXHUgOv%2F09%20Turn%20off%20Automated%20Privacy%20Policy%20and%20Paste%20in%20Untitled.png?alt=media&amp;token=aae85d84-7075-4fc0-baf4-05a7bdca2009" alt=""><figcaption></figcaption></figure>

4. If you'd like to use the Untitled sample policy to supplement your own, you can copy our [Sample Privacy Policy](/misc/privacy-and-consent-management/sample-privacy-policy).
5. Return to your Shopify Privacy Policy page and paste the additions to your privacy policy, and click <kbd>Save</kbd>.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FS6kW4Vd7FEdDVHUdoNYU%2F011%20Paste%20and%20Save%20Privacy%20Policy.png?alt=media&amp;token=12fdbc7f-45eb-405a-bcc5-b279eeb0292f" alt=""><figcaption></figcaption></figure>

</details>

### Paste Your Untitled ID Tag in the Header of Your Site

After you have set up your cookie consent banner and updated the privacy policy on your Shopify site, you are ready to paste in the single line of Javascript code that will enable the Untitled tag to work. This line of code needs to be present on every page of your website, so you will paste it in the header of the theme of your Shopify site.

1. Select and copy the one line of code. Make sure to select and copy everything, including the < and > at the beginning and end of the line.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FCnzhkm0F11LIbNSWKqGT%2F013%20Select%20and%20Copy%20Script%20tag%20on%20Untitled.png?alt=media&amp;token=20eee79f-ad95-4a2b-a95c-9b9a029f8b06" alt=""><figcaption></figcaption></figure>

2. Return to your Shopify administration page. On the left side, click <kbd>Online Store</kbd>. Below that click <kbd>Themes</kbd>. Now on the main part of this page, click <kbd>Customize</kbd>. A new page will open.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FEUJnRaWyPfFHl9e4E4Ls%2F014%20Nav%20to%20Update%20Theme%20in%20Shopify.png?alt=media&amp;token=867cc5c1-5b53-4a8c-85ac-6291f5417b13" alt=""><figcaption></figcaption></figure>

3. At the top left of that page, look for three dots in a horizontal line. Click that, and then select <kbd>Edit Code</kbd> from the menu that opens.&#x20;

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FWQrstYsJnoD46HiKptsJ%2F015%20Open%20Edit%20Code%20Menu%20in%20Shopify.png?alt=media&amp;token=ab34c2e7-570c-4f45-97b5-c93550b49195" alt=""><figcaption></figcaption></figure>

4. On the left side menu, select <kbd>theme.liquid</kbd>. If the file isn't readily available, you can search for it using the search bar at the top of that menu. The theme.liquid code file will open in your browser. Find the word \<head> and click enter to make a new, blank line below that.&#x20;

Paste the Untitled tag code snippet there. Click <kbd>Save</kbd> in the upper right corner. That's it! Your Untitled ID Tag will start collecting visitor information for your website.&#x20;

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2Fj1V04cWwOwB4mEUEMgEo%2F016%20Select%20Theme.Liquid%20and%20paste%20script%20and%20save.png?alt=media&amp;token=534ceddb-84db-4f17-9375-48bcb74c145a" alt=""><figcaption></figcaption></figure>

## Next Steps

You can close your Shopify site and go back to your Untitled account and view the tag, but you don’t need to do anything else to make the tag start working for you.

After you've installed the ID Tag, allow at least **one hour** before your visitor data starts being captured by the tag. After that, the ID Tag will update about **every hour** with new visitors who have visited your site and are automatically resolved or identified by the Untitled ID Tag. Remember, not every visitor will show up in your visitor table, and if your site is brand new, it may take some time before many visitors appear in the table.

As you capture the email addresses, names, and other information of the visitors to your site, that's when you can start to do the exciting work of creating audiences, adding destinations, and using that customer data to reach out to the right people, at the right time, with the right offer and increase the effectiveness of your advertising.

Make sure to bookmark your Untitled account page in your web browser and return back to check on your visitor table at least a few days a week to watch your audience grow.

Still have questions? Email customer success at <support@getuntitled.ai> with your questions to learn how to make the most of you Untitled account.<br>


# Installing the Untitled ID Tag on a Custom or Wordpress Website

This guide walks you through the process of inserting your Untitled ID Tag into the header of your website. These are general guidelines for site types we haven't covered in other walkthroughs.

## Walkthrough Video

{% embed url="<https://youtu.be/C3uVmsLv18I>" %}

## Written Guide

<details>

<summary>Recommended: Update Your Cookie Consent Banner</summary>

It's important that your visitors consent to cookie collection before the Untitled Tag identifies them. There are free and low-cost providers of consent management platforms (CMP), including WPConsent for Wordpress. Consider implementing or updating a CMP to classify Untitled as a marketing cookie. [We have a guide on implementing Cookiebot here.](/misc/privacy-and-consent-management/set-up-a-cookie-consent-banner-with-cookiebot)

</details>

<details>

<summary>Recommended: Review Your Current Privacy Policy Disclosures In Place &#x26; Update if Needed</summary>

You may need to update your privacy policy to be compliant with the Untitled ID tag.

1. After you click <kbd>Continue</kbd> when creating a new ID Tag, our pre-written privacy policy will open. That policy may be used to supplement your existing policy if you don't feel the current policy covers and communicates the use of Untitled to your website visitors.&#x20;
   1. You can learn more about that on our [Privacy and Consent Management page](/misc/privacy-and-consent-management) and review or copy the [Sample Privacy Policy](/misc/privacy-and-consent-management/sample-privacy-policy).
2. It's best practice to make the privacy policy page easily available to website visitors. Many sites include it in their website footer.

</details>

More coming soon! Want to request these steps ASAP? Email <support@getuntitled.ai> and let us know.

## Next Steps

After you've installed the ID Tag, allow up to **one hour** before your visitor data starts being captured by the tag. After that, the ID Tag will update about **every 15 minutes** with new visitors who have visited your site and are automatically resolved or identified by the Untitled ID Tag. Remember, not every visitor will show up in your visitor table, and if your site is brand new, it may take some time before many visitors appear in the table.

As you capture the email addresses, names, and other information of the visitors to your site, that's when you can start to do the exciting work of creating audiences, adding destinations, and using that customer data to reach out to the right people, at the right time, with the right offer and increase the effectiveness of your advertising.

Make sure to bookmark your Untitled account page in your web browser and return back to check on your visitor table at least a few days a week to watch your audience grow.

Still have questions? Email customer success at <support@getuntitled.ai> with your questions to learn how to make the most of you Untitled account.

<br>


# Installing the Untitled ID Tag with Google Tag Manager

## Before You Begin

This page walks you through the tag installation process after you have created it, outlined here: [Creating New Tags](/product-overview/untitled-id-tag/get-started-with-the-untitled-id-tag#creating-new-tags).&#x20;

Log in to Google Tag Manager here: <https://tagmanager.google.com/>.

## Video Walkthrough

{% embed url="<https://www.youtube.com/watch?v=xDzyE1dSEU0>" %}

## Step-by-Step Guide

1. Copy the tag you created in the previous steps.
2. Open your Google Tag Manager account and container
3. Click <kbd>**New Tag**</kbd>
4. Name your tag “Untitled ID Tag”
5. Click the <kbd>**Tag Configuration**</kbd> box and select <kbd>**Custom HTML**</kbd>
6. Paste the tag code you copied in Step 1 within the HTML Box
7. Click into the <kbd>**Triggering**</kbd> box
8. Click <kbd>**All Pages**</kbd> in order for the tag to fire on all pages. If you’d like the tag to fire on specific pages, create a new Tag Configuration by clicking the + button
9. Click <kbd>**Save**</kbd> in the top right corner of the page
10. Once you’ve finished the above steps, you will need to Publish your changes. Click the <kbd>**Submit**</kbd> button in the top right corner of the page
11. Add your version name and click <kbd>**Publish**</kbd> in the top right corner
12. Recommended: Update the consent settings so the Tag only fires when marketing cookies are accepted by website visitors
    1. Navigate back to the Workspace and click <kbd>**Tags**</kbd>
    2. Select your Untitled Tag and click the pencil icon to Edit the Tag Configuration
    3. Click <kbd>**Advanced Settings**</kbd> and then <kbd>**Consent Settings**</kbd>
    4. Click <kbd>**Require Additional Consent for tag to fire**</kbd> and <kbd>**Add required consent**</kbd>
    5. Select <kbd>**ad\_storage**</kbd> from the list
    6. Click <kbd>**Save**</kbd> , <kbd>**Submit**</kbd>, and <kbd>**Publish**</kbd> to publish the updated Google Tag Manager container
13. Allow 1-2 hours for the tag to gather data on your visitors
14. Log in to your Untitled account and go to the **Visitor Table** page&#x20;
15. Filter and export the visitor resolutions, [create Audiences](/audience-studio), and [sync to Destinations](/integrations/destinations)

{% hint style="info" %}
Note: If you don't have a cookie consent management set up when you update the consent settings in Google Tag Manager, the Untitled ID Tag will not fire for any visitors. Ensure you have a consent management platform like Cookiebot or Osano set up on your website before updating consent settings in Google Tag Manager. [Follow our guide here](/misc/privacy-and-consent-management/set-up-a-cookie-consent-banner-with-cookiebot) to set up a Cookiebot consent management account.
{% endhint %}


# Installing the Untitled ID Tag on a Squarespace Store

This guide walks you through the process of inserting your Untitled ID Tag into the header of your Squarespace website.

## Before You Begin

Log in to your site here: <https://squarespace.com/> .&#x20;

Ensure you have Administrator level permissions for your Squarespace site.

## Walkthrough Video

{% embed url="<https://youtu.be/nSmQ329kaqA>" %}

## Written Guide

<details>

<summary>Recommended: Update Your Cookie Consent Banner</summary>

It's important that your visitors consent to cookie collection before the Untitled Tag identifies them. Squarespace has a free default cookie consent banner that you can turn on within its settings, as shown in the video. There are other consent management platforms (CMPs) that you may wish to implement on your site for compliance, ease-of-use, and design customization. [We have a guide on implementing Cookiebot here.](/misc/privacy-and-consent-management/set-up-a-cookie-consent-banner-with-cookiebot)

</details>

<details>

<summary>Recommended: Review Your Current Privacy Policy Disclosures In Place &#x26; Update if Needed</summary>

You may need to update your privacy policy to be compliant with the Untitled ID tag.

1. After you click <kbd>Continue</kbd> when creating a new ID Tag, our pre-written privacy policy will open. That policy may be used to supplement your existing policy if you don't feel the current policy covers and communicates the use of Untitled to your website visitors.&#x20;
   1. You can learn more about that on our [Privacy and Consent Management page](/misc/privacy-and-consent-management) and review or copy the [Sample Privacy Policy](/misc/privacy-and-consent-management/sample-privacy-policy).
2. It's best practice to make the privacy policy page easily available to website visitors. Many sites include it in their website footer.

</details>

Coming soon! Want to request these steps ASAP? Email <support@getuntitled.ai> and let us know.

## Next Steps

You can close your Squarespace site and go back to your Untitled account and view the ID Tag, but you don’t need to do anything else to make the tag start working for you.

After you've installed the ID Tag, allow up to **one hour** before your visitor data starts being captured by the tag. After that, the ID Tag will update about **every 15 minutes** with new visitors who have visited your site and are automatically resolved or identified by the Untitled ID Tag. Remember, not every visitor will show up in your visitor table, and if your site is brand new, it may take some time before many visitors appear in the table.

As you capture the email addresses, names, and other information of the visitors to your site, that's when you can start to do the exciting work of creating audiences, adding destinations, and using that customer data to reach out to the right people, at the right time, with the right offer and increase the effectiveness of your advertising.

Make sure to bookmark your Untitled account page in your web browser and return back to check on your visitor table at least a few days a week to watch your audience grow.

Still have questions? Email customer success at <support@getuntitled.ai> with your questions to learn how to make the most of you Untitled account.

<br>


# Installing the Untitled ID Tag on a Wix Website

This guide is copied from the Wix support website and modified to reflect the recommendations of the Untitled team about installation.

The full guide, and any potential future updates, may be accessed here: <https://support.wix.com/en/article/wix-editor-embedding-custom-code-on-your-site>

### Adding custom code to your site <a href="#adding-custom-code-to-your-site" id="adding-custom-code-to-your-site"></a>

#### **Before you begin:** Make sure that your site is published and has a connected domain.

#### **To add custom code to your site:**

1. Go to <kbd>**Settings**</kbd> in your site's dashboard.
2. Click <kbd>**Custom Code**</kbd> in the <kbd>**Advanced**</kbd> section.
3. Click <kbd>**+ Add Custom Code**</kbd> at the top right.
4. Paste the code snippet in the text box.&#x20;
5. Enter a name for your code.\
   **Tip:** Give it a name that is easy to recognize so you can quickly identify it later. We recommend naming it something like **Untitled Tag**
6. Select the <kbd>**All Pages**</kbd> option under <kbd>**Add Code to Pages**</kbd>
   * This adds the code to all of your site's pages, including any new pages that you create in the future.&#x20;
   * Choose to load the code on each page your visitor opens.
7. Choose to place your code in the <kbd>**Head**</kbd> under <kbd>**Place Code in**</kbd>  section
8. Click <kbd>**Apply**</kbd>

### **Video Walkthrough from Wix**

Note: The recommended settings for each step shown in the video are in the guide above

{% embed url="<https://www.youtube.com/watch?v=g0Ysh1xWm7k>" %}

### Consent Management and Privacy Policy Recommendations

<details>

<summary>Recommended: Update Your Cookie Consent Banner</summary>

It's important that your visitors consent to cookie collection before the Untitled Tag identifies them. Wix may have a free default cookie consent banner that you can turn on within its settings. There are other consent management platforms (CMPs) that you may wish to implement on your site for compliance, ease-of-use, and design customization. [We have a guide on implementing Cookiebot here.](/misc/privacy-and-consent-management/set-up-a-cookie-consent-banner-with-cookiebot)

</details>

<details>

<summary>Recommended: Review Your Current Privacy Policy Disclosures In Place &#x26; Update if Needed</summary>

You may need to update your privacy policy to be compliant with the Untitled ID tag.

1. After you click <kbd>Continue</kbd> when creating a new ID Tag, our pre-written privacy policy will open. That policy may be used to supplement your existing policy if you don't feel the current policy covers and communicates the use of Untitled to your website visitors.&#x20;
   1. You can learn more about that on our [Privacy and Consent Management page](/misc/privacy-and-consent-management) and review or copy the [Sample Privacy Policy](/misc/privacy-and-consent-management/sample-privacy-policy).
2. It's best practice to make the privacy policy page easily available to website visitors. Many sites include it in their website footer.

</details>


# Installing the Untitled ID Tag on a Webflow Website

This guide is copied from the Webflow support website and modified to reflect the recommendations of the Untitled team about installation.

The full guide, and any potential future updates, may be accessed here: <https://help.webflow.com/hc/en-us/articles/33961357265299-Custom-code-in-head-and-body-tags#01JCKQJYFJ3S85YVBYDD2TDCG6>

### Custom code in Site settings <a href="#custom-code-in-site-settings" id="custom-code-in-site-settings"></a>

Custom code entered in the **Head code** section appears before the closing `</head>` tag in your site’s HTML markup and applies to your entire site.

To add custom code to the Head tag:&#x20;

1. Visit <kbd>**Site settings**</kbd> > <kbd>**Custom code**</kbd> tab
2. Add your custom code in the <kbd>**Head code**</kbd> section
3. Click <kbd>**Save changes**</kbd>&#x20;

### Consent Management and Privacy Policy Recommendations

<details>

<summary>Recommended: Update Your Cookie Consent Banner</summary>

It's important that your visitors consent to cookie collection before the Untitled Tag identifies them. Wix may have a free default cookie consent banner that you can turn on within its settings. There are other consent management platforms (CMPs) that you may wish to implement on your site for compliance, ease-of-use, and design customization. [We have a guide on implementing Cookiebot here.](/misc/privacy-and-consent-management/set-up-a-cookie-consent-banner-with-cookiebot)

</details>

<details>

<summary>Recommended: Review Your Current Privacy Policy Disclosures In Place &#x26; Update if Needed</summary>

You may need to update your privacy policy to be compliant with the Untitled ID tag.

1. After you click <kbd>Continue</kbd> when creating a new ID Tag, our pre-written privacy policy will open. That policy may be used to supplement your existing policy if you don't feel the current policy covers and communicates the use of Untitled to your website visitors.&#x20;
   1. You can learn more about that on our [Privacy and Consent Management page](/misc/privacy-and-consent-management) and review or copy the [Sample Privacy Policy](/misc/privacy-and-consent-management/sample-privacy-policy).
2. It's best practice to make the privacy policy page easily available to website visitors. Many sites include it in their website footer.

</details>


# Tag Installation Troubleshooting

If you have followed our [tag installation guide](/product-overview/untitled-id-tag) and your Untitled ID Tag is still not firing or processing data after one to two hours, please review the troubleshooting guide below for common issues and fixes.

{% hint style="info" %}
For additional support, please submit a support ticket through your account portal and our team will get back to you shortly.
{% endhint %}

## Common Tag Installation Issues  <a href="#common-tag-installation-issues" id="common-tag-installation-issues"></a>

### Google Tag Manager was not “Submitted” <a href="#google-tag-manager-was-not-submitted" id="google-tag-manager-was-not-submitted"></a>

1. If you are utilizing Google Tag Manager and have followed our [<mark style="color:blue;">GTM guide</mark>](/product-overview/untitled-id-tag) on placing the Untitled ID Tag, a common misstep is not “submitting” your changes once the new tag has been created. To submit your changes, sign into your Google Tag Manager account.
2. Make sure your newly created tag is still there with the trigger set to “All Pages”. If so, be sure to click the blue “Submit” button located in the top right corner of GTM.
3. Upon clicking the “Submit” button, you will be asked to add a version name and description. Once you’ve done so, save your changes and the tag should now be live.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FqIyCW0AyPJG6zImB4yCT%2FGoogle_Tag_Manager_setup_1.png?alt=media&amp;token=1ab9c5d1-c9a4-47fe-a447-58b107f288c7" alt=""><figcaption></figcaption></figure>

### Clear Your Website Cache <a href="#clear-your-website-cache" id="clear-your-website-cache"></a>

If you are utilizing a cacheing plugin, CDN, or something similar, you may need to clear the cache from your web server. Most hosting providers or third-party plugins have documentation that outlines how to clear or purge your cache. This is a common issue we’ve seen for those utilizing Wordpress ([Instructions for clearing your cache in Wordpress](https://wordpress.com/support/clear-your-sites-cache/)). Although utilizing caching plugins and CDNs is highly recommended, you may need to clear the cache in order for the tag to populate right away.

### Tag Is Not Placed in the \<head> File <a href="#tag-is-not-placed-in-the-less-than-head-greater-than-file" id="tag-is-not-placed-in-the-less-than-head-greater-than-file"></a>

The Untitled ID Tag needs to be located in your \<head> file, or at least right before the closing \</head>. Please double check and make sure you have not placed the tag in the \<body> or \<footer>. This ensures the tag will fire upon a page load, not when a user scrolls to load additional files and content.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FI7iywcAdjDwlFMY1HvVC%2Fgetuntitled.ai%20tag.webp?alt=media&amp;token=845bb7b7-51a7-486a-9f4a-fab05050987b" alt=""><figcaption></figcaption></figure>

## Need Further Support or Have Additional Questions?

Check out our[ <mark style="color:blue;">FAQs</mark> ](/misc/frequently-asked-questions)to get some answers, start a chat on our [website](https://getuntitled.ai/), or get connected directly with our team [<mark style="color:blue;">here</mark>](https://getuntitled.ai/contact/).


# Visitor Dataset Features

See what each visitor type can provide.

<table data-view="cards"><thead><tr><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td>B2B Data Points</td><td><a href="/product-overview/untitled-id-tag/visitor-dataset-features/b2b-data-points">B2B Data Points</a></td></tr><tr><td>B2C Data Points</td><td><a href="/product-overview/untitled-id-tag/visitor-dataset-features/b2c-data-points">B2C Data Points</a></td></tr><tr><td>Plain Text Email (PTE) Data Points</td><td><a href="/product-overview/untitled-id-tag/visitor-dataset-features/plain-text-email-pte-data-points">Plain Text Email (PTE) Data Points</a></td></tr></tbody></table>


# B2B Data Points

The below table identifies the column title and description of each datapoint available in the B2B file.

<table data-full-width="false"><thead><tr><th>Column Label</th><th>Description</th></tr></thead><tbody><tr><td>HEM</td><td>Hashed email (sha256 lowercase)</td></tr><tr><td>UP_ID</td><td>Universal Person ID</td></tr><tr><td>FIRST_NAME</td><td>First name of the matched record</td></tr><tr><td>LAST_NAME</td><td>Last name of the matched record (family name, surname)</td></tr><tr><td>BUSINESS_EMAIL</td><td>Business email attributed to the record and visit</td></tr><tr><td>JOB_TITLE</td><td>Job title</td></tr><tr><td>SENIORITY_LEVEL</td><td>Modeled Seniority based on Job Title (CXO, VP, Director, Manager, or Staff)</td></tr><tr><td>DEPARTMENT</td><td>Modeled <a href="/product-overview/untitled-id-tag/visitor-dataset-features/b2b-data-points/department-dimensions"><mark style="color:blue;">Department</mark> </a>based on Job Title.</td></tr><tr><td>MOBILE_PHONE</td><td>Mobile number associated with the record, run against FCC portability data (to be used for matching purposes only)</td></tr><tr><td>DIRECT_NUMBER</td><td>Direct business number associated with the record</td></tr><tr><td>LINKEDIN_URL</td><td>LinkedIn URL for the record</td></tr><tr><td>PERSONAL_ADDRESS</td><td>Personal address</td></tr><tr><td>PERSONAL_ADDRESS_2</td><td>Personal address 2</td></tr><tr><td>PERSONAL_CITY</td><td>Personal address city</td></tr><tr><td>PERSONAL_STATE</td><td>Personal address state</td></tr><tr><td>PERSONAL_ZIP</td><td>Personal address zip</td></tr><tr><td>PERSONAL_ZIP4</td><td>Plus 4 extension of PERSONAL_ZIP.  Does not include PERSONAL_ZIP</td></tr><tr><td>PROFESSIONAL_ADDRESS</td><td>Business address</td></tr><tr><td>PROFESSIONAL_ADDRESS_2</td><td>Business address 2</td></tr><tr><td>PROFESSIONAL_CITY</td><td>Business address city</td></tr><tr><td>PROFESSIONAL_STATE</td><td>Business address state</td></tr><tr><td>PROFESSIONAL_ZIP</td><td>Business address zip</td></tr><tr><td>PROFESSIONAL_ZIP4</td><td>Plus 4 extension of PROFESISONAL_ZIP. Does not include PROFESSIONAL_ZIP</td></tr><tr><td>COMPANY_NAME</td><td>Company name associated with the current job title</td></tr><tr><td>COMPANY_DOMAIN</td><td>Company domain associated with the company name and business email</td></tr><tr><td>COMPANY_PHONE</td><td>Comma separated array of phone numbers associated with the company</td></tr><tr><td>PRIMARY_INDUSTRY</td><td><a href="/product-overview/untitled-id-tag/visitor-dataset-features/b2b-data-points/industry-dimensions"><mark style="color:blue;">Primary industry</mark></a> associated with the company, mapped to LinkedIn industries</td></tr><tr><td>COMPANY_SIC</td><td>Semicolon separated array of SIC codes associated with the company</td></tr><tr><td>COMPANY_ADDRESS</td><td>Company address</td></tr><tr><td>COMPANY_ADDRESS_2</td><td>Company address 2</td></tr><tr><td>COMPANY_CITY</td><td>Company address city</td></tr><tr><td>COMPANY_STATE</td><td>Company address state</td></tr><tr><td>COMPANY_ZIP</td><td>Company address zip</td></tr><tr><td>COMPANY_ZIP4</td><td>Plus 4 extension of COMPANY_ZIP.  Does not include COMPANY_ZIP</td></tr><tr><td>COMPANY_LINKEDIN_URL</td><td>Corporate LinkedIn URL</td></tr><tr><td>COMPANY_REVENUE</td><td><a href="/product-overview/untitled-id-tag/visitor-dataset-features/b2b-data-points/company-revenue-dimensions"><mark style="color:blue;">Revenue range</mark></a> of company</td></tr><tr><td>COMPANY_EMPLOYEE_COUNT</td><td> <a href="/product-overview/untitled-id-tag/visitor-dataset-features/b2b-data-points/employee-count-dimensions"><mark style="color:blue;">Range of employees</mark></a> based on observed employees</td></tr><tr><td>BUSINESS_EMAIL_LAST_SEEN</td><td><p>Unix timestamp of the last activity signal of the business email address</p><p>To convert the unix timestamp to a standard date format, use the following formula in Excel or Google Sheets:</p><p>=(A1/86400)+DATE(1970,1,1)</p></td></tr><tr><td>LAST_UPDATED</td><td>Date the record was last updated</td></tr><tr><td>ACTIVITY_DATE</td><td>Max date of Tag fire for period processed</td></tr><tr><td>PROCESSED_DATE</td><td>Date stamp of match process</td></tr><tr><td>EVENT_DATE</td><td>Timestamp (Date/Time) of the tag fire to the millisecond in UTC</td></tr><tr><td>IP_ADDRESS</td><td>IP address associated with the tag fire</td></tr><tr><td>PARTNER_ID</td><td>PID provisioned by Agency from the tag (feature is an aggregate of all PIDs associated the the Agency)</td></tr><tr><td>AGENCY_ID</td><td>AID provisioned by Untitled for Agency</td></tr><tr><td>UNIX_TIMESTAMP</td><td>Unix version of EVENT_DATE</td></tr><tr><td>JSON_HEADERS</td><td>JSON Header from the tag fire</td></tr><tr><td>REF_URL</td><td>Reference URL of the tag fire; last page visited</td></tr><tr><td>REFERER_URL</td><td>URL visited prior to the tag fire (when available), URL the visitor came from</td></tr></tbody></table>


# Company Revenue Dimensions

|    | Dimensions Available       |
| -- | -------------------------- |
| 1  | Under 1 Million            |
| 2  | 1 Million to 5 Million     |
| 3  | 5 Million to 10 Million    |
| 4  | 10 Million to 25 Million   |
| 5  | 25 Million to 50 Million   |
| 6  | 50 Million to 100 Million  |
| 7  | 100 Million to 250 Million |
| 8  | 250 Million to 500 Million |
| 9  | 500 Million to 1 Billion   |
| 10 | 1 Billion and Over         |


# Department Dimensions

<table data-full-width="true"><thead><tr><th></th><th>Dimensions Available</th></tr></thead><tbody><tr><td>1</td><td>Administrative</td></tr><tr><td>2</td><td>Community And Social Services</td></tr><tr><td>3</td><td>Education</td></tr><tr><td>4</td><td>Engineering</td></tr><tr><td>5</td><td>Executive</td></tr><tr><td>6</td><td>Finance</td></tr><tr><td>7</td><td>Government</td></tr><tr><td>8</td><td>Health Services</td></tr><tr><td>9</td><td>Human Resources</td></tr><tr><td>10</td><td>Information Technology</td></tr><tr><td>11</td><td>Legal</td></tr><tr><td>12</td><td>Marketing</td></tr><tr><td>13</td><td>Media And Communications</td></tr><tr><td>14</td><td>Military And Protective Services</td></tr><tr><td>15</td><td>Operations</td></tr><tr><td>16</td><td>Product Management</td></tr><tr><td>17</td><td>Real Estate</td></tr><tr><td>18</td><td>Sales</td></tr></tbody></table>


# Employee Count Dimensions

<table data-full-width="true"><thead><tr><th></th><th>Dimensions Available</th></tr></thead><tbody><tr><td>1</td><td>1 to 10</td></tr><tr><td>2</td><td>11 to 25</td></tr><tr><td>3</td><td>26 to 50</td></tr><tr><td>4</td><td>51 to 100</td></tr><tr><td>5</td><td>101 to 250</td></tr><tr><td>6</td><td>251 to 500</td></tr><tr><td>7</td><td>501 to 1000</td></tr><tr><td>8</td><td>1001 to 5000</td></tr><tr><td>9</td><td>5001 to 10000</td></tr><tr><td>10</td><td>10000+</td></tr></tbody></table>


# Industry Dimensions

<table data-full-width="true"><thead><tr><th></th><th>Dimensions Available</th></tr></thead><tbody><tr><td>1</td><td>Accounting</td></tr><tr><td>2</td><td>Advertising Services, Marketing Services</td></tr><tr><td>3</td><td>Airlines And Aviation</td></tr><tr><td>4</td><td>Alternative Dispute Resolution</td></tr><tr><td>5</td><td>Alternative Medicine</td></tr><tr><td>6</td><td>Animation</td></tr><tr><td>7</td><td>Appliances, Electrical, And Electronics Manufacturing</td></tr><tr><td>8</td><td>Architecture And Planning</td></tr><tr><td>9</td><td>Armed Forces</td></tr><tr><td>10</td><td>Artists And Writers</td></tr><tr><td>11</td><td>Automation Machinery Manufacturing</td></tr><tr><td>12</td><td>Automotive</td></tr><tr><td>13</td><td>Aviation And Aerospace Component Manufacturing</td></tr><tr><td>14</td><td>Banking</td></tr><tr><td>15</td><td>Beverage Manufacturing</td></tr><tr><td>16</td><td>Biotechnology</td></tr><tr><td>17</td><td>Book And Periodical Publishing</td></tr><tr><td>18</td><td>Broadcast Media Production And Distribution</td></tr><tr><td>19</td><td>Building Construction</td></tr><tr><td>20</td><td>Business Consulting And Services</td></tr><tr><td>21</td><td>Capital Markets</td></tr><tr><td>22</td><td>Chemical Manufacturing</td></tr><tr><td>23</td><td>Civic And Social Organizations</td></tr><tr><td>24</td><td>Civil Engineering</td></tr><tr><td>25</td><td>Commercial Real Estate</td></tr><tr><td>26</td><td>Computer And Network Security</td></tr><tr><td>27</td><td>Computer Games</td></tr><tr><td>28</td><td>Computer Hardware Manufacturing</td></tr><tr><td>29</td><td>Computer Networking</td></tr><tr><td>30</td><td>Computer Networking Products</td></tr><tr><td>31</td><td>Computers And Electronics Manufacturing</td></tr><tr><td>32</td><td>Consumer Electronics</td></tr><tr><td>33</td><td>Consumer Goods</td></tr><tr><td>34</td><td>Consumer Services</td></tr><tr><td>35</td><td>Cosmetics</td></tr><tr><td>36</td><td>Dairy Product Manufacturing</td></tr><tr><td>37</td><td>Defense And Space Manufacturing</td></tr><tr><td>38</td><td>Design Services</td></tr><tr><td>39</td><td>Education Administration Programs</td></tr><tr><td>40</td><td>E-Learning</td></tr><tr><td>41</td><td>Entertainment Providers</td></tr><tr><td>42</td><td>Environmental Services</td></tr><tr><td>43</td><td>Events Services</td></tr><tr><td>44</td><td>Executive Offices</td></tr><tr><td>45</td><td>Facilities Services</td></tr><tr><td>46</td><td>Farming</td></tr><tr><td>47</td><td>Financial Services</td></tr><tr><td>48</td><td>Fine Art</td></tr><tr><td>49</td><td>Fisheries</td></tr><tr><td>50</td><td>Food And Beverage Manufacturing</td></tr><tr><td>51</td><td>Food And Beverage Services</td></tr><tr><td>52</td><td>Freight And Package Transportation</td></tr><tr><td>53</td><td>Fundraising</td></tr><tr><td>54</td><td>Furniture And Home Furnishings Manufacturing</td></tr><tr><td>55</td><td>Gambling Facilities And Casinos</td></tr><tr><td>56</td><td>Glass, Ceramics And Concrete Manufacturing</td></tr><tr><td>57</td><td>Government Administration</td></tr><tr><td>58</td><td>Government Relations Services</td></tr><tr><td>59</td><td>Health, Wellness And Fitness</td></tr><tr><td>60</td><td>Higher Education</td></tr><tr><td>61</td><td>Hospitality</td></tr><tr><td>62</td><td>Hospitals And Health Care</td></tr><tr><td>63</td><td>Human Resources Services</td></tr><tr><td>64</td><td>Individual And Family Services</td></tr><tr><td>65</td><td>Industrial Machinery Manufacturing</td></tr><tr><td>66</td><td>Insurance</td></tr><tr><td>67</td><td>International Affairs</td></tr><tr><td>68</td><td>International Trade And Development</td></tr><tr><td>69</td><td>Internet</td></tr><tr><td>70</td><td>Investment Banking</td></tr><tr><td>71</td><td>Investment Management</td></tr><tr><td>72</td><td>It Services And It Consulting</td></tr><tr><td>73</td><td>Judiciary</td></tr><tr><td>74</td><td>Law Enforcement</td></tr><tr><td>75</td><td>Law Practice</td></tr><tr><td>76</td><td>Leasing Non-Residential Real Estate</td></tr><tr><td>77</td><td>Legal Services</td></tr><tr><td>78</td><td>Legislative Offices</td></tr><tr><td>79</td><td>Libraries</td></tr><tr><td>80</td><td>Logistics And Supply Chain</td></tr><tr><td>81</td><td>Machinery</td></tr><tr><td>82</td><td>Machinery Manufacturing</td></tr><tr><td>83</td><td>Manufacturing</td></tr><tr><td>84</td><td>Maritime Transportation</td></tr><tr><td>85</td><td>Market Research</td></tr><tr><td>86</td><td>Mechanical Or Industrial Engineering</td></tr><tr><td>87</td><td>Medical Equipment Manufacturing</td></tr><tr><td>88</td><td>Medical Practices</td></tr><tr><td>89</td><td>Mental Health Care</td></tr><tr><td>90</td><td>Military</td></tr><tr><td>91</td><td>Mining</td></tr><tr><td>92</td><td>Motion Pictures And Film</td></tr><tr><td>93</td><td>Motor Vehicle Manufacturing</td></tr><tr><td>94</td><td>Movies, Videos, And Sound</td></tr><tr><td>95</td><td>Museums, Historical Sites, And Zoos</td></tr><tr><td>96</td><td>Musicians</td></tr><tr><td>97</td><td>Nanotechnology Research</td></tr><tr><td>98</td><td>Newspaper Publishing</td></tr><tr><td>99</td><td>Newspapers</td></tr><tr><td>100</td><td>Nonprofit Organization Management</td></tr><tr><td>101</td><td>Non-Profit Organizations</td></tr><tr><td>102</td><td>Oil And Gas</td></tr><tr><td>103</td><td>Online Audio And Video Media</td></tr><tr><td>104</td><td>Outsourcing And Offshoring Consulting</td></tr><tr><td>105</td><td>Packaging And Containers Manufacturing</td></tr><tr><td>106</td><td>Paper And Forest Product Manufacturing</td></tr><tr><td>107</td><td>Personal Care Product Manufacturing</td></tr><tr><td>108</td><td>Pharmaceutical Manufacturing</td></tr><tr><td>109</td><td>Philanthropic Fundraising Services</td></tr><tr><td>110</td><td>Photography</td></tr><tr><td>111</td><td>Plastics Manufacturing</td></tr><tr><td>112</td><td>Political Organizations</td></tr><tr><td>113</td><td>Primary And Secondary Education</td></tr><tr><td>114</td><td>Printing Services</td></tr><tr><td>115</td><td>Professional Training And Coaching</td></tr><tr><td>116</td><td>Program Development</td></tr><tr><td>117</td><td>Public Policy Offices</td></tr><tr><td>118</td><td>Public Relations And Communications Services</td></tr><tr><td>119</td><td>Public Safety</td></tr><tr><td>120</td><td>Railroad Equipment Manufacturing</td></tr><tr><td>121</td><td>Ranching</td></tr><tr><td>122</td><td>Real Estate</td></tr><tr><td>123</td><td>Recreational Facilities</td></tr><tr><td>124</td><td>Religious Institutions</td></tr><tr><td>125</td><td>Renewable Energy Semiconductor Manufacturing</td></tr><tr><td>126</td><td>Renewables &#x26; Environment</td></tr><tr><td>127</td><td>Research</td></tr><tr><td>128</td><td>Restaurants</td></tr><tr><td>129</td><td>Retail</td></tr><tr><td>130</td><td>Retail Apparel And Fashion</td></tr><tr><td>131</td><td>Retail Art Supplies</td></tr><tr><td>132</td><td>Retail Groceries</td></tr><tr><td>133</td><td>Retail Luxury Goods And Jewelry</td></tr><tr><td>134</td><td>Retail Office Equipment</td></tr><tr><td>135</td><td>Security And Investigations</td></tr><tr><td>136</td><td>Semiconductor Manufacturing</td></tr><tr><td>137</td><td>Shipbuilding</td></tr><tr><td>138</td><td>Software Development</td></tr><tr><td>139</td><td>Spectator Sports</td></tr><tr><td>140</td><td>Sporting Goods Manufacturing</td></tr><tr><td>141</td><td>Sports</td></tr><tr><td>142</td><td>Strategic Management Services</td></tr><tr><td>143</td><td>Supermarkets</td></tr><tr><td>144</td><td>Technology And Information</td></tr><tr><td>145</td><td>Telecommunications</td></tr><tr><td>146</td><td>Textile Manufacturing</td></tr><tr><td>147</td><td>Think Tanks</td></tr><tr><td>148</td><td>Tobacco Manufacturing</td></tr><tr><td>149</td><td>Translation And Localization</td></tr><tr><td>150</td><td>Transportation, Logistics, Supply Chain And Storage</td></tr><tr><td>151</td><td>Transportation/Trucking/Railroad</td></tr><tr><td>152</td><td>Travel Arrangements</td></tr><tr><td>153</td><td>Truck Transportation</td></tr><tr><td>154</td><td>Utilities</td></tr><tr><td>155</td><td>Venture Capital And Private Equity Principals</td></tr><tr><td>156</td><td>Veterinary Services</td></tr><tr><td>157</td><td>Warehousing And Storage</td></tr><tr><td>158</td><td>Wellness And Fitness Services</td></tr><tr><td>159</td><td>Wholesale</td></tr><tr><td>160</td><td>Wholesale Building Materials</td></tr><tr><td>161</td><td>Wholesale Import And Export</td></tr><tr><td>162</td><td>Wine And Spirits</td></tr><tr><td>163</td><td>Wireless Services</td></tr><tr><td>164</td><td>Writing And Editing</td></tr></tbody></table>


# B2C Data Points

The below table identifies the column title and description of each datapoint available in the B2C file.

| Column Label                | Description                                                                                                                                                                                                                                                                                                                |
| --------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| HEM                         | Hashed email (sha256 lowercase)                                                                                                                                                                                                                                                                                            |
| UP\_ID                      | Universal Person ID                                                                                                                                                                                                                                                                                                        |
| FIRST\_NAME                 | First name of the matched record                                                                                                                                                                                                                                                                                           |
| LAST\_NAME                  | Last name of the matched record (family name, surname)                                                                                                                                                                                                                                                                     |
| PERSONAL\_EMAIL             | The most observed personal email and match for visit                                                                                                                                                                                                                                                                       |
| PERSONAL\_ADDRESS           | Personal address                                                                                                                                                                                                                                                                                                           |
| PERSONAL\_ADDRESS\_2        | Personal address 2                                                                                                                                                                                                                                                                                                         |
| PERSONAL\_CITY              | Personal address city                                                                                                                                                                                                                                                                                                      |
| PERSONAL\_STATE             | Personal address state                                                                                                                                                                                                                                                                                                     |
| PERSONAL\_ZIP               | Personal address zip                                                                                                                                                                                                                                                                                                       |
| PERSONAL\_ZIP4              | Plus 4 extension of PERSONAL\_ZIP.  Does not include PERSONAL\_ZIP                                                                                                                                                                                                                                                         |
| MOBILE\_PHONE               | Mobile number associated with the record, run against FCC portability data (to be used for matching purposes only)                                                                                                                                                                                                         |
| PERSONAL\_PHONE             | Personal phone associated with the record (for matching purposes only)                                                                                                                                                                                                                                                     |
| GENDER                      | Gender of record (M/F/U)                                                                                                                                                                                                                                                                                                   |
| AGE\_RANGE                  | [Age range](/product-overview/untitled-id-tag/visitor-dataset-features/b2c-data-points/age-range-dimensions) of record                                                                                                                                                                                                     |
| MARRIED                     | Determination if the record is married (Y/N)                                                                                                                                                                                                                                                                               |
| CHILDREN                    | Determination if the record has children (Y/N)                                                                                                                                                                                                                                                                             |
| INCOME\_RANGE               | [Income range](/product-overview/untitled-id-tag/visitor-dataset-features/b2c-data-points/income-dimensions) of record                                                                                                                                                                                                     |
| NET\_WORTH                  | Estimate of a households [total financial assets](/product-overview/untitled-id-tag/visitor-dataset-features/b2c-data-points/net-worth-dimensions) minus liabilities. Assets include financial holdings such as deposit accounts, investments, and home value. Liabilities include loans, mortgages, and credit card debt. |
| HOMEOWNER                   | Probabilistic and deterministic data set to capture home ownership (Y/N/P)                                                                                                                                                                                                                                                 |
| PERSONAL\_EMAIL\_LAST\_SEEN | <p>Unix timestamp of the last date the email was verified</p><p>To convert the unix timestamp to a standard date format, use the following formula in Excel or Google Sheets:</p><p>=(A1/86400)+DATE(1970,1,1)</p>                                                                                                         |
| ACTIVITY\_DATE              | Max date of Tag fire for period processed                                                                                                                                                                                                                                                                                  |
| PROCESSED\_DATE             | Date stamp of match process                                                                                                                                                                                                                                                                                                |
| EVENT\_DATE                 | Timestamp (Date/Time) of the tag fire to the millisecond in UTC                                                                                                                                                                                                                                                            |
| IP\_ADDRESS                 | IP address associated with the tag fire                                                                                                                                                                                                                                                                                    |
| PARTNER\_ID                 | PID provisioned by Agency from the tag (feature is an aggregate of all PIDs associated the the Agency)                                                                                                                                                                                                                     |
| AGENCY\_ID                  | AID provisioned by Untitled for Agency                                                                                                                                                                                                                                                                                     |
| UNIX\_TIMESTAMP             | Unix version of EVENT\_DATE                                                                                                                                                                                                                                                                                                |
| JSON\_HEADERS               | JSON Header from the tag fire                                                                                                                                                                                                                                                                                              |
| REF\_URL                    | Reference URL of the tag fire; last page visited                                                                                                                                                                                                                                                                           |
| REFERER\_URL                | URL visited prior to the tag fire (when available), URL the visitor came from                                                                                                                                                                                                                                              |


# Age Range Dimensions

|   | Dimensions Available |
| - | -------------------- |
| 1 | 18-24                |
| 2 | 25-34                |
| 3 | 35-44                |
| 4 | 45-54                |
| 5 | 55-64                |
| 6 | 65 and older         |


# Income Dimensions

<table data-full-width="true"><thead><tr><th></th><th>Income Ranges</th></tr></thead><tbody><tr><td>1</td><td>Less than $20,000</td></tr><tr><td>2</td><td>$20,000 to $44,999</td></tr><tr><td>3</td><td>$45,000 to $59,999</td></tr><tr><td>4</td><td>$60,000 to $74,999</td></tr><tr><td>5</td><td>$75,000 to $89,999</td></tr><tr><td>6</td><td>$90,000 to $119,999</td></tr><tr><td>7</td><td>$120,000 to $149,999</td></tr><tr><td>8</td><td>$150,000 to $199,999</td></tr><tr><td>9</td><td>$200,000 to $249,999</td></tr><tr><td>10</td><td>$250,000+</td></tr></tbody></table>


# Net Worth Dimensions

### Feature Values <a href="#networthdimensions-featurevalues" id="networthdimensions-featurevalues"></a>

|    | Dimensions Available |
| -- | -------------------- |
| 1  | Less than -$20,000   |
| 2  | -$20,000 to -$2,500  |
| 3  | -$2,499 to $2,499    |
| 4  | $2,500 to $24,999    |
| 5  | $25,000 to $49,999   |
| 6  | $50,000 to $74,999   |
| 7  | $75,000 to $99,999   |
| 8  | $100,000 to $149,999 |
| 9  | $150,000 to $249,999 |
| 10 | $250,000 to $374,999 |
| 11 | $375,000 to $499,999 |
| 12 | $500,000 to $749,999 |
| 13 | $750,000 to $999,999 |
| 14 | More than $1,000,000 |


# Plain Text Email (PTE) Data Points

<table data-full-width="false"><thead><tr><th>Column</th><th>Description</th></tr></thead><tbody><tr><td>HEM</td><td>Hashed email (sha256 lowercase)</td></tr><tr><td>EMAIL_ADDRESS_LC</td><td>Plain Text match of HEM from visit</td></tr><tr><td>ACTIVITY_DATE</td><td>Max date of Tag fire for period processed</td></tr><tr><td>PROCESSED_DATE</td><td>Date stamp of match process</td></tr><tr><td>EVENT_DATE</td><td>Timestamp (Date/Time) of the tag fire to the millisecond in UTC</td></tr><tr><td>IP_ADDRESS</td><td>IP address associated with the tag fire</td></tr><tr><td>PARTNER_ID</td><td>PID provisioned by Agency from the tag (feature is an aggregate of all PIDs associated the the Agency)</td></tr><tr><td>AGENCY_ID</td><td>AID provisioned by Untitled for Agency</td></tr><tr><td>UNIX_TIMESTAMP</td><td>Unix version of EVENT_DATE</td></tr><tr><td>JSON_HEADERS</td><td>JSON Header from the tag fire</td></tr><tr><td>REF_URL</td><td>Reference URL of the tag fire; last page visited</td></tr><tr><td>REFERER_URL</td><td>URL visited prior to the tag fire (when available), URL the visitor came from</td></tr></tbody></table>


# Data Validation & Identity Resolution

This article explains how identity resolution works within the Untitled platform, what impacts data quality (DQ), and how to think about trade-offs when activating records.

Internet-scale identity data is inherently probabilistic at the margins. While our system is built to maintain high confidence levels, understanding how and why mismatches occur is critical to evaluating performance properly.&#x20;

The goal is not theoretical perfection. **The goal is maximizing reliable match rates while maintaining strong confidence thresholds that support positive unit economics in marketing activation**.

### What Is Identity Resolution?

Identity resolution is the process of connecting anonymous website visitors to a real individual or business profile.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2Fatn4bKAVzZQt5fypLPcQ%2FIdentity%20Across%20the%20Web.png?alt=media&amp;token=473fed54-3c10-49c0-b35e-18ba7e2995bb" alt=""><figcaption></figcaption></figure>

Standalone websites typically identify only 1–2% of traffic using first-party cookies or user-submitted data. Untitled expands that capability by leveraging:

* A distributed Identity Graph
* Deterministic validation signals
* Ongoing data feedback loops

This allows for identification of a materially larger percentage of anonymous traffic, provided sufficient signal density exists.

***

### Expected Accuracy Levels

Across production deployments, identity matching accuracy **typically** falls in the **90–95% range**.

Important context:

* Internet-scale datasets are **never** 100% perfect.
* A small percentage of mismatches is expected in any large identity system.
* Accuracy improves with traffic scale and engagement frequency.
* Small filtered exports can appear less accurate than overall system averages.

Accuracy is influenced by signal density, not just matching logic.

***

### What Impacts Data Quality?

Several variables influence match confidence:

#### 1. Traffic Volume

Websites with:

* Fewer than \~1,000 monthly unique visitors
* Newly launched properties
* QA or Dev environments

May exhibit more variability in match confidence.

**Performance becomes materially more stable above \~5,000 monthly uniques.**

#### 2. Session Frequency

Accuracy improves logarithmically with engagement frequency.

More repeat sessions and longer engagement windows create stronger triangulation between:

* IP address
* Device
* Browser
* Hashed email identifier

More signals = higher confidence.

#### 3. Filtering & Export Size

Applying heavy demographic or firmographic filters and then exporting extremely small subsets can create the perception of lower accuracy. Small samples amplify anomalies.

***

### Deterministic Matching Today

The current system relies primarily on deterministic matching and rule engines.

This approach:

* Performs strongly in high-traffic environments
* Avoids excessive modeling assumptions
* Prioritizes observed validation over speculative inference

However, in low-signal environments, deterministic systems can produce what we call **extraneous linkages** — technically valid but lower-confidence matches formed from partial signals.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FBmJoqfWx2tS88Od6QHHs%2FGraph.png?alt=media&amp;token=4d5387eb-a88c-403c-aace-736f1bf76442" alt=""><figcaption></figcaption></figure>

We are actively rolling out probabilistic signal filtering upgrades to reduce false positives and improve confidence scoring when data is ambiguous.

***

### The Feedback Loop Effect

The highest level of accuracy occurs when:

1. Records are activated in marketing channels
2. Users convert or transact
3. First-party data is fed back into the platform

As activation increases, local accuracy improves.

This creates a reinforcing cycle:

More activation → More signal → Better resolution → Higher confidence

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FOZZjkId9hCbVRz05OrL1%2FFeedback%20Loop.png?alt=media&amp;token=0ba760bc-166c-4209-ae69-b0760f9c03cf" alt=""><figcaption></figcaption></figure>

***

### The Strategic Perspective

When evaluating data quality, the relevant question is not: “Is this 100% perfect?”

The relevant questions are:

* Is the majority of the dataset reliable?
* Is the cost of activation justified by the confidence level?
* Are we applying appropriate filters for higher-cost channels?
* Are we leveraging intent signals to increase precision?

Identity resolution at scale is about disciplined confidence management and unit economics. The following articles in this section dive deeper into this topic. &#x20;


# Summary / TL;DR

How does Untitled provide the information it does?

Untitled identifies up to 60% of your website visitors. This rate depends on the type of site, amount of traffic, level of engagement of visitors, etc. For example, deeper engagement with the website gives our technology more ‘shots on goal’ to identify the visitor, as opposed to an immediate bounce due to a slow homepage, where our Tag may not even get a chance to load.

Each identified visitor can have 30+ attributes associated with them, and each of those attributes can be informed by multiple data points.  For example, If someone signed up for an industry working group this week, their work email information is very fresh and likely to be correct. If that same person entered a different work email on a trade show registration two years ago, that’s less likely to be accurate. Our technology would weigh those data points against each other and decide on the most recent address. In lieu of new information, however, Untitled may have provided the old work email address as an attribute if there isn't a reason to think it’s *not* correct.

The Untitled identity graph is constantly taking in millions of datapoints from a massive pool of data and weighing them against each other to provide the most complete, most accurate profile for each identified visitor. That’s the ‘secret sauce’ of the tech. Unfortunately, the only guarantee is it will never be 100% accurate (and if anyone makes that claim, run away!). Any single attribute could be incorrect, but we’re confident that 90% of the records in your account are correct.


# How Identity Resolution Works

This article provides a technical explanation of how identity resolution operates within the Untitled platform, including the phases of resolution, validation logic, and matching safeguards.

## Introduction

The system is designed to maintain high confidence at internet scale while balancing match rate and precision.

Identity resolution within Untitled is built on:

* Deterministic signal triangulation
* Distributed validation across large datasets
* Cross-device HEM anchoring
* Ongoing feedback loops
* Confidence reinforcement over time

Accuracy is not binary. It is signal-weighted and environment-dependent. In production environments with sufficient traffic and activation, matching accuracy typically falls within the 90–95% range.

***

## Overview of the Resolution Framework

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FOZZjkId9hCbVRz05OrL1%2FFeedback%20Loop.png?alt=media&amp;token=0ba760bc-166c-4209-ae69-b0760f9c03cf" alt=""><figcaption></figcaption></figure>

Identity resolution follows a three-phase framework:

1. **Verification** — Establishing deterministic linkage between digital identifiers and a primary identity marker
2. **Efficacy** — Expanding that linkage through the Identity Graph and enrichment layers
3. **Accuracy** — Reinforcing and improving record confidence through activation feedback loops

Each phase builds on the prior one.

***

## Phase 1: Verification

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FZwb4s0PHzB9cI5kNjnon%2Fverification.png?alt=media&amp;token=6453ca25-70f4-45cb-8fcb-7d169a777026" alt=""><figcaption></figcaption></figure>

### Objective

Establish a deterministic linkage between a browser event and a primary identity marker.

### Primary Identity Marker

The system uses **Hashed Email Addresses (HEMs)** as the foundational identity anchor within the Identity Graph.

HEMs enable:

* Cross-device linkage
* Offline-to-online reconciliation
* Deterministic record reinforcement

### Signals Captured When the Tag Fires

When the Untitled Identity Tag executes, the system observes:

* IP address
* Device characteristics
* Browser characteristics
* Cookie identifiers
* Timestamped engagement activity

Specifications of this can be found [in this article. ](/misc/cookies-and-storage-overview)

### Triangulation Process

The system attempts to triangulate:

* Observed IP address
* Device-to-browser relationship
* Cookie identifier
* Known HEM associations

Validation includes:

* Comparing observed IP against known IP footprint history
* Validating device-to-HEM relationships
* Timestamp alignment across signals

If sufficient deterministic alignment exists, a valid linkage is formed.

***

### Why Signal Density Matters

The more frequently a visitor is observed, the more confidence increases.

Accuracy improves:

* Proportionally with site scale
* Logarithmically with session frequency

In practical terms: More tag fires → More triangulation → Higher confidence.

Low-traffic environments provide fewer signals, increasing the likelihood of ambiguity.

***

## Phase 2: Efficacy

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FuPPTdNk42aJxKhlo3qyX%2FEfficacy.png?alt=media&amp;token=b56aab85-ec4e-442a-b92d-94e9de51fc62" alt=""><figcaption></figcaption></figure>

### Objective

Expand and enrich the verified identity through the Identity Graph.

Once a valid HEM linkage is established, the system maps online identifiers to:

* B2C demographic data
* B2B firmographic data
* Cross-device associations
* Behavioral attributes

### Distributed Validation Model

To maintain record confidence at scale, the system relies on:

* First-party and third-party cookie sync partnerships
* Email engagement IP footprint validation
* Mobile movement data (MAID/HEM associations)
* Log-level timestamp validation

Rather than correcting individual records in isolation, the system relies on **distributed signal consensus**. This avoids overfitting to single data points and instead maintains majority confidence alignment across signals.

***

### The Self-Healing Mechanism

Records are continuously evaluated for:

* Signal reinforcement
* Drift detection
* Stale or invalid attributes

If signals weaken or contradict prior associations, confidence scoring adjusts accordingly. This distributed reinforcement model enables ongoing recalibration without sacrificing match scale.

***

## Phase 3: Accuracy

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FtuTQC6UPAMmQkZjuCMiD%2FAccuracy.png?alt=media&amp;token=3fa8087a-0b22-4c1d-a0ac-123071271c0e" alt=""><figcaption></figcaption></figure>

### Objective

Increase confidence through real-world activation and client-side validation.

The highest level of resolution occurs when:

* Records are activated in marketing channels
* A conversion or transaction occurs
* First-party data confirms identity

When this feedback is ingested:

* Confidence improves locally
* Enrichment becomes more precise
* Similar audience modeling improves

This creates a reinforcing loop: Activation → Validation → Confidence Improvement → Better Future Resolution

***

## Deterministic vs Probabilistic Matching

### Current State

The system is primarily deterministic and rule-based.

**Strengths:**

* High confidence in observed signals
* Reduced reliance on speculative modeling
* Strong performance in high-signal environments

**Limitation:**

* In low-volume settings, deterministic logic may produce extraneous linkages from partial signals.

***

### Upcoming Enhancements

We are rolling out limited probabilistic modeling designed to:

* Evaluate statistical likelihood that multiple records belong to the same individual
* Reduce deterministic false positives
* Improve ambiguity handling
* Return only records meeting defined confidence thresholds

**Trade-off:**

* Slightly reduced attribute fill in smaller datasets
* Meaningfully higher precision overall

Everything is a balance between match rate and confidence.

***

## What Can Undermine Accuracy?

Identity resolution can be impacted by:

* Low traffic volume (<1K monthly uniques)
* Inconsistent visitor sessions
* Heavy post-resolution filtering
* Small export subsets
* QA or Dev environments

These conditions reduce signal density and increase ambiguity.


# Why Data Quality May Vary

Deep dive on Data Quality impact within low traffic, QA & Dev environments

If you are seeing occasional mismatches in a QA environment or low-traffic site, this is expected and does not typically reflect production performance. Across live deployments with **sufficient traffic**, matching accuracy generally falls in the **90–95% range**. Identity resolution is signal-driven. When signal density is low, variability increases. When signal density is high, accuracy stabilizes.

Below explains why.

***

## The Core Principle: Signal Density Drives Confidence

Identity resolution relies on triangulating multiple deterministic signals, including:

* IP address
* Device and browser characteristics
* Cookie identifiers
* Hashed Email Address (HEM)
* Historical validation signals

The more frequently a visitor is observed, the more confidently those signals align.

**Accuracy improves:**

* Proportionally with site scale
* Logarithmically with session frequency

More traffic and repeat engagement create stronger validation reinforcement.

***

## Why Low-Traffic Sites Show More Variability

When a site has:

* Fewer than \~1,000 monthly unique visitors
* Limited repeat sessions
* Inconsistent engagement

The system has fewer opportunities to validate identity associations. In these environments, deterministic matching may occasionally produce what we refer to as:

### Extraneous Linkages

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FBmJoqfWx2tS88Od6QHHs%2FGraph.png?alt=media&amp;token=4d5387eb-a88c-403c-aace-736f1bf76442" alt=""><figcaption></figcaption></figure>

Extraneous linkages occur when:

* Partial signals are technically valid
* Multiple possible matches exist
* There are insufficient signals to confidently discriminate

A match is produced, but confidence is lower than in high-volume environments.

Performance becomes materially more stable above \~5,000 monthly uniques.

***

## Why QA & Dev Environments Amplify Issues

QA and Dev environments often:

* Have extremely low traffic
* Generate sporadic tag fires
* Lack repeat behavioral patterns
* Sit behind restricted access

Because identity resolution improves with repeated observation, these environments can exaggerate anomalies. QA is effectively a worst-case scenario for identity resolution performance. Issues observed in QA frequently do not persist in production.

***

## Why Small Exports Can Appear Worse

Another common scenario involves:

* Applying multiple demographic or firmographic filters
* Exporting a small subset
* Manually validating a handful of records

Small samples can amplify perceived inaccuracies.

Example: A system performing at 93% accuracy still allows for 7% anomalies.\
In a small export of 20 records, 1–2 mismatches may appear disproportionate and alarming.

Manual validation using Google or LinkedIn searches is not always definitive ground truth, especially for:

* Private companies
* Mid-market businesses
* Individuals with limited public presence

Internet-scale datasets are not identical to public search visibility.

***

## Deterministic Matching in Low-Signal Environments

The current system relies primarily on deterministic and rule-based matching.

**Strength:**

* High confidence in observed validation
* Reduced speculative modeling

**Limitation:**

* Deterministic logic requires sufficient signal density

In low-volume settings, ambiguity increases. We are rolling out probabilistic signal filtering upgrades designed to:

* Reduce false positives
* Improve confidence scoring
* Return only records that meet stronger certainty thresholds

This may slightly reduce attribute fill in low-traffic environments but will improve precision.

***

## When Should You Investigate Further?

**Data quality concerns merit deeper review if:**

* Anomalies persist on high-traffic production environments
* Issues are observed consistently across large datasets
* Activation performance materially underperforms expectations

**Isolated anomalies are expected in:**

* QA environments
* Newly launched sites
* Extremely small exports (1-2 dozen records)

***

## Practical Safeguards

To increase confidence and reduce perceived variability:

1. Evaluate production traffic rather than QA
2. Allow sufficient traffic volume before benchmarking accuracy
3. Use Buyer Intent filters (Hot/Warm), **detailed in the next article**
4. Apply additional validation for higher-cost activation channels
5. Leverage activation feedback loops to improve local accuracy

Identity resolution strengthens over time with traffic and engagement.


# Buyer Intent as a Quality Control Layer

When evaluating data quality, one of the most effective safeguards is the use of Buyer Intent as a filtering mechanism. The buyer Intent scoring feature serves as both a marketing feature and confidence overlay.&#x20;

### The Quick Solve

If you are concerned about match accuracy, the most reliable way to increase confidence is to activate only **“Hot”** and **“Warm”** visitors.

These classifications represent the top \~25% of resolved visitors and are heavily informed by observed behavioral signals, thus match accuracy may improve accordingly.&#x20;

***

### What Buyer Intent Represents

Buyer Intent classifications are derived primarily from session-level behavioral signals, including:

* Frequency of visits
* Recency of activity
* Engagement depth
* Page interaction patterns
* Time on site / session duration
* Page relevancy

Because intent scoring is informed by engagement data, it introduces an additional validation layer beyond identity linkage alone. Longer sessions and repeat engagement increase match confidence.

***

### Why Intent Improves Data Quality

Identity resolution confidence increases when:

* A device is observed multiple times
* Behavioral signals align consistently
* Engagement patterns reinforce the identity association

Hot and Warm visitors are, by definition, more frequently observed and more deeply engaged. More observation = stronger triangulation = higher confidence.

**In practical terms:**

If a resolved visitor is classified as Hot or Warm, the likelihood that the identity linkage is correct is materially higher than a Cold, single-session visitor.

***

### When to Use Buyer Intent Filtering as a Quality Control Layer

Intent filtering as a quality control layer is strongly recommended when:

* You are activating higher-cost channels
* You are sending direct mail
* You are deploying sales outreach
* You are testing a new property

For lower-cost digital marketing channels (digital retargeting, etc.), broader activation may still be economically viable. However, for channels with higher marginal costs, intent filtering will better align DQ to your unit economics.

{% hint style="success" %}
**For clarity, we highly encourage taking advantage of the Buyer Intent filters for strategic audience building, regardless of site volume.** These filters provide meaningful dimensions for segmenting and orchestrating marketing activations. The designation referenced here applies specifically to DQ thresholds.
{% endhint %}

***

### Best Practices for DQ Management by Traffic Level

#### Under \~1,000 Monthly Uniques

Use Hot-only filtering when activating higher-cost channels or any 1-1 personalized marketing.\
Expect more variability in broader exports.

#### 1,000–5,000 Monthly Uniques

Hot + Warm is generally safe for 1-1 personalized activation.\
Confidence stabilizes meaningfully in this range.

#### 5,000+ Monthly Uniques

Intent filtering still improves strategic efficiency but broader activation becomes more stable due to signal density.

***

### How Intent Interacts with Data Quality

Buyer Intent refines the Identity Resolution Process.

**It functions as:**

* A behavioral validation layer
* A prioritization mechanism
* A confidence amplifier

Rather than asking, “Is every record perfect?”, the better question becomes: **“Are we activating the highest-confidence segment of resolved visitors?”** Utilizing Buyer Intent as an Audience filter allows you to answer that with discipline.

***

### In Summary

If data quality concerns arise, start by filtering to Hot and Warm Buyer Intent.

In most environments with sufficient traffic, this:

* Improves precision
* Reduces false positives
* Enhances conversion performance
* Protects unit economics

Identity resolution is confidence-weighted. Buyer Intent scoring is one of the strongest tools available to filter to the top-end of that confidence weighting.&#x20;


# Activation Tradeoffs

Trade-Offs & Cost-Benefit of Marketing to Potentially Inaccurate Records

## The Economic Cost Curve

No identity resolution system operating at internet scale will be 100% perfect. The practical question is: **What is the expected economic outcome of activating a record with some risk of inaccuracy versus not activating a record at all?**

In many channels, the marginal cost of activation is low enough that occasional record-level inaccuracies do not undermine overall ROI. In higher-cost offline tactics, the cost of being wrong increases sharply and should be managed with stricter gating and validation.

The best way to think about this is to treat identity data like any other performance input: confidence-weighted, cost-sensitive, and governed by unit economics.

***

### The Two Real Risks

When people talk about “data quality,” they are typically reacting to one of two risks:

#### 1) The Cost of Being Wrong

You spend money targeting the wrong person, wrong household, or wrong company.

#### 2) The Cost of Not Acting

You fail to market to a real in-market visitor because you rejected an imperfect record, and you lose the conversion opportunity.

**Most teams focus only on the first risk. In practice, the second risk is often larger, especially in lower-cost digital channels.**

***

### Inaccuracy Dimensions and Impact Weighting

A record can be imperfect in multiple ways, and each has a different economic impact. There's a few dimensional considerations.&#x20;

#### A) Identity Linkage Is Wrong

The record refers to the wrong individual.

**Impact:** potentially high, depending on channel cost and targeting precision.

#### B) Identity Linkage Is Right, but Attributes Are Stale

The person is correct, but employer, title, income band, household composition, etc. are outdated.

**Impact:** often low in broad marketing; higher in narrow B2B targeting.

#### C) Contact Detail Is Valid, but Metadata Is Imperfect

Email or address is deliverable, but enrichment fields are incomplete or slightly off.

**Impact:** usually minimal in email and retargeting; moderate in direct mail; higher in highly personalized outreach.

**A mature activation strategy distinguishes between these scenarios and applies the right controls.**

***

## The Core Framework: Cost per Attempt vs Cost of Error

A productive way to think about this is through a cost-benefit analysis.&#x20;

1. What does it cost to make an attempt in this channel?
2. What is the downside if the record is imperfect?
3. What is the upside if the record is correct?
4. What additional validation should be required at this cost level?

As channel cost rises, the required confidence threshold should rise with it. For example, if you plan to send an expensive personalized direct mail piece or kit, it is generally advisable to have several prior marketing touchpoints to validate that the record merits the implied unit cost of that outreach.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FroUBr2FZ2ps4VaAETbBm%2FDigital%20Activation%20Trade%20Offs.png?alt=media&amp;token=bfb61f95-7d58-4a4a-9b33-a0c75baa3c89" alt=""><figcaption></figcaption></figure>

***

## Channel-by-Channel Tradeoffs

### 1) Low-Cost Digital Channels (Generally Forgiving)

These channels are economically tolerant of some record-level imperfection **because the cost to test is low.**

#### **Email**

* Cost per attempt: fractions of a cent to a few cents
* Downside of being wrong: low (bounce, unsubscribe, missed impression)
* Upside of being right: high (conversion, pipeline, repeat purchase)

**Recommended approach for Email:**

* Use [buyer intent gating](/product-overview/untitled-id-tag/data-validation-and-identity-resolution/buyer-intent-as-a-quality-control-layer) when traffic is low (Hot/Warm)
* Measure outcomes at cohort level, not record-by-record
* Expect occasional anomalies without invalidating the strategy

#### **Digital Retargeting / Programmatic Ads**

* Cost per attempt: low relative to offline tactics
* Downside of being wrong: low (some wasted impressions)
* Upside of being right: strong incremental lift

**Recommended approach for Digital Retargeting / Programmatic Ads:**

* Broader activation can be reasonable if unit economics work
* Tighten gating for expensive audiences or constrained budgets
* Optimize toward conversion and incrementality, not “perfect identity”

{% hint style="info" %}
Key point: In low-cost digital channels, the opportunity cost of doing nothing often exceeds the cost of occasional inaccuracy.
{% endhint %}

***

### 2) Medium-Cost Channels (Require Gating)

These channels carry meaningful marginal costs, so confidence controls matter more.

#### **Sales Outreach (SDR Sequences, Manual Personalization, Direct Outbound)**

* Cost per attempt: moderate to high (labor-driven)
* Downside of being wrong: wasted effort, brand friction, internal skepticism
* Upside of being right: meetings and pipeline

**Recommended approach for Sales Outreach:**

* Gate on intent (Hot/Warm) and engagement thresholds
* Treat identity as a qualifier, not a guarantee
* Combine identity (“who”) with behavior (“why now”)
* Iniate after digital touchpoints have potentially returned the user to the site for one or more additional sessions

***

### 3) Higher-Cost Channels (Strict Controls + Secondary Validation)

As costs increase, activation should require stronger evidence.

#### **High-Cost Paid Social (ex. LinkedIn)**

* Cost per attempt: materially higher than broad programmatic
* Downside of being wrong: elevated CAC
* Upside of being right: strong response in narrow segments

**Recommended approach of High-Cost Paid Social:**

* Use intent gating and frequency thresholds
* Run smaller test cohorts before scaling
* Prioritize behavior-qualified audiences

#### **Direct Mail (Postcards, Letters)**

* Cost per attempt: moderate to high depending on format
* Downside of being wrong: wasted print/postage, potential brand awkwardness
* Upside of being right: high response and memorability in certain verticals

**Recommended approach for Direct Mail:**

* Do not send mail solely because a record exists
* Gate on intent and/or prior digital engagement
* Ensure address verification runs before fulfillment (if you run Direct Mail with Untitled, this happens automatically).&#x20;

Operational hygiene reduces the effective cost of being wrong.

***

### 4) Very High-Cost Fulfillment (Certainty Required)

#### **Premium Interest Kits / High-Cost Sends**

* Cost per attempt: very high
* Downside of being wrong: unacceptable waste
* Upside of being right: meaningful revenue impact

**Recommended approach for Premium Interest Kits /** **High-Cost Sends:**

* Require multiple independent qualification signals
  * Strong intent (Hot)
  * Repeat sessions
  * High-value page depth
  * Prior lead events
* Consider staged funnels (digital → mail → premium send)
* Apply secondary validation before triggering fulfillment

At this tier, identity resolution is one component of a broader qualification framework you should have layered into your marketing operations anyways.

***

### Confidence Tiers for Activation

A disciplined model is to define activation tiers:

#### Tier 1: Broad Activation

* Low-cost channels
* Allows modest uncertainty
* Measured in aggregate ROI

#### Tier 2: Qualified Activation

* Moderate-cost channels
* Requires intent and engagement thresholds
* Measured in pipeline efficiency

#### Tier 3: Verified Activation

* High-cost offline channels
* Requires secondary validation and strong behavioral proof
* Measured in strict unit economics

**This prevents the common mistake of applying the same risk tolerance across all channels.**

***

### What “Good” Looks Like in Practice

A defensible activation posture includes:

* Using buyer intent as a confidence layer
* Matching channel cost to confidence threshold
* Validating where cost justifies it
* Measuring outcomes at cohort level
* Iterating based on economic results

Identity resolution should be governed by performance discipline over anecdotal record checks.

***

### The Big Question

The *economic* question is not “Is this record perfect?”

It is: **Given the cost of this channel, is the expected upside of targeting a real visitor worth the small risk that some records will be imperfect?**

For low-cost digital activation, the answer is often yes. For higher-cost offline activation, the answer should be yes, but with proper phasing, gating and validation.


# Visitor Enrichment

Identify your best opportunities for current or new customers.

You’ve resolved visitor data from your website through the Untitled ID Tag. Now, how do you integrate this new third-party data with the customer data in your existing applications? You connect those applications to Untitled for automated integration and enrichment!

Enrichment in Untitled allows you to enrich your visitor datasets with matched IDs from your customer software sources, including Hubspot and Shopify.

Untitled will automatically match your historical customers to resolved visitor profiles and unify all datapoints within each customer profile. This enriched, unified customer view enables robust audience building and activation tactics.

If you haven't already connected a source for enrichment, please do so by following the [steps provided here](/integrations/sources).

{% hint style="warning" %}
If you've recently connected a source, please know it can take up to 24 hours to initially onboard your customer data.&#x20;
{% endhint %}

***

## Viewing Enriched Records <a href="#matchandenrichresolutionswithcrmrecords-filter-and-exportresults" id="matchandenrichresolutionswithcrmrecords-filter-and-exportresults"></a>

1. After allowing 24 hours for your source’s historical sync to complete, log into your Untitled account and select **Visitor table** from the left navigation menu
2. Select the **Filters** drop down on the right side the Visitor resolution table
3. Use the Source drop down to choose your Enrichment eligible source
4. Under Filters, you will have the option to ***View All*****,&#x20;*****View Only Source Matches*****&#x20;or&#x20;*****Exclude Source Matches*** from the results.
   1. Should you select ***View All***, the table will provide all resolved customers, to include the enriched datapoints pulled from the connected application
   2. Should you select ***View Only Source Matches***, the table will only populate the customers that matched between resolved the Untitled ID Tag and the application
   3. Should you select ***Exclude Source Matches***, the table only populate net new leads by removing all matches found between the Untitled ID Tag and the application

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FExdHOhVV1UgI5Np7zV98%2FScreenshot%202023-12-12%20at%201.16.06%20PM.png?alt=media&amp;token=e6690704-d63f-4072-af87-c8507899b4e3" alt=""><figcaption></figcaption></figure>

5. Enter the desired date range and hit **Apply Filters** to generate filtered results
6. Matches will be clearly indicated in the second column titled **Identified**, which will list each website tag and source the customer has been located

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FvjtgYKCkZD2TYVD8cUp1%2FScreenshot%202023-12-12%20at%201.25.30%20PM.png?alt=media&amp;token=8eb309c5-ab06-48bf-aca3-37a3e1273da9" alt=""><figcaption><p>Example of Hubspot Indentified visitors &#x26; their unique Contact ID</p></figcaption></figure>

7. When all desired filters have been applied and you are ready to download your list, select the **Export** button or save these visitors as an audience for audience activation.&#x20;

***

## Need Further Support or Have Additional Questions?

Check out our[ <mark style="color:blue;">FAQs</mark> ](/misc/frequently-asked-questions)to get some answers, start a chat on our [website](https://getuntitled.ai/), or get connected directly with our team [<mark style="color:blue;">here</mark>](https://getuntitled.ai/contact/).


# Hubspot Fields

{% hint style="info" %}
Enriched datapoints are accessible both in the Visitor Table under the B2B, B2C, and PTE tabs and the **View Profile** tab in the last column of the Visitor table.
{% endhint %}

1. Hubspot ID
2. Total Revenue
3. Unique Conversions
4. Lead Status
5. Recent Deal Amount
6. Last Email Open Date


# Klaviyo


# Shopify Fields

{% hint style="info" %}
Enriched datapoints are accessible both in the Visitor Table under the B2B, B2C, and PTE tabs and the **View Profile** tab in the last column of the Visitor table.
{% endhint %}

1. Shopify ID
2. Lifetime Total Spent
3. Average Order Value
4. Most Recent Order Date
5. First Order Date
6. Lifetime Count Orders


# Audience Studio

Build high performing audiences for all your advertising channels.

## Audience Builder Walkthrough Video

Deep-dive into the Audience Builder tool within the Untitled Platform.&#x20;

Before you watch this video, ensure you’re familiar with the Untitled Platform [by watching this overview](/product-overview/overview-and-product-tour).

{% embed url="<https://www.youtube.com/watch?v=2ZqX8Gqlvhg>" %}

### Video Timestamps

0:30 Visitor Table record types

1:23 Source filters

1:38 Page path filters

2:24 Buyer Intent Model filters

2:48 Session data filters

3:00 B2C filters

4:02 B2B filters

4:33 Apply filters and save as an Audience<br>

## What are Audiences?

The Untitled Audience Builder allows you to classify and filter your resolved leads based on demographic and firmographic attributes and then save those filter settings to the Audience Library for ongoing use.

With the ability to apply advanced filters to lead lists, you can strategically sort leads based on specific requirements, leading to more targeted and effective campaigns. Save your filter settings as a new Audience for ongoing efficiency, and easily access and reuse each saved configuration.

Follow the step-by-step guide below to get started!

## Creating Audiences <a href="#instructions" id="instructions"></a>

#### Log into Untitled <a href="#log-into-distilled" id="log-into-distilled"></a>

1. Log into Untitled and navigate to the Visitor Table page to view all available visitor data
2. Toggle between visitors based on file types: “B2B”, “B2C” or “PTE”:
   1. [B2B](/product-overview/untitled-id-tag/visitor-dataset-features/b2b-data-points) - Resolutions returned with name + business email address and firmographic attributes.
   2. [B2C](/product-overview/untitled-id-tag/visitor-dataset-features/b2c-data-points) - Resolutions returned with name + personal email address demographic attributes.
   3. [PTE](/product-overview/untitled-id-tag/visitor-dataset-features/plain-text-email-pte-data-points) - Resolutions that we could not associate back with a B2B or B2C profile, but still could resolve an email for.

![](https://distilledguides.refined.site/download/attachments/634224823/Resolution_table-2.png)

3. In the table column titled Profile, select the View button on an individual result to review all the attributes on a single individual.
4. Use the Filter dropdown to view all available filter settings.&#x20;
   1. File types Filtering: Select which file types you would like to include in your audience. Options include B2B, B2C, and PTE.
   2. Date Range Filtering: Build and sort audiences based on the specific date or period of time they visited your website.
   3. Tag Filtering: If you have installed multiple Untitled ID Tags across different websites, you can select one or multiple tags to view and sort results.
   4. Source Filtering: Connect your Shopify or Hubspot account to identify website visitors that currently match with an existing customer ID in these applications. Exclude matches to view net new leads or only include matches to build lists for targeting repeat customers.
   5. Page Path Filters: To filter your audience based on the pages viewed while on your website, apply the following conditions to your filter settings:
      * Type dropdown:
        * Visited URL: select to filter based on all the pages a visitor hit when on your website
        * Referrer URL: select to filter based on the site or URL the visitor hit prior to landing on your website
      * Method dropdown:
        * Contains: select to filter results based on any unique section of a URL
        * Does not contain: select to exclude visitors who landed on a specific page, such as the careers page
        * Equals: select to filter visitors based on an exact URL
      * URL input box:
        * To filter visitors by the selected page path conditions, copy and paste a unique section of that page URL in the input box, e.g. “/products/shoes”.
      * Select Add + to apply additional URL conditions to the results
   6. Seniority Level Filtering for B2B: Build your B2B audiences based on specific seniority levels.
   7. Company State, City, and Zip Code for B2B: Build your B2B audience based on location data.
   8. Age Range Filtering for B2C: Customize your B2C audience by filtering leads based on age ranges.
   9. Gender Filtering for B2C: Segment your B2C lists based on gender.
   10. Personal State, City, and Zip Code for B2C: Build your B2C audience based on location data.

![Filter Examples](https://distilledguides.refined.site/download/attachments/634224823/Screenshot%202024-02-28%20at%201.36.28%20PM.png)

6. Once you have selected all desired filters, click “Apply filters” to generate your new audience.
7. You can now either save the current filter settings to the Audience Library or Export lists as a csv.

### Save Filter Settings as a New Audience  <a href="#save-filter-settings-as-a-new-audience" id="save-filter-settings-as-a-new-audience"></a>

1. To save filter settings for repeated use, select the Save as audience button in the top right side of the table.

![Audience Saving](https://distilledguides.refined.site/download/attachments/634224823/Create_new_audience_1.png)

2. You will be prompted to name your new audience and give it a Lookback Window

The lookback window determines how long website visitors will remain in this Audience after a website session. Visitors can always re-enter an Audience if they reach the filter criteria again on their next website visit. If you'd like to create an Audience that never loses never loses members, select "All-Time".

{% hint style="info" %}
[Read our documentation](/audience-studio/using-the-audience-lookback-window-strategically) about how to strategically use Lookback Windows for your online marketing efforts.&#x20;
{% endhint %}

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2Fx2TEaU0CSBAXn5tMyOwB%2FScreenshot%202025-06-30%20at%203.53.17%E2%80%AFPM.png?alt=media&amp;token=47eb9a1a-fc08-4bde-b02f-869f6580777f" alt=""><figcaption><p>Name your Audience and set a Lookback Window</p></figcaption></figure>

3. Once saved, you can either Export your audience for immediate use or visit the Audience Library to view all saved lists.

## Managing your Audience Library <a href="#managing-your-audience-library" id="managing-your-audience-library"></a>

Build and save unlimited audiences to your library to access and reuse. Multiple team members can access saved audiences, ensuring that everyone is working with the same set of filters and criteria. All of your team’s saved audiences can be found under the Audiences page in the left navigation menu.

Saving audiences allows you to avoid recreating filters and configurations each time you need to target a specific group of leads. Saved audiences can also serve as a historical record of past campaigns, making it easier to track changes in audience criteria over time.

1. To access a saved Audience, select the View button. The "Summary" Tab will show the filters applied to create that Audience.

   <figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2Fwac6t19t3WZ3fxU9bLVH%2FScreenshot%202025-06-30%20at%204.45.41%E2%80%AFPM.png?alt=media&amp;token=ffdc5a61-37d2-4ec1-93ef-7d95d24717c9" alt=""><figcaption><p>View Your Audiences</p></figcaption></figure>

2. You can edit the Lookback Window for an Audience if you'd like to expand or restrict how long a website visitor remains in the Audience.

   <figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FKgMXjQuY3PKWUz0ANCtm%2FScreenshot%202025-06-30%20at%204.41.30%E2%80%AFPM.png?alt=media&amp;token=90049f92-6a54-455e-80d4-b46361fe4f78" alt=""><figcaption><p>Edit the Lookback Window for Audiences to expand or restrict them. </p></figcaption></figure>

***

Congratulations! You have now successfully built and saved your first audience to the Audience Library. You can now explore, build, and manage your resolution data with greater precision and efficiency and start activating to your [connected destinations](/integrations/destinations).&#x20;

## Need Further Support or Have Additional Questions?

Check out our[ <mark style="color:blue;">FAQs</mark> ](/misc/frequently-asked-questions)to get some answers, start a chat on our [website](https://getuntitled.ai/), or get connected directly with our team [<mark style="color:blue;">here</mark>](https://getuntitled.ai/contact/).


# Creating an Ideal Customer Profile (ICP) with your Shopify store data and Untitled

Using machine learning, Untitled can find you the website visitors who look most like your best customers, and build you an audience of website who are most likely to become your high value customers.

## Prerequisites

1. You must already have your Shopify store linked to Untitled as a Source. [Click here for the guide to do that.](/integrations/sources/shopify)
2. Your Shopify store should have a minimum of 100 customers over its lifespan before training an ICP model. The more data, the better, but the model will fail to train if the store has below 100 customers.

## Video Walkthrough

{% embed url="<https://youtu.be/dsON9LPy8XY>" %}

Step-by-step text and screenshot walkthrough coming soon! Have extra questions or prefer to walk through this with someone on a video call? Email <support@getuntitled.ai> .&#x20;


# Using the Audience Lookback Window Strategically

Use the Lookback Window feature when building Untitled Audiences to segment your website visitors by the recency of their activity, and tailor your marketing accordingly.

### What is the Lookback Window?

* 1 day window: keeps the user in the audience for 24 hours. Great when you're moving data into a CRM or into a Google Sheet for a sales team to operate, where they only need the freshest leads.
* 7 day window: keeps the user in the audience for a week before removing them. Great for high-buyer-intent, urgency-based email retargeting
* 30 day window: keeps the user in the audience for a month before removing them. Great for digital retargeting on the Untitled DSP, or Meta (Facebook) and Google Ads.
* 60-90 day window: keeps the user in the audience for two or three months before removing them. Great for higher-priced items with a longer consideration phase (i.e. furniture, automotive, etc).
* 180-365 day window: keeps the user in the audience for 6 months to a year before removing them. Great for seasonal businesses looking to re-engage past browsers who may have missed the "peak" season.
* All-time window: users are never removed from the audience. Great for generating lookalike audiences in advertising channel like Meta (Facebook) and Google Ads, or pushing audiences into the Untitled DSP.

***

When you filter your Untitled Visitor Table into Audiences, you create segments of your website visitors that may need different marketing approaches. If you sell apparel, visitors only to the Men’s Collection probably don’t need to see advertising for your Women’s Collection.&#x20;

{% hint style="info" %}
Audiences created prior to July 1, 2025 have a 60 day lookback period by default. Audiences created after that will apply the filter when the Audience is created.
{% endhint %}

{% hint style="info" %}
Have existing audiences you’d like to duplicate with a different lookback window? Contact us at <support@getuntitled.ai> and we’ll help you do that!
{% endhint %}

With the “Lookback Window” feature, you can also segment your website visitors by the recency of their visit, plus demographic and website activity data.&#x20;

### Short-term Audiences for aggressive retargeting

Imagine you run an online apparel company with a widely-priced range of products, from luxury evening gowns to socks.

A visitor to the website visits a URL containing /collections/mens-socks, has a buyer intent of “Hot”, also visits the cart page, but is not an existing customer of yours, meaning that the cart was abandoned. This buyer intends to purchase a relatively low-priced product soon, and socks are a hard-to-differentiate product with lower absolute margin than other apparel items. &#x20;

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FBDuH50jnTmQPSjW2dlUs%2FTight%20Filter%20for%20Gitbook%206-30-25.png?alt=media&amp;token=4184cc4f-33fe-4696-98f8-6e252a30b1ae" alt=""><figcaption><p>Filters that may be used to create a hot-buyer-intent cart-abandoner visitor to your website</p></figcaption></figure>

Creating an Audience with a Lookback Window of 7 days puts this visitor (and other visitors with this behavior) into an Untitled Audience you might name “Men’s Socks 7-day-lookback” for 7 days before being automatically removed. During this 7 day period, you likely want to market to this visitor aggressively before they decide to purchase elsewhere.&#x20;

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2F8heG3ZkyVVSoe5qAeJ5Z%2FScreenshot%202025-06-30%20at%203.48.37%E2%80%AFPM.png?alt=media&amp;token=2d3006b8-601a-4af9-a35c-268b3f6d003a" alt=""><figcaption><p>Audience list including a 7-day-lookback</p></figcaption></figure>

You might sync this Audience to a Facebook/Meta Ad Campaign with a high bid, since you know the buyer is primed to purchase, and you’d like to turn them into a customer of yours, not your competitors.

After 7 days, if the aggressive marketing on Meta hasn’t captured this website visitor, it may not make sense to continue to spend marketing dollars chasing this sale, which likely went elsewhere, and the visitor doesn’t need more socks at this time.&#x20;

### Long-term Audiences for relationship building

Although you missed the sale this time, you still have an interested website visitor who you can remain in contact with on a lower-cost platform, like email.&#x20;

Your website visitors can be members of an unlimited number of Audiences; in addition to the Audience imagined above, this website visitor would also be eligible for an Audience of all visitors to any collection containing the word “mens”. An appropriate Lookback Window for this Audience is “all-time”.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FwlY8Qa3M55OEgE04rqfH%2FScreenshot%202025-06-30%20at%203.43.03%E2%80%AFPM%20copy.png?alt=media&amp;token=1a292465-e9c0-448c-b7c5-e3f27acf515d" alt=""><figcaption><p>Filters for an Audience that may be a longer-term relationship-building target for low-cost marketing efforts</p></figcaption></figure>

This broader audience might be synced with your Klaviyo email marketing account, from which you send a monthly newsletter announcing new releases and sales. This keeps you in front of the website visitor, building awareness without driving up cost or overwhelming the visitor.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FiUrnVvOsbMpwBDJAIRKE%2FScreenshot%202025-06-30%20at%203.47.33%E2%80%AFPM.png?alt=media&amp;token=d4ded1ef-3484-44c5-a541-76daa717ba25" alt=""><figcaption><p>Two Audiences with different Lookback Windows that can be used to aggressively retarget or passively nurture website visitors</p></figcaption></figure>

### Customizable Lookback Window = adaptable marketing strategy

Based on your typical sales cycle duration, your target cost-per-acquisition, and your outbound marketing channels, you can create any number of Audiences in Untitled, creating efficient advertising when and where your website visitors need to see it. Move website visitors from higher-urgency, higher-cost campaigns when they show Hot buyer intent, to lower-cost, relationship-building campaigns after the purchase window has passed.

**If you’re not sure which Lookback Window is best for a new Audience, consider creating one Audience that is a 90 day lookback and another that is identical, but an “All time” lookback.** Visitors within the last 90 days will likely still have some brand awareness, even if they haven’t heard from you in a few months, and an All time audience gives you a broad pool of visitors to target. Test your campaigns across these Audiences and hone in from there.

### Use cases for the Audience Lookback Window

* New-parent items, where shopping may begin 180 days before purchase, during pregnancy.
* Higher-end clothes like an evening gown or suit that may be considered for 60 days or more and which margin may support longer paid marketing campaigns.
* Seasonal lawn care items, which may merit an All-Time Audience, but one which only need to be aggressively marketed to for a short period each year.
* Cars or furniture, which may have a 90-day shopping period, but are infrequently purchased.
* Highly-gifted items like toys which may warrant a 365 day Audience, capturing those website visitors who considered purchasing last year, but did not convert.
* Limited time offers for recent visitors, with ad copy like “3 days left to save!” for an Audience with a 7 day lookback, encouraging conversions without diluting your brand as “always on sale”.

\
Further questions about the Lookback Window and how to use it? Contact us at <support@getuntitled.ai>


# Understanding the Idealized Customer Profile

For Untitled customers with a [Shopify store connected as a Source](/integrations/sources/shopify) and over 100 historical orders, Untitled has released a machine learning model that you can train on your own customer data to find website visitors who are most likely to become loyal, high-value customers.&#x20;

### What is an Ideal Customer Profile (ICP)?

Most business owners have an idea of what their “perfect” customer is like. Maybe it’s a very sophisticated buyer who understands what a difference the high quality materials of your items can make. Maybe it’s an entry level hobbyist who will benefit from your easy-to-follow instructions. When you run your business every day, recognizable patterns emerge about who “walks in the door” and is most likely to become a happy, long-term customer: that’s your ICP.

Obviously, you’d like to seek out people that fit your ICP, rather than wait for them to stumble across your store. That’s where Untitled can help.

### How is an Untitled ICP generated?

When you [sync your Shopify store as an Untitled Source](/integrations/sources/shopify), you’re pushing your customer data into the Untitled platform. When you click [“Create ICP” within Untitled](/audience-studio/creating-an-ideal-customer-profile-icp-with-your-shopify-store-data-and-untitled), the platform looks at that customer data and matches it against our robust identity graph with over 300 million people records, adding more information to your existing data. This additional information can include over 100 attributes that are not captured by Shopify.

Next, all of that data is fed into a machine learning algorithm that is basically trying to answer one question: Which combination of attributes is most common across the highest-value customers in this customer data?

The result of this model, which may take hours to train depending on how much customer data you sync, is a list of visitors to your website who match the customized filters the machine learning algorithm found. This list is automatically created as an Audience in Untitled.

### How should I use the Untitled ICP Audience?

The results of the ICP model might not be intuitive. In fact, that’s the point of using machine learning to sift through tens of thousands of data points: to find patterns that are invisible or overly complex for us to draw on our own. &#x20;

Treat your ICP Audience as VIPs. Lifetime value doesn’t mean they are necessarily ready to buy today, but that they are likely to love your brand overall.&#x20;

Email content that offers discounts is usually welcome from customers, alongside some brand story or overview of your product offerings, rather than a specific product being retargeted.

You can also use your ICP Audience as a custom audience in Facebook/Meta or Google Ads. By uploading this list directly to those platforms, you can target only those people in your ICP and have confidence to possibly raise the bid and frequency of your messaging above what may be a baseline for a ‘cold’ audience.

### How will my ICP change over time?

Each day, the ICP model looks at your new website visitors and includes the visitors who fit the profile into your ICP Audience. The ICP Audience will always contain the top 15% of lifetime value customers, so roughly each time a new member joins the Audience, a member will leave.&#x20;

Each month, the ICP model looks at your new Shopify orders and uses that new data as additional training. Depending on the attributes of your new customers, the ICP may adjust its selection criteria for the Audience.

### Summary

Untitled is bringing custom machine learning to your Shopify store with the ICP model. Use your data, plus our platform, to bring new insights to light, creating a whole new Audience for you to target.

Once you have over 100 Shopify orders, create an ICP Audience within Untitled. Remember that ICP Audience members may be at different points in their buyer journey, so try to cultivate them into a long term fan of your brand, staying connected without driving immediate purchase urgency. <br>

Questions about how to create an ICP model within Untitled, link up your Shopify store to Untitled, or something else? Email us at <support@getuntitled.ai>. <br>


# Understanding Buyer Intent Score on the Untitled Platform

Untitled’s Buyer Intent model helps you make sense of your website visitors by ranking them based on website activity and engagement. This ranking is expressed through a simple label—Hot, Warm, Neutral, Cool, or Cold—that makes it easier to segment and prioritize visitors for retargeting, lead follow-up, and other marketing activities.

Read on to learn how the Buyer Intent model works and how you can use it effectively.

### What is the Buyer Intent Score?

Buyer Intent is an attribute that Untitled applies to individual website visitors based on their site activity behavior. It is designed to help you quickly identify which visitors are most likely to convert into paying customers, based on comparative engagement metrics.

Each visitor receives one of five labels:

* Hot
* Warm
* Neutral
* Cool
* Cold

Or “New” if the site visitor has not yet been ranked by the Buyer Intent Model.

Each “temperature” label will represent roughly 20% of the visitors for each Untitled ID Tag.

If you have multiple Tags in Untitled, each has its own set of Buyer Intent scores.

### How Is Buyer Intent Calculated?

The algorithm looks at website visitor activity relative to other visitors to your site, not absolute values. That means a visitor doesn't have to spend five minutes on the site or view ten pages to be considered “Hot”, they just have to rank higher within the model than about 80% of the other visitors to your website.

Some of the metrics we use to generate a Buyer Intent score are:

* Total visitor session count
* Total time spent across sessions
* Number of unique page URLs viewed
* Frequency of visiting buying-related page types
  * Pages that contain product or pricing information are ranked higher than pages like /careers or /about-us

### How often is Buyer Intent updated?

All of these signals contribute to a Buyer Intent score that is updated once every 24 hours. It’s applied to all of the website visitors in your Untitled account. If, for example, a buyer was ranked “Warm” yesterday, but lots of “Hot” customers have since visited your site, that first visitor may be downgraded to “Neutral” since scoring is relative.

### How to Use Buyer Intent in Your Workflows

The Buyer Intent attribute can be used for audience segmentation, which then flows into your existing marketing channels and campaigns Some common examples include:

* Ad Retargeting: Create an audience of “Hot” and “Warm” visitors who haven’t converted yet, and run a retargeting campaign focused on urgency or offer-based messaging.<br>
* Email Follow-Ups: Use “Hot” visitors to trigger personalized outreach or nurture sequences.<br>
* Sales Prioritization: Focus your sales team on the visitors with the highest intent signals.

Untitled can help automate these “downstream actions” by enabling you to [create Audiences](/audience-studio) and [sync them to Destinations](/integrations/destinations) like Klaviyo or Meta Ads.

### Summary

Buyer Intent helps you turn anonymous website visitors into prioritized marketing and sales segments. It updates daily, works on a “per Tag” basis, and is generated based on relative onsite behavior. It’s a powerful way to quickly focus your efforts on the visitors most likely to take action.

If you have questions about how to use Buyer Intent in your segmentation or campaigns, please contact us at <support@getuntitled.ai>.

<br>


# Page Path Data

Page path data expands the usability and accuracy of Untitled ID Tag results, greatly benefiting data-led sales and marketing teams.

Surfacing this behavior data enables a true data-driven approach to personalizing user experience, optimizing content, and enhancing marketing efforts. Untitled users can activate on this information to better target users based the specific pages or products viewed - shedding light on interests and preferences.

Page path data on hidden website visitors is a powerful tool for businesses to understand, engage, and convert previously elusive website visitors. With each resolution, you can view the Webpage Visited and the Referral Site, as well as filter audiences based on the page path data. This feature enables a true data-driven approach to personalizing user experience, optimizing content, and enhancing marketing efforts.

***

Page path data can be viewed by navigating to the Visitor Table and looking at the profile section on the far right. Hover over the "Page data" button to view the Entry and Exit URL as well as the source the visitor came from known as the “Referrer URL”.

![](https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2F7OiyjdGaavPB1wFEljlI%2Fpage%20path.png?alt=media\&token=d8871864-9be9-4fcb-8698-2e5914a9aaad)

Below are the current options for utilizing page path data in audience creation:

* Type:
  * Visited URL: select to filter based on all the pages a visitor hit when on your website
  * Referrer URL: select to filter based on the site or URL the visitor hit prior to landing on your website
* Method:
  * Contains: select to filter results based on any unique section of a URL
  * Does not contain: select to exclude visitors who landed on a specific page, such as the careers page
  * Equals: select to filter visitors based on an exact URL
* URL Input
  * To filter visitors by the selected page path conditions, copy and paste a unique section of that page URL in the input box, e.g. “/products/shoes”.

These options can be expanded and combined by clicking Add to apply additional URL conditions for segmented audience creation.&#x20;

## Need Further Support or Have Additional Questions?

Check out our[ <mark style="color:blue;">FAQs</mark> ](/misc/frequently-asked-questions)to get some answers, start a chat on our [website](https://getuntitled.ai/), or get connected directly with our team [<mark style="color:blue;">here</mark>](https://getuntitled.ai/contact/).


# Activating Audiences


# Untitled Demand Side Platform (DSP)

Stream on Hulu, Peacock, Max, Prime Video, Google Adx, and Disney+. Serve digital ads on every major display exchange. Target Audiences you’ve already built in the Audience Studio.

## Overview

The Untitled Demand-Side Platform (DSP) allows advertisers to activate their audiences directly across premium streaming and display environments using programmatic advertising.

A **Demand-Side Platform (DSP)** is software that enables advertisers to purchase and manage digital advertising inventory across multiple publishers and exchanges from a single interface using automated real-time bidding.

Within the Untitled platform, marketers can:

* Launch campaigns across Connected TV (CTV) and Over The Top (OTT) streaming platforms.
  * OTT generally refers to any video streamed over the internet. CTV is a *subset* of OTT, defined by the device the video is seen on: a TV as opposed to a phone, tablet, or laptop. OTT and CTV ads are videos.
* Launch display ad campaigns across thousands of websites and apps.
  * Display ads are sometimes also called 'banner ads' and are typically GIFs or still images displayed alongside content.
* Launch pre-roll and mid-roll video ads within website content.
  * Pre-roll ads play before an internet video, like a YouTube video, a news segment, sports report, etc. on a website or app. Mid-roll ads play in the middle of longer video content. These types of ads are sometimes skippable.
* Activate first-party and CRM audiences that you already own
* Retarget identified website visitors via the Untitled ID Tag
* Manage Untitled DSP campaigns, budgets and audiences from a single environment

Instead of exporting audiences into external ad platforms, Untitled allows you to **build audiences and activate them directly within the same system**.

***

## How the Untitled DSP Works

The Untitled DSP connects advertisers to programmatic ad exchanges where publishers make advertising inventory available.

When a campaign is active:

1. A user visits a website or streaming platform with available ad inventory.
2. The publisher sends a bid request to advertising exchanges.
3. The Untitled DSP evaluates the request against your targeting criteria.
4. If the user matches your audience, the DSP submits a bid for the impression.
5. If the bid wins the auction, the ad is served.

This entire process happens in milliseconds through real-time bidding.

***

## Activate Audiences You Already Built

The Untitled DSP is designed to work directly with the audience data generated within the Untitled platform.

This includes audiences built from:

* Audience segments built within the Untitled Audience Studio
* Website visitor identification via the **Untitled ID Tag**
* CRM uploads
* First-party CSV uploads of your existing client lists
* Intent Topic Audiences and Interest-Based targeting

Because the DSP is integrated with the broader Untitled platform, advertisers can **identify, segment, and activate audiences without exporting data between systems.**

***

## Advertising Channels Available

The Untitled DSP provides access to programmatic inventory across several digital environments.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FZSpfW8QT9IfAZp2RimYw%2Fad%20channels.png?alt=media&amp;token=afc3ea9c-c89c-4d00-92c2-c085e99464ea" alt=""><figcaption></figcaption></figure>

### Connected TV (CTV) & OTT

Run video ads across streaming platforms and connected TV environments.

Typical inventory includes placements across services such as:

* Hulu
* Peacock
* Max
* Prime Video
* Smart TV applications and streaming devices

These placements allow brands to reach audiences watching streaming content on television screens.

***

### Streaming Audio

Audio campaigns allow advertisers to reach listeners across music streaming platforms, podcasts, and digital radio environments.

Audio advertising can be used for both brand awareness and retargeting campaigns.

***

### Display Advertising

Display campaigns allow advertisers to reach audiences across the open web through major programmatic exchanges.

These placements include:

* Banner ads across publisher websites
* Native placements across content platforms
* Retargeting ads served to known audiences

***

## Why Advertisers Use the Untitled DSP

The Untitled DSP was designed to simplify programmatic advertising while reducing the cost and complexity typically associated with enterprise media buying platforms.

Key advantages include:

**Activate first-party audiences directly**\
Launch campaigns using audiences already built in Untitled.

**Access premium streaming inventory**\
Serve ads across major streaming platforms and the open web.

**Lower CPMs through reduced middlemen and wholesale rates**\
Untitled connects advertisers closer to the bid stream, helping reduce unnecessary platform markups.

**Manage campaigns in one place**\
Audience creation, targeting, and media activation occur within a single environment.

***

## Related Articles

* [Creative Specifications Guide for DSP Campaigns (CTV & Video, Audio and Display Ad) ](/untitled-demand-side-platform-dsp/creative-specifications-for-dsp-campaigns)
* [Untitled DSP FAQs](/untitled-demand-side-platform-dsp/untitled-dsp-faq)


# Creating a Campaign on the Untitled DSP

Advertise with banner ads, connected TV ads, pre-roll and mid-roll videos, and reach your potential customers with total campaign control using the Demand Side Platform from Untitled.

## Walkthrough Video

{% embed url="<https://youtu.be/HJK5y_vd8Fw>" %}

## Text Walkthrough

#### 1. Click "Campaigns" from the homepage of your Untitled account. Don't see it? Contact <support@getuntitled.ai> or your customer success manager to have it enabled.

![](https://worker.arcade.software/image-transform?image=https%3A%2F%2Fcdn.arcade.software%2Fextension-uploads%2FgigIByokm7vmyOxxThWt%2Fimage%2F7cf2c93b-9b10-4dbe-aa30-6b0b92003a48.png\&fit=contain\&hotspot=359.7635582010582%3B77.98032407407408%3B%230f172a)

#### 2. Create a new campaign.

![](https://worker.arcade.software/image-transform?image=https%3A%2F%2Fcdn.arcade.software%2Fextension-uploads%2FgigIByokm7vmyOxxThWt%2Fimage%2Fd0f332d0-bd1c-4e7b-bb5d-8a4014442be6.png\&fit=contain\&hotspot=733.3581349206348%3B917.2949735449736%3B%230f172a)

#### 3. Name the campaign and set a lifetime budget. Consider a timeframe that will give you significant 'signal' about whether this advertising channel is producing results. 1 month is a good minimum.&#x20;

A Campaign is basically a folder that holds Line Items. Line Items include Creative Assets and Bids.

![](https://worker.arcade.software/image-transform?image=https%3A%2F%2Fcdn.arcade.software%2Fextension-uploads%2FgigIByokm7vmyOxxThWt%2Fimage%2F5087a87e-5d0e-461b-94fd-35a80cf65fe6.png\&fit=contain)

#### 4. The daily budget is typically the Total Campaign Budget divided by the number of days in the campaign.

![](https://worker.arcade.software/image-transform?image=https%3A%2F%2Fcdn.arcade.software%2Fextension-uploads%2FgigIByokm7vmyOxxThWt%2Fimage%2F1e8e5f07-ae91-4a32-be69-49c9d9c026b1.png\&fit=contain\&hotspot=739.9140211640212%3B1037.070105820106%3B%230f172a)

#### 5. Add a Line Item to your campaign. This is where you will select the format of advertisement and add your creative assets.

![](https://worker.arcade.software/image-transform?image=https%3A%2F%2Fcdn.arcade.software%2Fextension-uploads%2FgigIByokm7vmyOxxThWt%2Fimage%2F9f693347-72f4-4b38-8034-42a3e8f9a77a.png\&fit=contain\&hotspot=247.5818452380952%3B1468.2953042328043%3B%230f172a)

#### 6. Name the line item, set a duration, and select the ad format.

Unless you want your ads to run in sequence, i.e. "Week 1 of Truck Month is now!", "Week 2 is almost over!", your line item duration will likely have the same duration as your campaign.

![](https://worker.arcade.software/image-transform?image=https%3A%2F%2Fcdn.arcade.software%2Fextension-uploads%2FgigIByokm7vmyOxxThWt%2Fimage%2F6d63ac12-4028-4787-87e6-0234b4ea0133.png\&fit=contain\&hotspot=630.0181878306878%3B1516.662533068783%3B%230f172a)

#### 7. CPM (cost-per-thousand-views) is a typical way to bid on DSP. You can update this bid as your campaign runs. $5 CPM for banner ads and $15 for video ads is a good baseline.&#x20;

"Lifetime" and "Even" pacing are the default pacing behaviors and result in your budget being spent equally across the line item's duration.

![](https://worker.arcade.software/image-transform?image=https%3A%2F%2Fcdn.arcade.software%2Fextension-uploads%2FgigIByokm7vmyOxxThWt%2Fimage%2F89f34c8a-7902-4da4-9f8e-82f5b253e688.png\&fit=contain\&hotspot=373.7103174603174%3B1094.469246031746%3B%230f172a)

#### 8. The Lifetime Budget of all of your line items should equal the media spend for your entire campaign. If you just have one line item, enter your campaign lifetime budget here.

The daily budget is typically the lifetime budget divided by the duration of the line item.

![](https://worker.arcade.software/image-transform?image=https%3A%2F%2Fcdn.arcade.software%2Fextension-uploads%2FgigIByokm7vmyOxxThWt%2Fimage%2F202c7986-2c0c-47b3-8bdc-8d7da7bdc1ef.png\&fit=contain\&hotspot=851.9469246031745%3B664.0294312169312%3B%230f172a)

#### 9. Click "Next" to add an audience Segment to the campaign.

![](https://worker.arcade.software/image-transform?image=https%3A%2F%2Fcdn.arcade.software%2Fextension-uploads%2FgigIByokm7vmyOxxThWt%2Fimage%2F357f7709-c94a-4e64-94e5-76627a9d24fd.png\&fit=contain\&hotspot=859.0484457671956%3B1529.799107142857%3B%230f172a)

#### 10. Segments can include Untitled ID Tag Audiences, Intent Audiences, or 1st Party Audiences. This is who your ad will show to.&#x20;

Empty list? Create a new segment in the next step. Nnot sure what to choose? Email <support@getuntitled.ai> or contact your customer success manager.

![](https://worker.arcade.software/image-transform?image=https%3A%2F%2Fimage.mux.com%2FKgTjxBmQBA7D2mmBkeAeLgDSnd37tvxnqcTGOblFwMY%2Fthumbnail.webp%3Ftime%3D67.760352\&fit=contain)

#### 11. Optional: Create a new segment from your existing Untitled Audiences.

![](https://worker.arcade.software/image-transform?image=https%3A%2F%2Fcdn.arcade.software%2Fextension-uploads%2FgigIByokm7vmyOxxThWt%2Fimage%2F5e65ff7a-48c6-4b90-a807-1739e9d6d030.png\&fit=contain\&hotspot=313.92609126984127%3B1518.7458664021165%3B%230f172a)

#### 12. Optional: Name the segment and select an Audience from the drop-down menu. Then click "Create Segment".

Nothing here, or need help creating one? Contact your customer success manager.

![](https://worker.arcade.software/image-transform?image=https%3A%2F%2Fimage.mux.com%2FKgTjxBmQBA7D2mmBkeAeLgDSnd37tvxnqcTGOblFwMY%2Fthumbnail.webp%3Ftime%3D77.095535\&fit=contain\&hotspot=455.8048780487805%3B800%3B%230f172a)

#### 13. Optional: After creating a segment, it will appear in the segments dropdown menu.

![](https://worker.arcade.software/image-transform?image=https%3A%2F%2Fcdn.arcade.software%2Fextension-uploads%2FgigIByokm7vmyOxxThWt%2Fimage%2F38550de1-c4a4-4a22-943c-6505217be41a.png\&fit=contain\&hotspot=499.8677248677248%3B571.5897817460317%3B%230f172a)

#### 14. After selecting your relevant audience segment(s), click "Next" to add the creative assets to the line item.

![](https://worker.arcade.software/image-transform?image=https%3A%2F%2Fcdn.arcade.software%2Fextension-uploads%2FgigIByokm7vmyOxxThWt%2Fimage%2Fe46b63d1-71fb-49d4-be9e-f4063b40a08e.png\&fit=contain\&hotspot=478.0753968253968%3B1540.0545634920634%3B%230f172a)

#### 15. Add creative either by uploading or by selecting from your Asset Library of assets already uploaded.

The creative specifications for ad formats on the DSP are available here: [Creative Specifications for DSP Campaigns](https://app.gitbook.com/o/kPHvi0uhfnjxqtMDxaKW/s/GoQsfzqc7OhGHTIseEas/~/edit/~/changes/393/untitled-demand-side-platform-dsp/creative-specifications-for-dsp-campaigns).

![](https://worker.arcade.software/image-transform?image=https%3A%2F%2Fcdn.arcade.software%2Fextension-uploads%2FgigIByokm7vmyOxxThWt%2Fimage%2Fd1b823a6-4df7-4764-9331-5f51af50e9c0.png\&fit=contain\&hotspot=457.80836640211635%3B1176.9551917989418%3B%230f172a)

#### 16. Select your creative(s) and click "Next".

![](https://worker.arcade.software/image-transform?image=https%3A%2F%2Fcdn.arcade.software%2Fextension-uploads%2FgigIByokm7vmyOxxThWt%2Fimage%2F297624ca-4c1d-4bbe-aa9a-902f97e27f2a.png\&fit=contain\&hotspot=826.8435846560845%3B1191.0218253968255%3B%230f172a)

#### 17. Name the creative and add your clickthrough URL - the landing page on your website that ad clickers will see - and complete the line item creation.

![](https://worker.arcade.software/image-transform?image=https%3A%2F%2Fcdn.arcade.software%2Fextension-uploads%2FgigIByokm7vmyOxxThWt%2Fimage%2F23af9e23-c329-458e-9f90-e12fe71121bc.png\&fit=contain\&hotspot=822.0320767195767%3B1156.3864087301588%3B%230f172a)

#### 18. Repeat the line item creation process until you have all of your line items and creative assets loaded.

![](https://worker.arcade.software/image-transform?image=https%3A%2F%2Fcdn.arcade.software%2Fextension-uploads%2FgigIByokm7vmyOxxThWt%2Fimage%2F3e77b1e8-7cea-45f3-a0b8-6c8d410fec08.png\&fit=contain)

#### 19. Click 'Finalize campaign and pay' only when your line items are all placed.

![](https://worker.arcade.software/image-transform?image=https%3A%2F%2Fcdn.arcade.software%2Fextension-uploads%2F6c5soZtOCEiglXe8giQF%2Fimage%2F522a60c0-ef1c-415e-bf72-3d3f8ddcaf5a.png\&fit=contain)

#### 20. Confirm the details of your campaign. Ensure the start date is in the future.

![](https://worker.arcade.software/image-transform?image=https%3A%2F%2Fcdn.arcade.software%2Fextension-uploads%2F6c5soZtOCEiglXe8giQF%2Fimage%2F16c07495-5991-4132-8537-293130bdecc3.png\&fit=contain\&hotspot=713.3887235449735%3B1067.8819444444446%3B%230f172a)

#### 21. You will be redirected to a Stripe payment page. Available payment methods are linking your bank account or completing a one-time transfer.&#x20;

Running a campaign with less than $1000 total campaign budget, and want to pay by card? Contact your customer success manager.

![](https://worker.arcade.software/image-transform?image=https%3A%2F%2Fcdn.arcade.software%2Fextension-uploads%2F3d18e90a-8076-4e92-bc2c-2ca6c426dfa8.png\&fit=contain\&hotspot=124.05340608465607%3B923.4623015873016%3B%230f172a)

#### 22. After the payment has been initiated and shows as 'processing', your campaign will go live on its start date!

![](https://worker.arcade.software/image-transform?image=https%3A%2F%2Fcdn.arcade.software%2Fextension-uploads%2F76a2918c-4fc6-48dd-a595-787c00a60690.png\&fit=contain\&hotspot=515.7159391534391%3B1018.3945105820106%3B%230f172a)

If you have questions, feature requests, or would just like to work directly with Untitled on creating your DSP campaign, contact your customer success manager or <support@getuntitled.ai>.&#x20;


# Creative Specifications for DSP Campaigns

Creative Specifications for CTV & OTT Video, Audio and Display Ad formats supported on the Untitled DSP

## What This Article Covers

This article outlines the creative requirements and supported specifications for advertising campaigns launched through the Untitled Demand-Side Platform (DSP).

The Untitled DSP supports three primary advertising formats:

* Connected TV (CTV) and OTT Video
* Streaming Audio
* Display Advertising

Each format has specific file requirements to ensure compatibility across programmatic exchanges and publisher inventory.

***

## CTV & OTT Video Specifications

Connected TV campaigns run across streaming platforms and smart TV environments. Video creatives must meet the following requirements to ensure proper delivery across supported inventory.

#### Supported Video Lengths

| Length     | Notes                                  |
| ---------- | -------------------------------------- |
| 15 seconds | Standard short-form CTV ad             |
| 30 seconds | Most common CTV format                 |
| 60 seconds | Supported by some streaming publishers |

Most CTV placements are **non-skippable**.

***

#### Video File Requirements

| Specification     | Requirement                 |
| ----------------- | --------------------------- |
| File Format       | .MP4 (preferred)            |
| Video Codec       | H.264 / AVC                 |
| Audio Codec       | AAC                         |
| Resolution        | 1920 × 1080 minimum         |
| Aspect Ratio      | 16:9                        |
| Frame Rate        | 23.98, 25, 29.97, or 30 fps |
| Scan Type         | Progressive                 |
| Maximum File Size | 500 MB                      |

4K video files are accepted if available, though most inventory serves **Full HD video**.

***

#### Recommended Best Practices

To ensure optimal playback across streaming environments:

* Introduce branding early in the ad
* Avoid excessive compression
* Maintain clear audio levels for television playback
* Export using high-quality encoding settings

***

## Audio Advertising Specifications

Audio campaigns allow advertisers to reach audiences across music streaming platforms, podcasts, and digital radio environments.

***

#### Supported Audio Lengths

| Ad Type                | Supported Length      |
| ---------------------- | --------------------- |
| Standard Streaming Ads | 15 or 30 seconds      |
| Podcast Placements     | 30, 60, or 90 seconds |

Audio files must match the specified duration exactly.

***

#### Audio File Requirements

| Specification     | Requirement              |
| ----------------- | ------------------------ |
| File Format       | .MP3 (preferred) or .WAV |
| Bitrate           | 192 kbps or higher       |
| Sample Rate       | 44.1 kHz                 |
| Channels          | Stereo                   |
| Maximum File Size | 5 MB                     |

***

#### Audio Loudness Standard

Audio creatives should be normalized between:

**-16 LUFS and -20 LUFS**

This ensures consistent playback levels across streaming platforms.

***

#### Companion Banner (Optional)

Some audio placements support **companion display banners**.

If used, advertisers must provide:

* Companion banner creative
* Destination URL

***

## Display Advertising Specifications

Display advertising campaigns run across publisher websites and programmatic exchanges using standard banner formats.

### Supported File Formats

Display creatives may be uploaded in the following formats:

* JPG
* PNG
* GIF

Both **static and animated GIF creatives** are supported.

***

### File Size Recommendations

Display creatives should be **150 KB or smaller whenever possible** to ensure fast rendering across publisher environments and maximize delivery opportunities.

***

## Priority Banner Ad Size Specifications

When preparing display creatives, the following banner sizes should be prioritized. These formats provide the **broadest coverage across available inventory and devices.**

#### Banner Size Specifications & Placement Notes

| Size    | Name                | Notes                                                             |
| ------- | ------------------- | ----------------------------------------------------------------- |
| 300×250 | Medium Rectangle    | \***Works across mobile and desktop**; extremely common placement |
| 320×50  | Mobile Leaderboard  | Ideal for mobile phone placements                                 |
| 300×50  | Mobile Banner       | Lightweight mobile variant                                        |
| 320×100 | Large Mobile Banner | Offers better visibility on phones                                |
| 160×600 | Wide Skyscraper     | Vertical sidebar placement                                        |
| 300x600 | Half Page           | High-impact branding unit                                         |
| 728X90  | Leaderboard         | Top or bottom of web pages                                        |
| 970×250 | Billboard           | Premium large-format placement                                    |
| 970×90  | Large Leaderboard   | High-impact top-of-page placement                                 |

{% hint style="info" %}
**Note:** The **300×250 Medium Rectangle** is the most widely supported display format across exchanges and is required for your campaign to serve out successfully.&#x20;
{% endhint %}

#### Visual Display Ad Specs - Size Reference

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FiQhssHnXveYmnkhCkoQC%2Fvisual%20specs.png?alt=media&amp;token=410bd9f1-7258-4cfe-b932-739201cc6df7" alt=""><figcaption></figcaption></figure>

***

### Animated GIF Requirements

If animated GIF creatives are used:

* Maximum animation duration: **30 seconds**
* Animation must **stop after 30 seconds**
* Frame rate must be **below 5 frames per second**

{% hint style="info" %}
Animated GIFs should have the same banner size specifications listed above.
{% endhint %}

These requirements ensure compatibility across programmatic exchanges.

***

### Click-Through URL

All display creatives must include a **destination URL** that users will be directed to when clicking the ad.

This should be the landing page associated with the campaign.

#### UTM Codes (Encouraged)

UTM Codes can be generated and added to your click-through URL for visibility in your Untitled visitor table, Google Analytics views or preffered attribution platform. You can generate a UTM code using Google’s [Campaign URL Builder](https://ga-dev-tools.google/campaign-url-builder/).

***

### HTML5 Display Ads

HTML5 creatives are supported within the Untitled DSP.

Because HTML5 creatives often require additional configuration, advertisers should contact their **Customer Success Manager** for submission instructions and setup guidance.


# Understanding the Halo Effect Between CTV, Meta, and Search Campaigns

## Overview

When multiple marketing channels run the same audience simultaneously, it is common for one channel to influence the performance of another. This is known as the **halo effect**.

A common example is the relationship between **Connected TV (CTV), Meta (Facebook/Instagram), and Google Search** campaigns. In this model:

* **CTV drives awareness**
* **Meta captures engagement and consideration**
* **Search captures high-intent demand**

Even when Meta or Google receives attribution for the conversion, earlier **CTV exposure may have influenced the user’s decision to take action**.

Understanding this dynamic helps marketers interpret results more accurately and measure the full impact of their campaigns.

***

## What Is the Halo Effect?

The **halo effect** occurs when exposure in one advertising channel improves the performance of another.

For example:

1. A viewer sees a **CTV ad on Hulu, Peacock, or Max**.
2. Later, they encounter a **Meta ad** in their social feed.
3. At some point afterward, they **search for the brand or event on Google**.
4. They click a search result and convert.

In many attribution models, the **conversion will be credited to Meta or Google Search**, even though the initial brand awareness was created through CTV.

***

## Why CTV, Meta, and Search Work Well Together

Each channel plays a different role within the marketing funnel.

| *Funnel Stage* | *Channel Role*                                                     |
| -------------- | ------------------------------------------------------------------ |
| Awareness      | **CTV** introduces the brand through high-impact video placements  |
| Consideration  | **Meta** reinforces messaging through social feeds and retargeting |
| Conversion     | **Search** captures demand when users actively look for the brand  |

This creates a natural sequence:

1. **CTV introduces the message**
2. **Meta reinforces it**
3. **Search captures intent**

Because the user journey often spans multiple devices and moments, these channels work best **when deployed together rather than in isolation**.

***

### Why Conversions Often Appear in Meta or Search

Even when CTV initiates the journey, conversions frequently appear in Meta or Search reporting because:

* Social platforms are **highly optimized for click-through engagement**
* Search captures **existing demand when users actively look for the brand**
* Users can **immediately visit a website or purchase from their device**

Meanwhile, CTV exposure typically occurs on a **television screen**, where the user cannot easily click through at that moment.

This means CTV often functions as the **initial catalyst for demand**, while other channels capture the measurable action.

***

## Signals That a Halo Effect Is Occurring

Because attribution models rarely capture cross-channel influence perfectly, marketers should look for **supporting signals across multiple data sources**.

Below are several indicators that CTV may be contributing to broader marketing performance.

***

### 1. Increase in New Users in Google Analytics

If CTV campaigns are driving awareness, you may see an increase in **new top-of-funnel traffic**.

Monitor:

* **New Users in Google Analytics**
* **Direct traffic growth**
* **Branded search queries**

A noticeable lift in new visitors during a CTV flight can indicate that viewers are later visiting the site via search or direct navigation.

***

### 2. Lift in Google Search Performance

CTV can also influence **search behavior**.

Common signals include:

* Increased **branded search volume**
* Higher **click-through rates on branded keywords**
* Increased **organic search traffic**

In many cases, users exposed to a streaming ad will **search for the brand or event later**, causing search campaigns to perform more efficiently.

***

### 3. Stronger Performance in Meta Campaigns

When users have already been exposed to a brand through CTV, social ads often see improved performance.

Possible indicators include:

* Higher **click-through rates**
* Improved **conversion rates**
* Lower **cost per acquisition**

This occurs because the audience already has **familiarity with the brand message**, making them more likely to engage when they see the ad again in social feeds.

***

### 4. Increase in Identity Resolution Through the Untitled Tag

Another way to evaluate the halo effect is by observing **identity resolution growth inside the Untitled platform**.

When CTV campaigns generate awareness, more users often visit the site shortly afterward. As they do, the **Untitled Tag may resolve additional user identities**, increasing the number of matched profiles.

Watch for:

* **Increased ID resolutions**
* Growth in **recognized visitors**
* Expansion of **addressable audience profiles**

An increase in resolved identities during a CTV campaign can indicate that **previously unknown visitors are now interacting with the site after seeing the ad**.

***

### Practical Example

A typical omnichannel journey might look like this:

1. A viewer sees a **CTV ad promoting an upcoming event**.
2. Later, they encounter a **Meta ad for the same event**.
3. The brand becomes familiar and credible.
4. The user eventually **searches the event name on Google** and purchases tickets.

In most attribution models, the conversion is credited to **Google Search**, but the **initial demand may have been created by CTV exposure**.

***

## Key Takeaway

CTV campaigns often influence marketing performance across multiple channels even when attribution models do not reflect it directly.

When evaluating campaign results, consider the broader ecosystem:

* **CTV builds awareness**
* **Meta reinforces messaging and engagement**
* **Search captures demand**
* **Identity resolution increases as new users visit the site**

When these channels run together, they can produce a measurable **halo effect that improves overall campaign efficiency and conversion performance**.


# Untitled DSP Ad Exchange and Inventory Access

The Untitled DSP provides access to a broad range of programmatic advertising inventory across web, mobile app, native, online video, connected TV (CTV), and digital audio environments.

Inventory is made available through the ad exchanges and supply-side platforms (SSPs) listed below. Availability varies by exchange and inventory type, as shown in the table.

### Supported Inventory Types

* **Web:** Display and video inventory across desktop and mobile websites.
* **Mobile App:** In-app display and video inventory.
* **Native:** Native placements designed to match the look and feel of the surrounding publisher experience. Native availability is identified separately for desktop and mobile web.
* **Video:** Digital video inventory across supported web, mobile app, and streaming environments.
* **CTV:** Connected TV inventory delivered through internet-connected televisions and streaming devices.
* **Audio:** Digital audio inventory, including supported streaming audio placements.

### Ad Exchange and Inventory Availability

In the table below, **Yes** indicates that the exchange supports the corresponding inventory type through the Untitled DSP. Blank cells indicate that the inventory type is not listed as available through that exchange.

### Important Availability Notes

* Exchange access does not guarantee that inventory will be available for every campaign. Supply can vary based on geography, audience, device, creative format, bid strategy, publisher eligibility, and campaign settings.
* CTV and audio inventory require compatible creative assets and campaign configurations.
* Exchanges marked **Deactivated** are included for reference because they appear in the source inventory list, but they should not be treated as currently available buying channels. They may reactivate at any time.&#x20;
* Exchange names, integrations, and supported formats may change over time as supply relationships and platform capabilities evolve.

For help confirming inventory availability for a specific campaign, contact the Untitled team with the campaign geography, audience, channel, and creative format.

<table data-header-hidden="false" data-header-sticky><thead><tr><th>Ad Exchange or SSP</th><th>Status</th><th align="center">Web (Desktop)</th><th align="center">Web (Mobile)</th><th align="center">Mobile App</th><th align="center">Native (Desktop)</th><th align="center">Native (Mobile)</th><th align="center">Video</th><th align="center">CTV</th><th align="center">Audio</th></tr></thead><tbody><tr><td>33Across</td><td>Available</td><td align="center">Yes</td><td align="center">Yes</td><td align="center"></td><td align="center"></td><td align="center"></td><td align="center">Yes</td><td align="center"></td><td align="center"></td></tr><tr><td>AdPrime</td><td>Available</td><td align="center">Yes</td><td align="center">Yes</td><td align="center">Yes</td><td align="center"></td><td align="center"></td><td align="center">Yes</td><td align="center"></td><td align="center"></td></tr><tr><td>Adform</td><td>Available</td><td align="center">Yes</td><td align="center">Yes</td><td align="center">Yes</td><td align="center"></td><td align="center"></td><td align="center">Yes</td><td align="center"></td><td align="center"></td></tr><tr><td>Adswizz</td><td>Available</td><td align="center">Yes</td><td align="center">Yes</td><td align="center">Yes</td><td align="center"></td><td align="center"></td><td align="center"></td><td align="center"></td><td align="center"></td></tr><tr><td>Amazon</td><td>Available</td><td align="center">Yes</td><td align="center">Yes</td><td align="center">Yes</td><td align="center"></td><td align="center"></td><td align="center">Yes</td><td align="center"></td><td align="center"></td></tr><tr><td>Axonix</td><td>Available</td><td align="center">Yes</td><td align="center">Yes</td><td align="center">Yes</td><td align="center"></td><td align="center"></td><td align="center">Yes</td><td align="center"></td><td align="center"></td></tr><tr><td>Beachfront</td><td>Available</td><td align="center">Yes</td><td align="center">Yes</td><td align="center">Yes</td><td align="center"></td><td align="center"></td><td align="center">Yes</td><td align="center"></td><td align="center"></td></tr><tr><td>Connatix</td><td>Available</td><td align="center">Yes</td><td align="center">Yes</td><td align="center">Yes</td><td align="center"></td><td align="center"></td><td align="center">Yes</td><td align="center"></td><td align="center"></td></tr><tr><td>Criteo</td><td>Deactivated</td><td align="center">Yes</td><td align="center">Yes</td><td align="center">Yes</td><td align="center"></td><td align="center"></td><td align="center">Yes</td><td align="center"></td><td align="center"></td></tr><tr><td>Criteo Commerce Grid</td><td>Available</td><td align="center">Yes</td><td align="center">Yes</td><td align="center">Yes</td><td align="center"></td><td align="center"></td><td align="center">Yes</td><td align="center"></td><td align="center"></td></tr><tr><td>Digital Turbine (Inneractive)</td><td>Available</td><td align="center"></td><td align="center"></td><td align="center">Yes</td><td align="center"></td><td align="center"></td><td align="center">Yes</td><td align="center"></td><td align="center"></td></tr><tr><td>Equativ (Smart AdServer)</td><td>Available</td><td align="center">Yes</td><td align="center">Yes</td><td align="center">Yes</td><td align="center"></td><td align="center"></td><td align="center">Yes</td><td align="center"></td><td align="center"></td></tr><tr><td>Freewheel (Stickyads.tv)</td><td>Available</td><td align="center">Yes</td><td align="center">Yes</td><td align="center">Yes</td><td align="center"></td><td align="center"></td><td align="center">Yes</td><td align="center">Yes</td><td align="center"></td></tr><tr><td>Google AdX</td><td>Available</td><td align="center">Yes</td><td align="center">Yes</td><td align="center">Yes</td><td align="center">Yes</td><td align="center">Yes</td><td align="center">Yes</td><td align="center">Yes</td><td align="center"></td></tr><tr><td>GumGum</td><td>Available</td><td align="center">Yes</td><td align="center">Yes</td><td align="center">Yes</td><td align="center"></td><td align="center"></td><td align="center">Yes</td><td align="center"></td><td align="center"></td></tr><tr><td>Improve Digital</td><td>Available</td><td align="center">Yes</td><td align="center">Yes</td><td align="center">Yes</td><td align="center"></td><td align="center"></td><td align="center">Yes</td><td align="center"></td><td align="center"></td></tr><tr><td>Index Exchange</td><td>Available</td><td align="center">Yes</td><td align="center">Yes</td><td align="center">Yes</td><td align="center"></td><td align="center"></td><td align="center">Yes</td><td align="center"></td><td align="center"></td></tr><tr><td>Inmobi</td><td>Available</td><td align="center">Yes</td><td align="center">Yes</td><td align="center">Yes</td><td align="center"></td><td align="center"></td><td align="center">Yes</td><td align="center"></td><td align="center"></td></tr><tr><td>LoopMe</td><td>Available</td><td align="center">Yes</td><td align="center">Yes</td><td align="center">Yes</td><td align="center"></td><td align="center"></td><td align="center">Yes</td><td align="center"></td><td align="center"></td></tr><tr><td>Magnite CTV (Telaria)</td><td>Available</td><td align="center">Yes</td><td align="center">Yes</td><td align="center">Yes</td><td align="center"></td><td align="center"></td><td align="center">Yes</td><td align="center">Yes</td><td align="center"></td></tr><tr><td>Magnite DV+ (Rubicon)</td><td>Available</td><td align="center">Yes</td><td align="center">Yes</td><td align="center">Yes</td><td align="center"></td><td align="center"></td><td align="center">Yes</td><td align="center">Yes</td><td align="center"></td></tr><tr><td>Microsoft Monetize SSP</td><td>Available</td><td align="center">Yes</td><td align="center">Yes</td><td align="center">Yes</td><td align="center"></td><td align="center"></td><td align="center">Yes</td><td align="center"></td><td align="center"></td></tr><tr><td>Nexstar Digital</td><td>Available</td><td align="center">Yes</td><td align="center">Yes</td><td align="center">Yes</td><td align="center"></td><td align="center"></td><td align="center">Yes</td><td align="center"></td><td align="center"></td></tr><tr><td>Ogury</td><td>Available</td><td align="center">Yes</td><td align="center">Yes</td><td align="center">Yes</td><td align="center"></td><td align="center"></td><td align="center">Yes</td><td align="center"></td><td align="center"></td></tr><tr><td>OpenX</td><td>Available</td><td align="center">Yes</td><td align="center">Yes</td><td align="center">Yes</td><td align="center"></td><td align="center"></td><td align="center">Yes</td><td align="center"></td><td align="center"></td></tr><tr><td>Outbrain</td><td>Available</td><td align="center">Yes</td><td align="center">Yes</td><td align="center">Yes</td><td align="center"></td><td align="center"></td><td align="center">Yes</td><td align="center"></td><td align="center"></td></tr><tr><td>Ozone</td><td>Available</td><td align="center">Yes</td><td align="center">Yes</td><td align="center"></td><td align="center"></td><td align="center"></td><td align="center">Yes</td><td align="center"></td><td align="center"></td></tr><tr><td>PilotX</td><td>Available</td><td align="center">Yes</td><td align="center">Yes</td><td align="center">Yes</td><td align="center"></td><td align="center"></td><td align="center">Yes</td><td align="center"></td><td align="center"></td></tr><tr><td>Proper Media</td><td>Available</td><td align="center">Yes</td><td align="center">Yes</td><td align="center"></td><td align="center"></td><td align="center"></td><td align="center">Yes</td><td align="center"></td><td align="center"></td></tr><tr><td>PubMatic</td><td>Available</td><td align="center">Yes</td><td align="center">Yes</td><td align="center">Yes</td><td align="center"></td><td align="center"></td><td align="center">Yes</td><td align="center"></td><td align="center"></td></tr><tr><td>PulsePoint</td><td>Available</td><td align="center">Yes</td><td align="center">Yes</td><td align="center">Yes</td><td align="center"></td><td align="center"></td><td align="center">Yes</td><td align="center"></td><td align="center"></td></tr><tr><td>RichAudience</td><td>Available</td><td align="center">Yes</td><td align="center">Yes</td><td align="center">Yes</td><td align="center"></td><td align="center"></td><td align="center">Yes</td><td align="center"></td><td align="center"></td></tr><tr><td>Seedtag</td><td>Available</td><td align="center">Yes</td><td align="center">Yes</td><td align="center"></td><td align="center"></td><td align="center"></td><td align="center">Yes</td><td align="center"></td><td align="center"></td></tr><tr><td>Sharethrough</td><td>Available</td><td align="center">Yes</td><td align="center">Yes</td><td align="center">Yes</td><td align="center">Yes</td><td align="center">Yes</td><td align="center">Yes</td><td align="center"></td><td align="center"></td></tr><tr><td>Siprocal (formerly Column6)</td><td>Available</td><td align="center"></td><td align="center"></td><td align="center">Yes</td><td align="center"></td><td align="center"></td><td align="center">Yes</td><td align="center"></td><td align="center"></td></tr><tr><td>Smaato</td><td>Available</td><td align="center">Yes</td><td align="center">Yes</td><td align="center">Yes</td><td align="center"></td><td align="center"></td><td align="center">Yes</td><td align="center"></td><td align="center"></td></tr><tr><td>Sovrn (FMX)</td><td>Available</td><td align="center">Yes</td><td align="center">Yes</td><td align="center">Yes</td><td align="center"></td><td align="center"></td><td align="center">Yes</td><td align="center"></td><td align="center"></td></tr><tr><td>SpringServe</td><td>Available</td><td align="center">Yes</td><td align="center">Yes</td><td align="center">Yes</td><td align="center"></td><td align="center"></td><td align="center">Yes</td><td align="center"></td><td align="center"></td></tr><tr><td>TheViewPoint</td><td>Available</td><td align="center">Yes</td><td align="center">Yes</td><td align="center">Yes</td><td align="center"></td><td align="center"></td><td align="center">Yes</td><td align="center"></td><td align="center"></td></tr><tr><td>TripleLift</td><td>Available</td><td align="center">Yes</td><td align="center">Yes</td><td align="center">Yes</td><td align="center">Yes</td><td align="center">Yes</td><td align="center">Yes</td><td align="center"></td><td align="center"></td></tr><tr><td>Triton</td><td>Available</td><td align="center"></td><td align="center"></td><td align="center"></td><td align="center"></td><td align="center"></td><td align="center"></td><td align="center"></td><td align="center">Yes</td></tr><tr><td>Tubi</td><td>Available</td><td align="center">Yes</td><td align="center">Yes</td><td align="center">Yes</td><td align="center"></td><td align="center"></td><td align="center">Yes</td><td align="center">Yes</td><td align="center"></td></tr><tr><td>Unity</td><td>Available</td><td align="center"></td><td align="center"></td><td align="center">Yes</td><td align="center"></td><td align="center"></td><td align="center">Yes</td><td align="center"></td><td align="center"></td></tr><tr><td>UnrulyX</td><td>Available</td><td align="center"></td><td align="center"></td><td align="center"></td><td align="center"></td><td align="center"></td><td align="center">Yes</td><td align="center"></td><td align="center"></td></tr><tr><td>Verve</td><td>Available</td><td align="center">Yes</td><td align="center">Yes</td><td align="center">Yes</td><td align="center"></td><td align="center"></td><td align="center">Yes</td><td align="center"></td><td align="center"></td></tr><tr><td>Yieldlab</td><td>Available</td><td align="center"></td><td align="center"></td><td align="center"></td><td align="center"></td><td align="center"></td><td align="center">Yes</td><td align="center"></td><td align="center"></td></tr></tbody></table>

### Exchange-Level Targeting

Exchange-level targeting may be used when supported by the campaign configuration. In most cases, enabling broader access across eligible exchanges provides the DSP with more opportunities to reach the intended audience and optimize campaign delivery and bidding unit economics.

### Publisher and Placement Availability

Access to an exchange does not necessarily include every publisher or placement available through that exchange. Inventory availability depends on the supply offered through the exchange, campaign eligibility, targeting criteria, deal terms, and platform controls.

### Private Marketplace and Preferred Deals

Private marketplace and preferred deal availability depends on the exchange, publisher, and campaign requirements. Contact the Untitled team if your campaign requires access to a specific publisher, private marketplace, or preferred deal.

### Maintaining Current Exchange Information

This article reflects the exchange and inventory access documented in Untitled’s current inventory list. Because programmatic supply relationships and supported formats can change over time, confirm any time-sensitive or campaign-specific inventory requirements with the Untitled team.


# Untitled DSP FAQ

Answers to frequently asked questions for advertisers using the Untitled DSP.

### What This Article Covers

This article answers common questions about how campaigns operate within the Untitled Demand-Side Platform (DSP), including pricing, media buying mechanics, targeting capabilities, and campaign requirements.

***

## How Does the Pricing Model Work?

Untitled operates on a **transparent 20% media markup**.

This markup covers:

* Platform access
* Exchange connectivity
* Campaign infrastructure
* Reporting and campaign delivery

#### Example

If a campaign budget is **$10,000**:

* Approximately **$8,000 is deployed directly into media inventory**
* Approximately **$2,000 covers the Untitled platform fee**

This structure ensures the majority of campaign budgets are deployed directly toward media impressions.

***

## What Do CPMs Cost?

CPMs (Cost Per Thousand Impressions) are determined in **real time through the programmatic advertising auction**.

Pricing depends on several factors, including:

* Publisher floor prices
* Available inventory supply
* Advertiser demand in the exchange
* Targeting parameters

These rates represent the **wholesale market pricing available through major programmatic exchanges and streaming platforms**.

#### In Simple Terms

Untitled advertisers set the **maximum CPM bid** they are willing to pay for an impression (be it CTV, OTT, Audio or Display inventory).

If the bid wins the auction, the ad is served.

Because pricing is determined by auction dynamics, CPMs can fluctuate based on market conditions and inventory availability.

***

## What Are Payment Terms?

Media budgets must be **prepaid before campaigns can launch**.

When a campaign is created:

1. The media budget is funded in advance.
2. Funds are held on deposit.
3. Campaign delivery begins once the budget is available.

This ensures campaigns can run without interruption during delivery.

***

## Do You Have Campaign Minimums?

Yes.

The **minimum campaign budget is $1,000**.

There is **no required campaign duration**, meaning budgets can be deployed across any campaign timeframe.

Examples include:

* $1,000 campaign running over 30 days
* $1,000 campaign running over 90 days
* Larger budgets deployed over shorter periods

Campaign pacing can be adjusted depending on advertiser objectives.

***

## What Targeting Options Are Available?

The Untitled DSP supports a range of targeting options to help advertisers reach relevant audiences.

These include:

* First-party audiences built within the Untitled platform
* Website visitor retargeting via the Untitled ID Tag
* CRM and customer list uploads
* Intent topic audiences and interest targeting
* Geographic targeting
* Device and platform targeting
* Contextual targeting

Targeting strategies can be combined depending on campaign goals.

***

## Can I Use My Own Audience Data?

Yes.

Advertisers can activate **first-party audience data** directly within the Untitled DSP.

Common sources include:

* Audiences from your Audience Studio Library
* CRM customer lists
* Email marketing platforms
* Website visitor audiences
* Customer and lead databases

Because the DSP is a native module within the Untitled platform, audiences built in **Audience Studio** can be activated directly into programmatic campaigns. Advertisers can also upload **CSV audience files** into the **Audience Library** and use those segments for activation within the Untitled DSP

***

## What Reporting Is Available?

Campaign performance reporting is available directly within the Untitled platform. Reporting views can be filtered by campaign and line item dimensions as well as date dimensions. Creative-level reporting is coming soon. &#x20;

Standard reporting metrics include:

* Impressions delivered
* Reach and frequency
* Click-through rate (CTR)
* Video completion rate (VCR) for CTV campaigns
* Spend and pacing
* Campaign delivery by inventory source

Reporting dashboards allow advertisers to monitor campaign performance and delivery while campaigns are active.&#x20;

***

## How Long Does It Take to Launch a Campaign?

Campaign launch timelines depend on creative readiness and campaign setup.

In most cases:

* Campaign setup can be completed same-day, but typical within **1–2 business days**
* Campaigns can begin delivering shortly after creative approval and media budget funding

Providing creative assets and targeting details in advance helps accelerate campaign launch timelines. You may upload creatives directly into the Creative Asset Library in the Untitled Platform.&#x20;


# Media Intelligence


# Overview


# Sources

Leverage one of your most important data assets, your existing customer data sources, to maximize results.

For help getting a source connected to Untitled, please check out our connection guides! If you need further assistance or have questions about a source not listed, please reach out.

<table data-view="cards"><thead><tr><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td>Shopify</td><td><a href="/integrations/sources/shopify">Shopify</a></td></tr><tr><td>Klaviyo</td><td><a href="/integrations/sources/klaviyo">Klaviyo</a></td></tr><tr><td>Hubspot</td><td><a href="/integrations/sources/hubspot">Hubspot</a></td></tr></tbody></table>


# Shopify

By syncing your customer and order data from Shopify, you’ll unlock advanced audience-building capabilities in Untitled.

## **Source Overview**

**Shopify** is a leading ecommerce platform that powers millions of online stores. By connecting Shopify as a source in Untitled, you can unlock powerful use cases—such as customer enrichment, segmentation, and lookalike modeling—by ingesting historical order and customer data.

This guide will walk you through how to configure **Shopify** as a data source within Untitled and begin syncing customer and order data for downstream activation, enrichment, and analysis.

Ready to connect your Shopify account to Untitled? Follow our setup guide below! If you encounter any issues or would like our team to complete this connection on your behalf, please reach out to <support@getuntitled.ai>.

{% hint style="info" %}
The following connection process takes approximately 5-7 minutes once the prerequisites are met.
{% endhint %}

### Prerequisites

* Admin Access to a Shopify shop
* A **"Shop Name"**

{% hint style="info" %}
You can find your shop name immediately before `{THIS IS YOUR SHOP NAME}.myshopify.com` in your Shopify URL. For example, if your URL is `acme.myshopify.com`, then your shop name is `acme`.
{% endhint %}

## Walkthrough Video <a href="#prerequisites-in-shopify" id="prerequisites-in-shopify"></a>

{% embed url="<https://youtu.be/UhyNRRg4Ds8>" %}

## Connection Setup Steps with Screenshots <a href="#prerequisites-in-shopify" id="prerequisites-in-shopify"></a>

### Setup Instructions

#### Log into Untitled  <a href="#log-into-distilled" id="log-into-distilled"></a>

1. First, log into your Untitled account
2. Select `Sources` in the left navigation menu > Click `Connect a source`&#x20;
3. Click `Connect` on the Shopify source card

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FfI8EhWR26tGErp8TI115%2FScreenshot%202025-05-16%20at%201.08.25%E2%80%AFPM.png?alt=media&amp;token=bad00792-967c-48a0-940f-af32eea1b2fc" alt=""><figcaption></figcaption></figure>

4. A popup modal will open prompting you to name the source connection. Choose something descriptive like *\[my-shop name] Untitled Source*

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2F6FUl3btKIh5BguCJvgHO%2FScreenshot%202025-05-16%20at%201.09.13%E2%80%AFPM.png?alt=media&amp;token=1aac629e-f5b6-4198-b183-0ce7e603ea3c" alt=""><figcaption></figcaption></figure>

5. Click `Confirm` which will then open a new tab in your browser to begin the authentication process.

{% hint style="info" %}
Note: if the link does not automatically open a new tab, feel free to manually open a new tab and `copy` and paste the link in the url search box of your preferred browser.&#x20;
{% endhint %}

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FGDtx7sJYL4hsi4q1g1YL%2FScreenshot%202025-05-16%20at%201.14.14%E2%80%AFPM.png?alt=media&amp;token=3519c9bc-de90-4d84-b8e8-9a679369f094" alt=""><figcaption></figcaption></figure>

6. You'll be brought to a connection page that looks like the following image. Please press `Continue` on this page. &#x20;

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FUulmmemk7HCzjNuXq8KG%2FScreenshot%202025-05-16%20at%201.14.31%E2%80%AFPM.png?alt=media&amp;token=71db83d9-273f-4eae-8eec-e9d713b460a5" alt=""><figcaption></figcaption></figure>

7. At the following screen, click `Continue Setup with Shopify`.&#x20;

{% hint style="warning" %}
Instructions from Fivetran are located on this page, however, these are for a Legacy Connection method. Please disregard their instructions and move to the next step using this Untitled knowledge base article as your guide.&#x20;
{% endhint %}

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FF8eIHAXJNicR6O4dqzCC%2FScreenshot%202025-05-16%20at%201.20.51%E2%80%AFPM.png?alt=media&amp;token=8b53104e-4188-4b92-8670-b3f021ec4afb" alt=""><figcaption></figcaption></figure>

8. You'll be redirected to the Shopify App store if you're not yet logged in to your Shopify Store. Please press `Install` on the Fivetran Shopify App overview page. (If you're already logged in, you may be prompted to re-login to install, or the button will say `Login to Install`).&#x20;

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2F9Nn7snAVGFPvmDIFzJaF%2FScreenshot%202025-05-16%20at%201.38.11%E2%80%AFPM.png?alt=media&amp;token=47e0c83d-ee25-4e8f-b99b-d5c3152f26b6" alt=""><figcaption></figcaption></figure>

9. Login to your Shopify Store

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2Fpc3OeVRc9xxu0J7fUN5i%2FScreenshot%202025-05-16%20at%201.38.23%E2%80%AFPM.png?alt=media&amp;token=3eb3d156-ed9e-4745-91c3-04fc39b1174f" alt=""><figcaption></figcaption></figure>

10. From the logged in view of the Shopify App Store, Select the store you want to sync data from.&#x20;

{% hint style="info" %}
We recommend that you create only **one** connection for each Shopify store in the event you have multiple.
{% endhint %}

11. Depending on whether or not the Untitled Fivetran application is already installed in your Shopify account, do one of the following:
    1. If the app is NOT installed, click `Install`.
    2. If the app is already installed, click `Update`.
12. Once you have finished, you will be redirected back to the Untitled Fivetran setup page, and the **Shop name** will be automatically populated.
13. In the "**Historical sync time frame"** drop-down menu, **Select “Sync all historical data”**&#x20;

{% hint style="info" %}
This ensures all available historical records from your source are included. This step is critical to enable features like our **Shopify enrichment**, which allows you to build exclusion audiences based on existing Shopify records, and our **ICP AI model**, which analyzes your historical customer data to automatically identify high-quality lookalike targets.
{% endhint %}

14. Click `Authorize` to allow Fivetran to access your Shopify account using OAuth.
15. Click `Save & Test`&#x20;

{% hint style="success" %}
Fivetran will take it from here and sync your data from your Shopify account to the Untitled Platform! Please allow 3-5 minutes for all checks to clear and for the authentication to fully complete. Upon successfully connecting your Shopify Store, you'll see it populated in your "Connected Sources" tab with a green indicator status icon like the image below.&#x20;
{% endhint %}

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FRCr0jN4ig7jCm7Duobmf%2FScreenshot%202025-05-16%20at%202.02.18%E2%80%AFPM.png?alt=media&amp;token=fea5f233-1c62-4df3-9715-a1010edb7234" alt=""><figcaption></figcaption></figure>

Please allow for 3-4 hours for all historical data to be synced. At which point, you can proceed with shopify enrichment-driven audience building filters for options like include/exclude Shopify matches.&#x20;

## LEGACY Connection Setup <a href="#prerequisites-in-shopify" id="prerequisites-in-shopify"></a>

### LEGACY Connection Prerequisites <a href="#prerequisites-in-shopify" id="prerequisites-in-shopify"></a>

To connect your Shopify account to Untitled, you will need:

* Access to your Shopify account
* Your Shopify shop name
  * The Shop name is located in the URL of your Shopify account -- after the https\:// and before .myshopify
* To Enable custom app development
  * Prior to following the setup instructions below, you will need to enable custom app development in your Shopify account. Only a Shopify store owner or a staff member with the Enable app development permission can make this update.
  * Steps to Enable Custom App Development:
    * From your Shopify admin, click Settings > Apps and sales channels.
    * Click Develop apps.
    * Click Allow custom app development.

> IMPORTANT: Only use an HTTPS URL with TLS version 1.2 or above.

***

### LEGACY Setup Instructions <a href="#setup-instructions" id="setup-instructions"></a>

Once the prerequisites outlined above are complete, proceed with the following step by step instructions.

#### Part A—Log into Untitled  <a href="#log-into-distilled" id="log-into-distilled"></a>

1. First, log into your Untitled account
2. Select Sources in the left navigation menu.
3. To view the sources available for integration, select the tab labeled Connect a source
4. Search Shopify and click Connect
5. Select Open - you will be redirected to a new window
6. Keep this window open, create a new tab or window, and go to Shopify

#### Part B—Log into Shopify  <a href="#log-into-shopify" id="log-into-shopify"></a>

1. Log in to your Shopify account.
2. Navigate to the settings menu at the bottom left.
3. Then select Apps and sales channels

![](https://distilledguides.refined.site/download/attachments/634257409/Copy%20link.png)

#### Part C—Create an App in Shopify <a href="#create-an-app-in-shopify" id="create-an-app-in-shopify"></a>

1. Click Develop apps.
2. Click Create an app.
3. Enter an App name. This can be any name you choose, we suggest an easy identifier such as “Untitled Fivetran.”
4. In the App developer drop-down menu, select the Shopify user email you would like to associate with this action.

![](https://distilledguides.refined.site/download/attachments/634257409/Screenshot%202023-11-07%20at%202.29.29%20PM.png)

5. Click Create app.

#### Part D—Select API Scopes <a href="#select-api-scopes" id="select-api-scopes"></a>

1. Under Overview, click Configure Admin API Scopes.

![](https://distilledguides.refined.site/download/attachments/634257409/image-20230728-145612.png)

&#x20;

2. Here, you will need to check the box for each of the below Admin API scopes. Once completed, click Save in the upper right hand corner.

   &#x20;

   ![](https://distilledguides.refined.site/download/attachments/634257409/image-20230728-151737.png)

   1. read\_products
   2. read\_customers
   3. read\_orders
   4. read\_price\_rules
   5. read\_fulfillments
   6. read\_shipping
   7. read\_draft\_orders
   8. read\_inventory
   9. read\_shopify\_payments\_payouts
   10. read\_shopify\_payments\_disputes
   11. read\_content
   12. read\_themes
   13. read\_product\_listings
   14. read\_customers
   15. read\_locations
   16. read\_script\_tags
   17. read\_assigned\_fulfillment\_orders
   18. read\_merchant\_managed\_fulfillment\_orders
   19. read\_third\_party\_fulfillment\_orders
   20. read\_analytics
   21. read\_reports
   22. read\_discounts
   23. read\_marketing\_events
   24. read\_resource\_feedbacks
   25. read\_translations
   26. read\_locales
3. Then select Install App right above the Save button.

![](https://distilledguides.refined.site/download/attachments/634257409/image-20230728-152055.png)

4. Next, select the API credentials tab, and copy the Admin API access token.

#### Part E—Finish connection <a href="#finish-connection" id="finish-connection"></a>

1. Go back to the Untitled window requesting the Shop name and Access token

![](https://distilledguides.refined.site/download/attachments/634257409/Screenshot%202023-07-28%20at%2012.09.54%20PM.png)

&#x20;

2. Enter your Shop name.

{% hint style="info" %}
You can find your shop name immediately before `{THIS IS YOUR SHOP NAME}.myshopify.com` in your Shopify URL. For example, if your URL is `acme.myshopify.com`, then your shop name is `acme`.
{% endhint %}

3. Enter the Admin API access token you copied from Shopify
4. Click Save & Test.
5. You can now safely close this window.

## Need Further Support or Have Additional Questions?

Check out our[ <mark style="color:blue;">FAQs</mark> ](/misc/frequently-asked-questions)to get some answers, start a chat on our [website](https://getuntitled.ai/), or get connected directly with our team [<mark style="color:blue;">here</mark>](https://getuntitled.ai/contact/).


# Klaviyo

Ready to connect your Klaviyo account to Untitled? Follow our setup guide below to create a Klaviyo Source within Untitled. Then [create a Klaviyo Destination with this guide](/integrations/destinations/klaviyo). If you encounter any issues or would like our team to complete this connection on your behalf, please reach out to <support@getuntitled.ai>.

{% hint style="info" %}
The following connection process takes approximately 2-3 minutes to complete. Before you begin, ensure you have Administrator or Owner permissions within your Klaviyo account.
{% endhint %}

## Walkthrough Video <a href="#log-into-distilled" id="log-into-distilled"></a>

If you are only setting up Klaviyo as a Source, only the first 3:12 of this video will apply to you.

{% embed url="<https://www.youtube.com/watch?v=pxf38D35BMY>" %}

0:00 Introduction\
0:07 Benefits and “Before you Begin”\
0:36 Setting up Klaviyo as an Untitled Source\
1:35 Creating Private API Keys in Klaviyo\
2:25 Recommended Settings for Klaviyo Source Sync\
3:12 Setting up Klaviyo as an Untitled Destination\
4:21 Finding your Klaviyo Public API Key\
4:35 Creating Private API Keys in Klaviyo\
5:34 Syncing an Untitled Audience to the Klaviyo Destination\
6:15 Suppress Klaviyo as a Source when syncing Audiences\
6:42 View your Untitled Audience as a List in Klaviyo\
7:05 Build a Klaviyo Flow with your synced Untitled Audience\
7:53 Next Steps with Klaviyo as an Untitled Destination

## Connection Guide <a href="#log-into-distilled" id="log-into-distilled"></a>

### Initial Setup <a href="#log-into-distilled" id="log-into-distilled"></a>

1. First, log into your Untitled account
2. Select Sources in the left navigation menu.
3. To view the sources available for integration, select the tab labeled Connect a source.
4. Search Klaviyo and click Connect. You will then be asked to name your connection.
5. Select Open - you will be redirected to a new window
6. Keep this window open, create a new tab or window, and go to Klaviyo

### Klaviyo API   <a href="#log-into-klaviyo" id="log-into-klaviyo"></a>

1. Log in to your Klaviyo account.
2. Navigate to the account menu at the bottom left and select Integrations

   &#x20;

   ![](https://distilledguides.refined.site/download/attachments/634224641/Screenshot%202023-09-01%20at%2010.33.05%20AM.png)

   &#x20;
3. Then select Developer tools

![](https://distilledguides.refined.site/download/attachments/634224641/Screenshot%202023-09-01%20at%2010.34.33%20AM.png)

4. On the right side menu, select Manage API Keys.

![](https://distilledguides.refined.site/download/attachments/634224641/Screenshot%202023-09-01%20at%2010.35.23%20AM.png)

5. In the section titled “Private API Keys” click the button Create Private API Key.

![](https://distilledguides.refined.site/download/attachments/634224641/Screenshot%202023-09-01%20at%2010.37.56%20AM.png)

6. Name the Private API Key in the top left - This can be any name you choose, we suggest an easy identifier such as “Untitled API Keys.”
7. Important: Under “Select Access Level”, select “Grant applications full access for every API scope”
8. Click Create to finish.

![](https://distilledguides.refined.site/download/attachments/634224641/Screenshot%202023-09-01%20at%2010.40.34%20AM.png)

8. Copy your Untitled API Keys by selecting the Copy button

   ![](https://distilledguides.refined.site/download/attachments/634224641/Screenshot%202023-09-01%20at%2010.47.14%20AM.png)

   &#x20;
9. Go back to the Untitled window requesting the API Key
10. Enter the Untitled API Key you just created in Klaviyo.

![](https://distilledguides.refined.site/download/attachments/634224641/Screenshot%202023-09-01%20at%2010.50.52%20AM.png)

2. Click Save & Test.
3. You can now safely close this window.

## Need Further Support or Have Additional Questions?

Check out our[ <mark style="color:blue;">FAQs</mark> ](/misc/frequently-asked-questions)to get some answers, start a chat on our [website](https://getuntitled.ai/), or get connected directly with our team [<mark style="color:blue;">here</mark>](https://getuntitled.ai/contact/).


# Klaviyo User Guide

Welcome to the Untitled ID + Klaviyo User Guide! This guide is designed to help you understand and utilize the features of our Untitled ID Tag tool, which provides you with valuable insights into your website visitors and empowers your email marketing efforts, and help you utilize this data within Klaviyo. With the Untitled ID Tag and Klaviyo, you can identify, engage, and convert potential customers like never before.

&#x20;

The Untitled ID Tag captures essential information about your website visitors, including their name, personal email address, age range, income range, household address, and more. This data provides you with deep insights into your visitors’ demographics, allowing you to craft targeted email marketing campaigns.

### **Instructions** <a href="#instructions" id="instructions"></a>

#### Install Tag <a href="#install-tag" id="install-tag"></a>

1. Add the provided tag code to the *\<head>* file on your website. This enables the tool to collect visitor data. For step-by-step instructions on how to create a new tag and install on your website, visit the following guides:
   1. [<mark style="color:red;">How to Create New Tags in</mark> ](https://docs.untitledfirm.com/space/KB/630980609/How+to+Create+New+Pixels+in+Distilled)<mark style="color:red;">Untitled</mark>
   2. [<mark style="color:red;">How to Install the</mark> ](https://docs.untitledfirm.com/space/KB/631078913/How+to+Install+the+Lead+Data+Stream+Pixel)Untitled ID Tag

Open Klaviyo\_-\_liquid\_theme.png![](blob:https://untitledfirm.atlassian.net/acfa3dfc-e967-411e-82f6-809d8ed58212#media-blob-url=true\&id=71514eb6-a5eb-4b89-ade3-dc151ef127eb\&collection=contentId-634716164\&contextId=634716164\&width=999\&height=231\&alt=)

The tag will automatically collect visitor data as they interact with your website. This data includes crucial details that can enhance your understanding of your audience.

#### **Filter & Export Data as CSV** <a href="#filter-and-export-data-as-csv" id="filter-and-export-data-as-csv"></a>

When you’re ready to use the collected visitor data for your Klaviyo campaigns, follow these steps to export your newly collected data as a CSV file:

1. Log in to your Untitled account and navigate to the “**Visitor table**” page.
2. Toggle between the different file types to select whether you want to download from the B2B file, B2C file or PTE file.

Open Resolution\_table-2 copy.png![Resolution\_table-2 copy.png](blob:https://untitledfirm.atlassian.net/5ecb4e67-7c41-4832-82e9-9745c1d827ee#media-blob-url=true\&id=fe77dc1a-7db2-4452-bf5d-b2bb3a883d77\&collection=contentId-634716164\&contextId=634716164\&width=3030\&height=842\&alt=Resolution_table-2%20copy.png)

&#x20;

3. Select the **Filters** button to select your date range and segment your list based on demographic, firmographic and behavior data . For more advanced targeting, connect your Shopify data to Untitled and identify matches between your visitor data and existing customer database.

Open Page\_Path\_3 copy.png![Page\_Path\_3 copy.png](blob:https://untitledfirm.atlassian.net/46a9cb5f-def2-4459-b204-a288d7085778#media-blob-url=true\&id=560d6f6b-943c-41c4-a13f-e5c33eff86ab\&collection=contentId-634716164\&contextId=634716164\&width=1664\&height=1486\&alt=Page_Path_3%20copy.png)

&#x20;

4. Select “**Apply Filters**” once complete to view results.
5. Click on the “**Export**” button. A CSV file containing the selected data will be generated and downloaded to your device.

&#x20;

#### **Import Data into Klaviyo** <a href="#import-data-into-klaviyo" id="import-data-into-klaviyo"></a>

If you’re using Klaviyo for your email marketing campaigns, here’s how you can import the exported data:

1. **Log in** to your Klaviyo account.
2. Click the **“Lists & Segments”** tab under the “Audience” section on the left side navigation menu and then select the “Create List/Segment” button on the top right hand side of the page.

Open Klaviyo\_import\_1.png![](blob:https://untitledfirm.atlassian.net/28fc410e-4052-45cb-8c85-a466d7877ee2#media-blob-url=true\&id=bc8bdb79-4482-4a42-be8d-b5a4c80c8c43\&collection=contentId-634716164\&contextId=634716164\&width=1001\&height=536\&alt=)

3. Select the **“List”** upload option.
4. Name your list and select the **“create list”** button.
5. Select the **“upload contacts”** option.
6. Click the **“upload”** button and select your saved CSV file.
7. **Map the fields** from your CSV export into the Klaviyo fields.

Open Klaviyo\_import\_2.png![](blob:https://untitledfirm.atlassian.net/9a6bd0a8-3f62-41f5-82df-05a2076cf197#media-blob-url=true\&id=3b5d5cb1-5a73-4a43-8e05-01ba66fba239\&collection=contentId-634716164\&contextId=634716164\&width=1002\&height=543\&alt=)

![Info](https://pf-emoji-service--cdn.us-east-1.prod.public.atl-paas.net/atlassian/productivityEmojis/information-32px.png) Note that not all fields in the Untitled ID Tag export need to be mapped to Klaviyo. The ones we suggest are:&#x20;

* first\_name > First Name
* last\_name > Last Name&#x20;
* personal\_email > Email&#x20;
* personal\_address > Address
* personal\_address\_2 > Address 2
* personal\_city > City
* personal\_zip > Zip Code&#x20;

&#x20;

#### **Importing Additional Fields**  <a href="#importing-additional-fields" id="importing-additional-fields"></a>

If there are additional fields in your Untitled ID Tag upload that you would like to pull over into your Klaviyo list upload, you can create a new field:

1. Select the attribute you would like to bring over to Klaviyo and then click on the “Create New Field” button on the Klaviyo mapping drop down.

Open Klaviyo\_import\_3(1).png![](blob:https://untitledfirm.atlassian.net/917c5587-4043-422e-83f9-e6ae60bd54e4#media-blob-url=true\&id=bea01d50-09fd-4a99-b915-c3a7f2c45651\&collection=contentId-634716164\&contextId=634716164\&width=1002\&height=546\&alt=)

&#x20;

2. Name the profile property and select the data type. For attributes like age range, gender, etc. – we recommend selecting **“text”** as the data type.&#x20;
3. Click **“create”** once you are finished.&#x20;
4. The new data field will now be available for mapping.

Open Klaviyo\_import\_3.png![](blob:https://untitledfirm.atlassian.net/95ff85e5-67ba-4705-92c9-cd18e6b69e0f#media-blob-url=true\&id=5a1aa038-2418-47ba-ade1-6ef1b1f62d23\&collection=contentId-634716164\&contextId=634716164\&width=1002\&height=546\&alt=)

8. Once you are finished mapping your fields, select the **“Next”** button in the top right hand corner.
9. Select **“yes, update subscription status for all imported contacts to ‘subscribed”** and then click “import” on the top right hand side.
10. Your list should start to populate. Larger lists may take a bit of time to fully upload.
11. Once populated, your list is good to go to **add to a campaign or existing flow of your choice.**

Open Klaviyo\_import\_5.png![](blob:https://untitledfirm.atlassian.net/83e10a44-bb38-46cf-9a1c-69562c78a880#media-blob-url=true\&id=66b2d8b3-0563-49b9-b089-843842d870ae\&collection=contentId-634716164\&contextId=634716164\&width=1001\&height=540\&alt=)

#### ***\******Crucial Step&#x20;*****– remove the Double Opt-In feature and turn on Single Opt-In*** <a href="#crucial-step-remove-the-double-opt-in-feature-and-turn-on-single-opt-in" id="crucial-step-remove-the-double-opt-in-feature-and-turn-on-single-opt-in"></a>

To [enable single opt-in](https://help.klaviyo.com/hc/en-us/articles/115005251108) for a given list:

1. Click into the list you want to edit.
2. Select Settings.
3. Select Consent.
4. Check the box next to Single opt-in.
5. Click Save.

&#x20;

### **Best Practices** <a href="#best-practices" id="best-practices"></a>

* Ensure you are using a “Cookie-Consent” banner on your website to meet compliance regulations within your state when collecting and using visitor data.&#x20;
* Use the collected data responsibly to create personalized and relevant email marketing campaigns.


# Hubspot

Ready to connect your Hubspot account to Untitled? Follow our setup guide below! If you encounter any issues, please reach out to <support@getuntitled.ai>.

{% hint style="info" %}
The following connection process takes approximately 5 minutes to complete. The video includes the process of setting up Hubspot as a Destination as well as a Source, which must be done before setting Hubspot as a Destination. [The Hubspot Destination guide can be viewed here.](/integrations/destinations/hubspot)
{% endhint %}

## Walkthrough Video <a href="#instructions" id="instructions"></a>

{% embed url="<https://youtu.be/_IX_jNz8nxA>" %}

## Connection Guide <a href="#instructions" id="instructions"></a>

### Initial Setup  <a href="#log-into-distilled" id="log-into-distilled"></a>

1. First, log into your Untitled account
2. Select Sources in the left navigation menu.
3. To view the sources available for integration, select the tab labeled Connect a source
4. Search Hubspot and click Connect. You will then be asked to name your connection
5. Select Confirm - you will be redirected to a new window
6. From here, select Authorize to be prompted to sign into your Hubspot account

### Account Selection <a href="#select-hubspot-account" id="select-hubspot-account"></a>

1. Sign in to your Hubspot account.

NOTE: Make sure that you have Super Admin level privileges.

![Hubspot Connection](https://distilledguides.refined.site/download/attachments/680853642/Hubspot_auth_link_-_1.png)

&#x20;

2. In the Choose an Account list, select the account you want to sync.

![Hubspot Account Selection](https://distilledguides.refined.site/download/attachments/680853642/Screenshot%202024-01-05%20at%2010.34.57%20AM.png)

3. Click Connect App to allow the ETL tool Fivetran to connect to your Hubspot Account. When authorization is complete, you should be redirected back to the Untitled > Hubspot setup form.

![App Connection](https://distilledguides.refined.site/download/attachments/680853642/Hubspot_auth_link_-_2.png)

4. Select Save & Test in the bottom left of the setup form. Untitled will take it from here and sync your data from your Hubspot account to Untitled.

![](https://distilledguides.refined.site/download/attachments/680853642/Hubspot_auth_link.png)

5. You can now safely close this window.

## Need Further Support or Have Additional Questions?

Check out our[ <mark style="color:blue;">FAQs</mark> ](/misc/frequently-asked-questions)to get some answers, start a chat on our [website](https://getuntitled.ai/), or get connected directly with our team [<mark style="color:blue;">here</mark>](https://getuntitled.ai/contact/).


# WooCommerce


# Destinations

For help getting a destination connected to Untitled, please check out our connection guides! If you need further assistance or have questions about a destination not listed, please reach out.

<table data-view="cards"><thead><tr><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td>Klaviyo</td><td><a href="/integrations/destinations/klaviyo">Klaviyo</a></td></tr><tr><td>Meta (Facebook Ads)</td><td><a href="/integrations/destinations/meta-facebook-ads">Meta (Facebook Ads)</a></td></tr><tr><td>Google Sheets</td><td><a href="/integrations/destinations/google-sheets">Google Sheets</a></td></tr><tr><td>Hubspot</td><td><a href="/integrations/destinations/hubspot">Hubspot</a></td></tr><tr><td>Mailchimp</td><td><a href="/integrations/destinations/mailchimp">Mailchimp</a></td></tr><tr><td>Google Ads</td><td><a href="/integrations/destinations/google-ads">Google Ads</a></td></tr><tr><td>LinkedIn Ads</td><td><a href="/integrations/destinations/linkedin-ads">LinkedIn Ads</a></td></tr></tbody></table>


# Klaviyo

By syncing your audiences directly to Klaviyo, your team can better automate and streamline your email marketing efforts.

## Destination Overview

Klaviyo is a powerful email marketing platform that allows businesses to send targeted and personalized emails to their customers and subscribers.  This user guide will walk you through the process of setting up Klaviyo as a destination in Untitled and sending audiences to Klaviyo effectively.

{% hint style="warning" %}
Before configuring Klaviyo as a destination for data transmission from Untitled, it's essential to establish Klaviyo as a source for data import (inflow). This initial step enables Untitled to cross-reference and avoid duplications with the profiles already present in your Klaviyo account. By connecting Klaviyo as a source, you safeguard against any unintended updates or overwrites to your existing Klaviyo profiles during the synchronization process with the destination. [<mark style="color:blue;">Follow the guide here to connect Klaviyo as a source in Untitled.</mark>](/integrations/sources/klaviyo)
{% endhint %}

## Walkthrough Video <a href="#instructions" id="instructions"></a>

If you've already set up Klaviyo as a Source in your Untitled account, you can start this video at 3:12.

{% embed url="<https://www.youtube.com/watch?v=pxf38D35BMY>" %}

0:00 Introduction\
0:07 Benefits and “Before you Begin”\
0:36 Setting up Klaviyo as an Untitled Source\
1:35 Creating Private API Keys in Klaviyo\
2:25 Recommended Settings for Klaviyo Source Sync\
3:12 Setting up Klaviyo as an Untitled Destination\
4:21 Finding your Klaviyo Public API Key\
4:35 Creating Private API Keys in Klaviyo\
5:34 Syncing an Untitled Audience to the Klaviyo Destination\
6:15 Suppress Klaviyo as a Source when syncing Audiences\
6:42 View your Untitled Audience as a List in Klaviyo\
7:05 Build a Klaviyo Flow with your synced Untitled Audience\
7:53 Next Steps with Klaviyo as an Untitled Destination

## Step-by-Step Connection Setup <a href="#instructions" id="instructions"></a>

#### Log into Untitled  <a href="#log-into-distilled" id="log-into-distilled"></a>

1. First, log into your Untitled account.
2. Select `Destinations` in the left navigation menu.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2F2q9zxxowx8Acr8QXzZ91%2FScreenshot%202025-04-24%20at%205.05.46%E2%80%AFPM.png?alt=media&amp;token=26f77fd2-df15-4896-a71b-1d3baa768215" alt=""><figcaption></figcaption></figure>

3. Find Klaviyo Destination tile and click `Connect`.
4. A popup window will appear prompting you to name the integration. Name it something descriptive such as *Untitled Destination*. Once you've done so, click `Connect`.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FfxjUYZTqiAocQShfZk3N%2FScreenshot%202025-04-24%20at%205.06.54%E2%80%AFPM.png?alt=media&amp;token=1e706386-f1fb-42f5-b5d8-32236c0dd4e5" alt=""><figcaption></figcaption></figure>

3. Another popup will appear with a link. Select `Continue` , and then you will be redirected to a new window to begin the Authentication process.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FkxZmaml9Zts5sYq9B8fv%2FScreenshot%202025-04-24%20at%205.07.32%E2%80%AFPM.png?alt=media&amp;token=007ef3d4-7293-4346-a9ba-e9f715f039ec" alt=""><figcaption></figcaption></figure>

3. In the new window, select `Continue` to allow enable the connection method to Klaviyo.

![Connection Window](https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FGiZFWXFjUncWZHfaJds3%2FScreenshot%202025-04-24%20at%205.13.08%E2%80%AFPM.png?alt=media\&token=2861d8e6-3dc8-4245-867d-14174e18b780)

6. Next, you will be asked to configure your Klaviyo account. **Keep this window open, create a new tab or window, and login to Klaviyo**

![](https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FWGEfeFvWWJsIgiAAS5K5%2FScreenshot%202025-04-24%20at%205.14.20%E2%80%AFPM.png?alt=media\&token=4956e7c1-80f7-4a02-9ae8-fd577dc1d7ed)

{% hint style="warning" %}
The next section will walk you through the process of retrieving the **API keys** from Klaviyo that are required to authenticate the Destination in Untitled.

To complete these steps, you must have **Admin-level access** to your Klaviyo account.
{% endhint %}

### Authenticate Klaviyo as a Destination <a href="#authenticate-klaviyo-as-a-destination" id="authenticate-klaviyo-as-a-destination"></a>

You will need a Klaviyo `Public API key` and `Private API key` to setup the integration.&#x20;

#### Your Klaviyo Public API Key

Your Public API key is also called your Site ID. This is a short alphanumeric value. This public key is a unique identifier for your Klaviyo account, and there is only one per account. It is safe to expose your public API key, as this key cannot be used to access data in your Klaviyo account.

#### Your Klaviyo Private API Key

Private API keys are used for reading data from Klaviyo and manipulating some sensitive objects such as lists. Treat private API keys like passwords kept in a safe place. A Klaviyo account can generate as many private API keys as needed.&#x20;

#### Steps to Retrieve your Public API Key

1. Log in to your Klaviyo account and click on your *organization name* in the lower left
2. Select `Integrations`

   &#x20;

   ![](https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FEUd0kXY1nRXxHum6lmIJ%2Fimage.png?alt=media\&token=2b87da69-d6e6-4611-bfcd-48b47cbb66e2)

   &#x20;
3. Then select `Developer tools`

![](https://distilledguides.refined.site/download/attachments/749895704/Screenshot%202023-09-01%20at%2010.34.33%20AM.png)

4. On the right side menu, select `Manage API Keys`.

![](https://distilledguides.refined.site/download/attachments/749895704/Screenshot%202023-09-01%20at%2010.35.23%20AM.png)

5. In the input field section titled `Public API Key / Site ID` copy/paste your Klaviyo public API key (i.e., Site ID)

![](https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FWGEfeFvWWJsIgiAAS5K5%2FScreenshot%202025-04-24%20at%205.14.20%E2%80%AFPM.png?alt=media\&token=4956e7c1-80f7-4a02-9ae8-fd577dc1d7ed)

6. After copying the Public API Keys from your Klaviyo account into the Untitled setup configuration, navigate back to your Klaviyo Account to generate and retrieve your Private API Key.&#x20;

#### Steps to Generate and Retrieve your Private API Key

1. Toggle back to your Klaviyo account. In the section titled “Private API Keys” click the button `Create Private API Key`.

![](https://distilledguides.refined.site/download/attachments/749895704/Screenshot%202023-09-01%20at%2010.37.56%20AM.png)

2. Name the Private API Key in the top left - This can be any name you choose, we suggest an easy identifier such as “*Untitled API Keys.*”
3. **Important:** Under “Select Access Level”, select `Grant applications full access for every API scope` .
4. Click `Create` to finish.

![](https://distilledguides.refined.site/download/attachments/749895704/Screenshot%202023-09-01%20at%2010.40.34%20AM.png)

5. Copy your new Klaviyo Private API Key by selecting the `Copy` button.

![](https://distilledguides.refined.site/download/attachments/749895704/Screenshot%202023-09-01%20at%2010.47.14%20AM.png)

6. After copying the Private API Key from your Klaviyo account, navigate back to the Untitled window with to finalize configuring your Klaviyo Account.&#x20;

![](https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FWGEfeFvWWJsIgiAAS5K5%2FScreenshot%202025-04-24%20at%205.14.20%E2%80%AFPM.png?alt=media\&token=4956e7c1-80f7-4a02-9ae8-fd577dc1d7ed)

7. `Paste the Private API Key` in the correct input box ("*Labeled Private API Key"*).
8. Press `Continue` .
9. A sequence of connection tests will run automatically. If successful, a confirmation message will appear on the configuration page, letting you know it’s safe to close the window.
10. You should now see a green indicator icon for the Destination in your Untitled Destinations Tab. If so, you've successfully authenticated your Klaviyo Destination.&#x20;

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FtaxLPFHYteZlthkV2WFu%2FScreenshot%202025-04-25%20at%2010.48.01%E2%80%AFAM.png?alt=media&amp;token=41d05dd2-3cdf-4cac-9aa8-c588ac71e6d8" alt=""><figcaption></figcaption></figure>

## Sync Your Audience to Klaviyo <a href="#sync-your-audience-to-klaviyo" id="sync-your-audience-to-klaviyo"></a>

1. Navigate to the Untitled Audience Library.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FChC4jth47yF2K30tu7yZ%2FScreenshot%202025-04-25%20at%2011.11.43%E2%80%AFAM.png?alt=media&amp;token=8e1b295c-95d6-4d7c-ab34-b28aaaa06de1" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
If you still need to create your first Audience, select the Create new + button in the top right corner. Utilize the demographic, firmographic, and behavioral filters to target specific segments of your website visitors. Follow this guide to learn more - [<mark style="color:blue;">How to Build & Save Audiences in Untitled.</mark>](/audience-studio)
{% endhint %}

2. Click into the Audience you'd like to sync to Klaviyo by Select the `View` button next to the audience you want to push to Klaviyo.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2F5LUktyp5k2Vx4WC0S9Ht%2FScreenshot%202025-04-25%20at%2011.15.00%E2%80%AFAM.png?alt=media&amp;token=8fbc543b-5c02-485b-b4f6-75114098c910" alt=""><figcaption></figcaption></figure>

3. Click the `Destinations` tab and on the Klaviyo tile, select `Setup sync` .&#x20;

{% hint style="info" %}
This tile will only be available if you've successfully authenticated and connected your Klaviyo Destination to Untitled.&#x20;
{% endhint %}

4. Enter the *audience name* to confirm the list creation in Klaviyo and then click `Continue` to complete the sync setup.&#x20;

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FaOicSCJF5ype9PN76e1d%2FScreenshot%202025-04-25%20at%202.21.09%E2%80%AFPM.png?alt=media&amp;token=b58d3dad-09d4-4121-abdb-bfbeb3f0d823" alt=""><figcaption></figcaption></figure>

5. After completing this step, you’ll see a confirmation screen and a green ' ✔️ Connected' message will also appear on the Klaviyo Destination tile.&#x20;

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2F4M59wBHEvTm1AEoPmjpJ%2FScreenshot%202025-04-25%20at%202.30.17%E2%80%AFPM.png?alt=media&amp;token=dd2ca0d8-f051-4dae-b2df-f4d4cdd96e03" alt=""><figcaption></figcaption></figure>

6. Done! Your Untitled Audience has been successfully integrated with Klaviyo. The initial sync to Klaviyo may take up to five minutes to populate. Your audience will sync as a new **List** and receive updates daily at 12:15pm EST. With the audience's filter settings applied, new visitors will be continuously refreshed and added to your list automatically.

{% hint style="success" %}
You can integrate an unlimited number of saved audiences in Untitled to your Klaviyo account by repeating the last six steps. Each saved audience that is synced to Klaviyo will populate in your Klaviyo account as a **new list.**
{% endhint %}

### Suppress Potential Overwrites on Existing Klaviyo Records&#x20;

As long as you have also connected [Klaviyo as a **Source**](/integrations/sources/klaviyo) for data import, Untitled ensures that only new visitor data is transmitted to Klaviyo and handles deduplication automatically for you. However, **there is one step you'll need to complete if you'd like to prevent potential record overwrites.**

Within the Audience you plan to sync to Klaviyo, be sure to enable the "Automatically suppress Klaviyo contacts" to `YES`&#x20;

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FtYAcuSF1xkhtib1HEAMs%2FScreenshot%202025-04-25%20at%202.44.54%E2%80%AFPM.png?alt=media&amp;token=b7450c9e-d8d5-4134-bd6f-376ad6fe6038" alt=""><figcaption></figcaption></figure>

{% hint style="warning" %}
Before configuring Klaviyo as a destination for data transmission from Untitled, it's essential to establish Klaviyo as a source for data import (inflow). This initial step enables Untitled to cross-reference and avoid duplications with the profiles already present in your Klaviyo account. By connecting Klaviyo as a source, you safeguard against any unintended updates or overwrites to your existing Klaviyo profiles during the synchronization process with the destination. [<mark style="color:blue;">Follow the guide here to connect Klaviyo as a source in Untitled.</mark>](/integrations/sources/klaviyo)
{% endhint %}

## Troubleshooting Klaviyo Audience Syncs

### Understanding the "Never Subscribed" Status in Klaviyo

When working with Klaviyo, you may notice that some users are labeled with a **“Never Subscribed”** status. This designation has specific implications and behaviors within the platform.

#### **What “Never Subscribed” Means**

Klaviyo automatically marks users as **“Never Subscribed”** if they have not **explicitly opted** into your marketing emails via a Klaviyo form — for example, through a Klaviyo-managed newsletter signup form. This is common for users who:

* Were added via checkout flows or abandoned cart automations
* Interacted with your store or data source outside of a formal email opt-in process
* And lastly, for **anyone you'd resolve via the Untitled ID Tag.**&#x20;

#### **Can You Still Email These Users?**

Yes. Despite the label, **Klaviyo will allow you to send emails and flows to users marked as "Never Subscribed"** — unless double opt-in is enabled in your account settings.

#### **Why Might You Be Blocked from Emailing These Users?**

If you're encountering issues sending to these users, the most common cause is that **double opt-in is enabled in your Klayvio Account**. This setting requires users to confirm their email address before being marked as subscribed. You can toggle this off in your **Klaviyo list settings** if needed.

**When Does a User Become “Subscribed”?**

Once a user completes a purchase (and assuming your integration is properly configured), **Klaviyo will automatically update their status to "Subscribed."**

## Need Further Support or Have Additional Questions?

Check out our[ <mark style="color:blue;">FAQs</mark> ](/misc/frequently-asked-questions)to get some answers, start a chat on our [website](https://getuntitled.ai/), or get connected directly with our team [<mark style="color:blue;">here</mark>](https://getuntitled.ai/contact/).


# Klaviyo Tips and Tricks

Optional steps that help your Untitled data work more seamlessly within your Klaviyo account.

### Create a List to Trigger a Flow and use a Custom Property for Attribution

{% embed url="<https://www.youtube.com/watch?v=ZyQM88EOUm4>" %}

This video walks through the process of setting up a Klaviyo List, Flow, Custom Property, and Custom Report for use with your Untitled Audiences.

0:00 Intro\
0:15 Prerequisites\
0:33 Create a new List\
0:56 Create a new Flow\
1:15 Create a new Custom Property for Untitled Audience members\
2:32 Create a test contact in the new Flow\
3:08 Create a Custom Report for the new Klaviyo Property\
4:00 Complete the Flow\
4:09 Next Steps with Klaviyo

### Items to check when connecting Untitled data to Klaviyo

#### Existing 'unengaged' or 'sunset' flows

If you trigger exclusion lists from your campaign receipts or create segments to archive, ensure you double-check on those segment criteria. Some segments are triggered by criteria like "Have not opened an email within 30 days". When an Untitled contact is first imported to Klaviyo, they have not received any email and are sometimes added directly to an exclusion list, meaning they are never used within Klaviyo. Modifying criteria to include "And has received at least 10 emails" negates this issue.

#### Triggers for other flows, lists, and campaigns&#x20;

If you currently have strong Flows for 'viewed product' or use a criteria of 'visited site within last 7 days' for a campaign, considering using initial emails to Untitled contacts to drive more contacts into your Flows. For example, a call to action of "view our best selling products" might encourage a click that leads to a strong "Viewed Product" Klaviyo Flow. Consider how all of your Flows work together.

Related Content:

* [Creating Audiences](/audience-studio)
* [Using Klaviyo as an Untitled Destination](/integrations/destinations/klaviyo)


# Meta (Facebook Ads)

By syncing your audiences directly to Meta, your team can better automate and streamline your Facebook Ads Custom Audience and Lookalike Audience activation strategies.

## Before you Begin

### Picking Your Setup Path

We offer two methods to sync your Untitled Audience to Facebook Ads, both outlined in this guide. The paths are oAuth, where you log in with your personal Facebook account, or System User, where you create a 'profile' on Facebook that is software that can manage accounts and apps.

*For a quick start* to test Facebook Ads with Untitled data, we recommend the oAuth method. You will need to re-login every 30 days with this method, but it's easier to set up and you can always convert to a System User later.

*If you have 30 minutes* to closely follow the instructions on this page and you're already experienced with Facebook Custom Audiences, so you know you'll have an ongoing use case for them, the System User method is preferable for ongoing automation.

### Accepting Custom Audience Terms of Service

{% hint style="info" %}
Before you can sync Untitled Audiences to Meta, you’ll need to accept Meta’s Custom Audience Terms of Service if you haven’t created a custom audience in your account prior. You can use the link below to navigate directly to the relevant section to complete this in Facebook.\
\
<https://business.facebook.com/ads/manage/customaudiences/tos/>\
\
Ensure that, if you have multiple Facebook accounts, you use the account selector at the top-right of the page to select the advertising account you're going to use the custom audience with.
{% endhint %}

<details>

<summary>Terms of service webpage troubleshooting</summary>

If you are being redirected to the Ads Manager page on Facebook while trying to navigate between ad accounts on this page: <https://business.facebook.com/ads/manage/customaudiences/tos/>, you may need to append "?act=\[ad account ID]" to the URL like this:\
<https://business.facebook.com/ads/manage/customaudiences/tos?act=XXXXXXXXXXXXXXXX>

Replace the X's with your ad account ID. To find your ad account ID, visit <https://adsmanager.facebook.com/adsmanager/manage/campaigns> while logged in, and from the top drop-down, select the ad account you'd like to use with Untitled Audience syncs. The screenshot below shows where you will find the Ad account ID.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FM8WkEoDk6ilBHlysr13T%2FFind%20Facebook%20Ad%20Account%20ID.png?alt=media&amp;token=11e51d9c-7707-428e-b88f-7c6a2f8c5eca" alt=""><figcaption></figcaption></figure>

</details>

## Walkthrough Video for System User Method

{% embed url="<https://www.youtube.com/watch?v=yErM4l3cdsg>" %}

## Step-by-Step Guide

### Destination Overview

Meta (Facebook Ads) is one of the most powerful digital advertising platforms available, enabling businesses to reach their audiences across Facebook, Instagram, and the broader Meta ecosystem.\
This guide will walk you through how to configure Meta as a destination within Untitled and how to send audiences effectively for advertising activation.&#x20;

### Connection Setup <a href="#instructions" id="instructions"></a>

#### Log into Untitled  <a href="#log-into-distilled" id="log-into-distilled"></a>

1. First, log into your Untitled account.
2. Select Destinations in the left navigation menu.
3. Find Meta (Facebook Ads) and click Connect.
4. A popup modal will appear with a link. Select `Continue` and you'll be redirected to a new window.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2F1OzGSQSQH3j7BdqpFXGX%2Fimage.png?alt=media&amp;token=a28889b2-1d26-460a-96ea-ded38f958c8a" alt=""><figcaption></figcaption></figure>

5. Press `Continue` on this authentication page.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FllKCfFWnxo9AasmVtgdM%2FScreenshot%202025-04-18%20at%204.21.36%E2%80%AFPM.png?alt=media&amp;token=816c3550-b4d4-4de0-9887-190e40b20220" alt=""><figcaption></figcaption></figure>

6. Proceed with Authenticating Facebook Ads (META) via your preferred Authentication Method.&#x20;

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FoTN6DcotNeDecbSYiv0P%2FScreenshot%202025-04-18%20at%204.22.00%E2%80%AFPM.png?alt=media&amp;token=4d272dce-f858-420c-a2c5-3f4134704e63" alt=""><figcaption></figcaption></figure>

### Meta / Facebook Ads Authentication Methods

Facebook Ads supports two separate authentication mechanisms: OAuth (Login with your Facebook profile) and System User. **We recommend using System User for the most reliable connection** long term as it does not require re-authentication every 30 days. Both methods are documented in this article, so you may proceed with the option that best suits your workflow.

{% hint style="info" %}
The System User Authentication method typically takes 10–15 minutes to complete. Please plan accordingly if you choose this option.&#x20;
{% endhint %}

### **1. System User (Recommended)**

For long-term stability, we recommend using a System User, which doesn't require periodic re-authentication every 30 days. The setup steps to complete this preferred authentication method are contained below.&#x20;

#### **Steps to set up a System User—Part A, Creating an Application**

To generate a System User token, you'll first need to create an app. In the Facebook ecosystem, a custom application serves primarily to manage authentication tokens for accessing the Meta API platform.

If you don't have an app already, you can create one with the following steps:

1. Navigate to [Facebook Business Manager](https://business.facebook.com/).
2. Go to **Business Settings > Accounts > Apps**.
3. Click **Add** and select **Create New App ID**.
4. Choose `Other` for the use case.

   <figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2Fvq4qCaGtsRP408j5n7ju%2Fimage.png?alt=media&amp;token=84a90a97-af91-41d1-901c-881c71976c8d" alt=""><figcaption></figcaption></figure>
5. Then for the Type, select `Business`.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FJl0ovicr3OSDxnK83UxS%2Fimage%20(1).png?alt=media&amp;token=aeffd21d-df06-4b59-b6be-677740fce86b" alt=""><figcaption></figcaption></figure>

6. Fill out the relevant details for the app (name the app something descriptive and memorable such as '*Untitled Audience Integration*', and fill in your own email for the app contact).

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FLKkc31aZm30iSRqgLUSE%2Fcreate%20an%20app.png?alt=media&amp;token=455f63a0-75e2-4d62-a413-94ea69a2ae04" alt=""><figcaption></figcaption></figure>

Now you can move on to generating a system user for the app!

#### **Steps to set up a System User—Part B, Creating a System User for the App**

1. Go to your Business Manager and navigate to **Business Settings > Users > System Users**
2. Click **Add** to create a new System User.&#x20;
3. Assign a name and select the `Employee` role.

#### **Steps to set up a System User—Part C, Assigning the System User to the App**

1. After creating the System User, click **Add Assets**.
2. Assign the App you created in previous steps to the System User. Make sure to assign ***full control*****&#x20;(**`Manage app: True` ) of the app to the System User and then press `Save changes`.&#x20;

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FELHNj9KS9yKy0DudLvnz%2Fmanage%20app.png?alt=media&amp;token=ba3dda83-536b-4578-98b2-275b74d5174a" alt=""><figcaption></figcaption></figure>

3. You'll also need to assign your System User ***full control*** (`Manage ad accounts: True`) over any Ad Accounts that you'd like to sync Untitled data to for Custom Audiences. Once you've done so, press `Save changes`.&#x20;

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FUrQKUbDU6KyDHnnLCbK8%2Fmanage%20ad%20account.png?alt=media&amp;token=5d49b672-fcb5-4c61-a445-e554002869b4" alt=""><figcaption></figcaption></figure>

{% hint style="danger" %}
Step 3 is commonly overlooked by users during setup!\
To ensure your **Meta destination** is properly configured in Untitled, you must assign the **System User** **full control** **of the Ad Account.**
{% endhint %}

#### **Steps to set up a System User—Part D, Generating an Access Token for the System User**

1. Within the System User settings, click **Generate New Token**.
2. Select the app you created.
3. Ensure the token has the `ads_management` Permissions scope.
4. Set the token to **Never Expire** (this will prevent the need to re-authenticate your integration within Untitled every 60 days).

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FtMZuXPkrzTLoPM1Ae5hB%2Fimage%20(5).png?alt=media&amp;token=993a68d3-fb14-427e-a98f-73526e6caef3" alt="" width="375"><figcaption></figcaption></figure>

5. Press `Generate token`.
6. Save this token securely; it will be used to authenticate the connection in Untitled (see following step).
7. **Paste** the System User Token into the 'System User Token' text box field and press `Continue`.&#x20;

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FiiWCfbVLmP6mBrqKG21l%2FScreenshot%202025-04-21%20at%2011.01.08%E2%80%AFAM.png?alt=media&amp;token=7a6feedf-a161-4331-b050-bf940e7e98cf" alt=""><figcaption></figcaption></figure>

8. Once the System User has been successfully authenticated, the Facebook Ads (Meta) Destination will appear in your 'Connected Destinations' library. If the setup is complete, a green success indicator will be displayed next to the destination (see image below for reference).

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FW1SbPbUoF9EIowHCad50%2FScreenshot%202025-04-21%20at%2011.04.06%E2%80%AFAM.png?alt=media&amp;token=e85a0d78-bb68-4d63-9bd5-97d8ca8e78c5" alt=""><figcaption></figcaption></figure>

9. Once you see this green success indicator and the authentication test has been completed, feel free to close the connection bridge URL.

Now that you've successfully authenticated your Meta destination using a System User token, please proceed to the '[Syncing an Untitled Audience to Meta (Facebook Ads)](#syncing-an-untitled-audience-to-meta-facebook-a-ds)' section of this article.

### **2.  Using OAuth (**&#x4C;ogin with your Facebook Profile)

Alternatively, you can use OAuth to authenticate the Destination. However, please note that **this connection WILL EXPIRE after 30 days.** Once expired, your Untitled Audiences will no longer sync or update in Meta until the connection is re-authenticated.

#### **Steps to set up an OAuth Connection**

1. Within the initial Destination setup steps, you were asked to [open the connection bridge url link](#log-into-distilled). Navigate to this URL.&#x20;
2. Select the "Login" authentication preference

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2Fq4ACCwAlOiQSaWrGKJcR%2Flogin-fb-destination.png?alt=media&amp;token=3b0fe49d-4996-42ec-bf91-6d265a053c04" alt=""><figcaption></figcaption></figure>

3. Follow the on-screen prompts to sign in with your Facebook account and select the Ad Accounts you plan to sync Untitled Audiences to.&#x20;

{% hint style="info" %}
Note: If your user is not assigned the Manager role for the Facebook Ad Account(s) you plan to connect, you will not be able to complete this step successfully until access is granted.&#x20;
{% endhint %}

4. Once you've successfully logged in and authorized the connection, press `continue` to verify the authentication.&#x20;
5. Once the authentication test has been completed, feel free to close the connection bridge URL and proceed to the Audience Sync setup steps below.

Now that you've successfully authenticated your Meta destination using an OAuth sign-in (Login with your Facebook profile), please proceed to the '[Syncing an Untitled Audience to Meta (Facebook Ads)](#syncing-an-untitled-audience-to-meta-facebook-a-ds)' section of this article.

### Syncing an Untitled Audience to Meta (Facebook Ads)

1. Navigate to the Audience Library in your Untitled Account
2. Click on the audience you want to sync to Facebook.
3. Navigate to the "Destinations" tab within the Audience, and click `Setup sync`

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2F8aI7Cv2j2WC8KMAZaQuC%2Ffbsync-1.png?alt=media&amp;token=73a7cc68-f677-451c-ae9c-ac8cd37ab71f" alt=""><figcaption></figcaption></figure>

4. A pop-up confirmation modal will appear. Type in the audience name and then click `Continue`

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FhmxDT3XHkxJurav7X2v8%2Ffb-sync2.png?alt=media&amp;token=fa4eb2ef-2ea0-4050-b0a3-070b79a5bb13" alt=""><figcaption></figcaption></figure>

5. After completing this step, you’ll see a confirmation screen and a green ' ✔️ Connected' message will also appear on the Facebook Available Destination tile.&#x20;

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FpLgBeImmxeol1wLgG68D%2Ffb-6.png?alt=media&amp;token=21371782-129f-4979-8911-ccf220097792" alt=""><figcaption></figcaption></figure>

6. A Custom Audience will be created in Meta and will begin populating shortly with your selected Untitled Audience. Once active, you can attach it to any existing or new ad campaign to begin advertising to your target segment. The audience will automatically refresh daily at 12:15 EST in Meta from that point forward.

## Need Further Support or Have Additional Questions?

Check out our[ <mark style="color:blue;">FAQs</mark> ](/misc/frequently-asked-questions)to get some answers, start a chat on our [website](https://getuntitled.ai/), or get connected directly with our team [<mark style="color:blue;">here</mark>](https://getuntitled.ai/contact/).


# Meta Ads Tips and Tricks

### Turn off Meta's default Advantage+ Audiences in ad sets

Meta automatically applies Advantage+ settings to ad sets and audiences, which allows Facebook to expand beyond your selected audience and determine who it believes is most likely to respond to your ads.

When testing Untitled Audiences, especially against existing Meta-derived audiences, we recommend disabling Advantage+ at the ad set level. This ensures the Untitled ad set is targeting only the audience built from your selected filtering criteria, rather than allowing Meta to expand or modify that audience.

{% hint style="info" %}
If you’re using an Untitled Intent Topic Audience, you should always disable Advantage+ audience settings.

The common trait within these audiences is the **intent signal itself**: open-web content consumption and research related to a specific topic. That signal is used by Untitled to build the audience, but it is not passed to Meta when the audience is synced to Facebook Ads. As a result, Meta’s Advantage+ system cannot understand or accurately model the behavior that qualified someone for the audience in the first place.

Allowing Meta to expand the audience will therefore dilute the intent signal you specifically selected.
{% endhint %}

### Step 1

\
During campaign setup, in the ad set portion, look for the `Advantage+ audience` section and click `Further limit the reach of your ads`.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2F8PKB2bQgqn9nOb7OGitp%2Fturning-off-advantage-plus.jpg?alt=media&amp;token=86b9fd75-7a45-47c8-af6f-ca98cda80b0a" alt=""><figcaption></figcaption></figure>

### Step 2

A new popup will open. Select <kbd>Further limit the reach of your ads</kbd>.  Click <kbd>Continue</kbd>.

{% hint style="warning" %}
"Further limit the reach of your ads" can sound a little intimidating the first time you disable Advantage+, but Meta is simply asking you to confirm that you understand the audience you’re targeting and that the audience size is appropriate for your campaign budget.
{% endhint %}

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FOUv1VeiABobMxWtKjjT8%2FAdvantage%20Plus%20Turn%20Off%207-31-26.png?alt=media&amp;token=fd9a665f-a365-487b-9c49-333f91cc71c9" alt=""><figcaption></figcaption></figure>

### Step 3

With the `Advantage+ audience` settings now turned off, locate the `Custom audience` section and search for your Untitled audience under `Customer List`\
\
Do NOT select the checkbox, `Use as a suggestion`. Keep this unchecked to ensure you’re only targeting those within your Custom Audience.&#x20;

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FJ4b5pnnCXGnhfnue7scm%2Fattach-custom-audience.png?alt=media&amp;token=e8c3d910-bb30-4e60-ab60-ded5571ba78c" alt=""><figcaption></figcaption></figure>


# Google Sheets

Syncing segmented audiences to Google Sheets enables you to organize and manage your audience data conveniently in a spreadsheet format.

## Walkthrough Video: Creating and Syncing to a New Sheets Workbook <a href="#distilled-to-google-sheets-integration-overview" id="distilled-to-google-sheets-integration-overview"></a>

{% embed url="<https://youtu.be/1jEpMm6nn3A>" %}

## Walkthrough Video: Syncing an Additional Audience to an Existing Sheets Workbook <a href="#distilled-to-google-sheets-integration-overview" id="distilled-to-google-sheets-integration-overview"></a>

After you've set up Google Sheets as a Destination within Untitled, adding new Audiences to new tabs within the Google Sheets Workbook can help keep everything organized in a single shareable, downloadable document for your team.

{% embed url="<https://youtu.be/9xy9giz_Ud0>" %}

## Destination Overview <a href="#distilled-to-google-sheets-integration-overview" id="distilled-to-google-sheets-integration-overview"></a>

This user guide will walk you through the process of syncing segmented audiences from your platform to Google Sheets effectively. When configuring Google Sheets as your destination in Untitled, **all audiences will be sent to a** **single Google Sheet**. Each audience will have its own **separate tab within the sheet**.&#x20;

When you set up a new audience to sync with your Google Sheets destination, you'll be asked to create a new tab in the linked Google Sheet file. You'll then need to share the URL link to that specific tab with Untitled to complete the syncing process. We recommend naming each sheet tab with the exact title of the corresponding Untitled audience being synced to that tab.

### Table Structure in Google Sheets <a href="#table-structure-in-google-sheets" id="table-structure-in-google-sheets"></a>

{% hint style="warning" %}
All file types included in your audience filters will be combined into a **single table** in your Google Sheet. See the combined table structure and column order from Untitled to Google Sheets in the next section below.
{% endhint %}

The column titled “match\_type” will indicate whether a lead is B2B, B2C, or PTE. The location of the email field for each lead type is outlined in the table below:

| Lead Type | Email Address Column     | Column Number |
| --------- | ------------------------ | ------------- |
| B2B       | business\_email          | 3             |
| B2C       | personal\_email          | 41            |
| PTE       | email email\_address\_lc | 22            |

<details>

<summary>Google Sheet Column Ordering</summary>

1. activity\_date
2. age\_range
3. business\_email
4. business\_email\_last\_seen
5. children
6. client
7. company\_address
8. company\_address\_2
9. company\_city
10. company\_domain
11. company\_employee\_count
12. company\_linkedin\_url
13. company\_name
14. company\_phone
15. company\_revenue
16. company\_sic
17. company\_state
18. company\_zip4
19. company\_zip
20. department
21. direct\_number
22. email email\_address\_lc
23. event\_date
24. external\_id
25. first\_name
26. gender
27. hem
28. homeowner
29. income\_range
30. ip\_address
31. job\_title
32. last\_name
33. linkedin\_url
34. married
35. **match\_type\***
36. net\_worth
37. page\_url
38. personal\_address
39. personal\_address\_2
40. personal\_city
41. personal\_email
42. personal\_email\_last\_seen
43. personal\_state personal\_zip4
44. personal\_zip primary\_industry
45. professional\_address
46. professional\_address\_2
47. professional\_city
48. professional\_state
49. professional\_zip4
50. professional\_zip
51. referer\_url
52. seniority\_level
53. unix\_timestamp

</details>

***

## Connection Instructions <a href="#instructions" id="instructions"></a>

### Starting Out  <a href="#log-into-distilled" id="log-into-distilled"></a>

1. First, log into your Untitled account.
2. Select `Destinations` in the left navigation menu.
3. Find **Google Sheets** and click `Connect` on the Destination Card.&#x20;
4. A popup will appear prompting you to name your Google Sheet Destination. Make it something descriptive like "Untitled G-Sheet Audience&#x73;*"* and then select `Connect`&#x20;

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FwYFyNcuiR0edJLBKesrY%2FScreenshot%202025-05-16%20at%202.46.28%E2%80%AFPM.png?alt=media&amp;token=07e904c6-230f-47f2-ad0c-0c6655a0ba24" alt=""><figcaption></figcaption></figure>

5. Another popup modal will appear informing you the Google Sheet Destination is ready to be authenticated. Select `Continue` - you will be redirected to a new window.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2Fv9FzVeF1LYgzpPzjUJ7W%2FScreenshot%202025-05-16%20at%202.49.20%E2%80%AFPM.png?alt=media&amp;token=09f009d6-35d3-41c5-ae47-0593f3aed49a" alt=""><figcaption></figcaption></figure>

6. In the new window, first select `Continue` to allow a connection to Google Sheet&#x73;**.**

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FPyUAMeICgQnH8Mw7xLjd%2FScreenshot%202025-05-16%20at%202.49.34%E2%80%AFPM.png?alt=media&amp;token=22ce714e-b0cc-483e-a6fb-d416f034b989" alt=""><figcaption></figcaption></figure>

7. Next, you will be asked to share access to your Google Sheet. **First,** `copy` **the provided email** (press the icon on the far right of this email field for easy copy/paste of the full email url).

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FkN8hQhPq69gGwwk0rGqB%2FScreenshot%202025-05-16%20at%202.53.01%E2%80%AFPM.png?alt=media&amp;token=991eb7e7-cbf4-4130-b8af-1f3a85664d6d" alt=""><figcaption></figcaption></figure>

8. **Keep this window open,** create a new tab or window, and login to Googl&#x65;**.**

### Configure Google Sheet Access to Untitled <a href="#configure-google-sheet-access-to-distilled" id="configure-google-sheet-access-to-distilled"></a>

1. Log in to your Google account and create a new Google Sheet file.
2. In the top right corner, select the `Share` button for the file
3. **Paste the email** you copied from the Untitled window, ensure "**Editor"** access is being granted, and hit `Send`&#x20;

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FHdPTw0HEmQeV5dUGFtYk%2FScreenshot%202025-05-16%20at%202.57.41%E2%80%AFPM.png?alt=media&amp;token=b019d5ad-6a8d-44ef-91bd-a4009635c6be" alt=""><figcaption></figcaption></figure>

4. Depending on your organizations Google access controls, you may be asked to confirm the external share. Click `Share anyway`

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2Fn4n9qt2sTONHay58Sxin%2FScreenshot%202025-05-16%20at%202.57.57%E2%80%AFPM.png?alt=media&amp;token=0eaab5db-ca2a-4be2-b565-1df6631a79db" alt=""><figcaption></figcaption></figure>

5. Navigate back to the previous window (where you copy/pasted the census email from) and click `Continue` to begin the authentication test.&#x20;
6. Wait for the **success** message to appear. Select `Finish` once the connection has successfully tested.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FXdeHW59IHBsmdrFO4KFU%2FScreenshot%202025-05-16%20at%203.02.07%E2%80%AFPM.png?alt=media&amp;token=7799f19d-b48b-4fab-a2a8-67d864d94994" alt=""><figcaption></figcaption></figure>

7. You can now safely close this window and being Syncing Audiences to your Google Sheet Destination!&#x20;

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FnZSLBAISgCqDQJo4zKEu%2FScreenshot%202025-05-16%20at%203.03.24%E2%80%AFPM.png?alt=media&amp;token=5687a3ab-ef02-4963-892f-b559ace12604" alt=""><figcaption></figcaption></figure>

Once your sheet is successfully connected, you'll see a green indicator icon next to the Google Sheets Destination card as shown in the example below

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FdoF9vRd5ynyZYokcjujk%2FScreenshot%202025-05-16%20at%203.13.17%E2%80%AFPM.png?alt=media&amp;token=a93b7f1a-2346-42f8-9933-0c4680b49c57" alt=""><figcaption></figcaption></figure>

## Sync Your Audience to Google Sheets <a href="#sync-your-audience-to-google-sheets" id="sync-your-audience-to-google-sheets"></a>

1. Navigate back to Untitled and secelect the **Audiences** page
2. Select the `View` button next to the audience you want to push to Google Sheets (or click `Sync to destination` if it's a brand new audience with no existing destinations attached)

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2F962uuvXVnu04oQkylTKT%2FScreenshot%202025-05-16%20at%203.11.25%E2%80%AFPM.png?alt=media&amp;token=fff7c8e0-c434-4418-badf-9c980648f54b" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
If you still need to create your first Audience, select the **Create new +** button in the top right corner. Utilize the demographic, firmographic, and behavioral **filters** to target specific segments of your website visitors. Follow this guide to learn more -[ <mark style="color:blue;">How to Build & Save Audiences in Untitled.</mark>](/audience-studio)
{% endhint %}

3. Click the `Destinations` tab of the Audience
4. Locate the Google Sheet you want to connect (e.g. if you have multiple connected, they will all appear here), and select `Setup sync` on the Destination Card

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FguM1kdOuAoH5gTQAgsBv%2FScreenshot%202025-05-16%20at%203.16.51%E2%80%AFPM.png?alt=media&amp;token=52b5edbe-9b47-4f75-823b-0783708607eb" alt=""><figcaption></figcaption></figure>

5. IMPORTANT: You must select from the drop down "Select your sheet" > this will populate the available Spreadsheet TABS in your Google Sheet. If you do not see the desired tab from the drop down, try clicking the refresh icon. Once you've located the tab you want to sync data to, click `Continue`&#x20;

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2F63jU9fwpnav3a1Ya4gsg%2FScreenshot%202025-05-16%20at%203.22.29%E2%80%AFPM.png?alt=media&amp;token=39adb527-5082-43e8-bba3-742c6bab6085" alt=""><figcaption></figcaption></figure>

6. Once you've clicked continue, you'll see the initial sync message on the Destination card. The initial sync to Google Sheets may take up to 5 minutes to populate.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FNmnU34LmZZCLQUCQOfpT%2FScreenshot%202025-05-16%20at%203.23.23%E2%80%AFPM.png?alt=media&amp;token=e1ea10f7-3388-4fcc-8d79-760e6b54788d" alt=""><figcaption></figcaption></figure>

7. Once the initial sync has been completed, you should see the green indicator message next to the sync status message letting you know that the sheet will now sync resultant audience data daily at 12:15 PM ET.&#x20;

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FmIxJj3hCbdF68qQa3zRD%2FScreenshot%202025-05-16%20at%204.31.20%E2%80%AFPM.png?alt=media&amp;token=770b4702-082e-40d2-9e7c-7e673f6736c4" alt=""><figcaption></figcaption></figure>

Proceed to the next section in the event you would like to connect additional audiences to the SAME Google Sheet you just completed setting up as an Untitled Destination.&#x20;

### New Audience Syncs to the Same Google Sheet

{% hint style="warning" %}
**NOTE** - When configuring Google Sheets as your destination in Untitled, all audiences will be sent to the **single Google Sheet** you connected during the destination setup process. However, each audience will have its own separate tab within the sheet via following the instructions below.&#x20;
{% endhint %}

**Each time you setup a new audience to sync with your Google Sheets destination, complete the steps below**:

1. Open your linked Google Sheet file and **create a new Sheet tab**.&#x20;
   1. We recommend naming each sheet tab with the **exact title of the corresponding Untitled audience being synced to that tab**.
2. Select `Setup sync` on the Google Sheet Card from within the Destination view inside of the Audience you intend to sync.
3. Select the specific **Sheet tab** that you would like to sync your audience to (see Step 5 in the previous section for what to do if you're new Sheet tab does NOT appear in the "Select your sheet" drop down list).&#x20;
4. Press `Continue` to Complete Setup.&#x20;

**Done!** Your audience has been successfully integrated with Google Sheets. The initial sync to Google Sheets may take up to 5 minutes to populate.

### Sync Schedule <a href="#sync-schedule" id="sync-schedule"></a>

Your audience will push updates daily at **12:15 pm EST**. With the audience's filter settings applied, new visitors that meet the filter criteria will be continuously refreshed and added to your list automatically.

You can integrate an unlimited number of saved audiences in Untitled to your Google Sheet file by repeating the last seven steps.

## Need Further Support or Have Additional Questions?

Check out our[ <mark style="color:blue;">FAQs</mark> ](/misc/frequently-asked-questions)to get some answers, start a chat on our [website](https://getuntitled.ai/), or get connected directly with our team [<mark style="color:blue;">here</mark>](https://getuntitled.ai/contact/).


# Zapier Workflows

{% hint style="info" %}
test
{% endhint %}

## Need Further Support or Have Additional Questions?

Check out our[ <mark style="color:blue;">FAQs</mark> ](/misc/frequently-asked-questions)to get some answers, start a chat on our [website](https://getuntitled.ai/), or get connected directly with our team [<mark style="color:blue;">here</mark>](https://getuntitled.ai/contact/).


# Hubspot

Enhance your sales process by syncing web visitors directly to your leads and contacts.

{% hint style="info" %}
Hubspot must be connected as a Source before you can connect it as a Destination. [View our guide for Source setup here.](/integrations/sources/hubspot)
{% endhint %}

## Video Walkthrough <a href="#distilled-to-hubspot-integration-overview" id="distilled-to-hubspot-integration-overview"></a>

{% embed url="<https://youtu.be/_IX_jNz8nxA>" %}

## Destination Overview <a href="#distilled-to-hubspot-integration-overview" id="distilled-to-hubspot-integration-overview"></a>

#### Sync Schedule <a href="#sync-schedule" id="sync-schedule"></a>

Each record in your audience will appear as a new Contact in HubSpot. With the audience's filter settings applied, new visitors will be continuously refreshed and added to your audience automatically. New records entering your audience will automatically sync to HubSpot daily at 12:15 pm EST.

#### Suppression Settings <a href="#suppression-settings" id="suppression-settings"></a>

Suppressing HubSpot contacts in your destination settings ensures only fresh visitor data is transmitted, avoiding duplicate records in your CRM. During setup, Untitled requires that you enable the HubSpot suppression settings for audiences intending to sync to HubSpot. Once activated, Untitled automatically handles duplicate suppression before syncing your audience data to HubSpot.

![Source Suppression](https://distilledguides.refined.site/download/attachments/794525697/Destinations_-_Hubspot_10.png)

#### Mapping Rules between Untitled and HubSpot <a href="#mapping-rules-between-distilled-and-hubspot" id="mapping-rules-between-distilled-and-hubspot"></a>

Untitled records will appear as new Hubspot Contacts with the following properties. Below are the mapping rules from Untitled to HubSpot.

![Hubspot Mapping](https://distilledguides.refined.site/download/attachments/794525697/Destinations_-_Hubspot_mapping.png)

#### Sorting Leads in HubSpot <a href="#sorting-leads-in-hubspot" id="sorting-leads-in-hubspot"></a>

Easily group and identify leads pushed to HubSpot based on the Original Source property. When leads are pushed from Untitled to HubSpot, the following HubSpot properties will auto-populate for each Contact record:

1. Original Source = “Offline sources”
2. Original source drill-down 1 = INTEGRATION
3. Original source drill-down 2 = Census

Sending your saved audiences from Untitled to HubSpot allows you to automate data transmission directly to your customer relationship management (CRM) platform. The following guide provides step-by-step instructions to help you seamlessly connect Untitled to HubSpot as a destination.

## Connection Setup <a href="#prerequisites" id="prerequisites"></a>

### Prerequisites  <a href="#prerequisites" id="prerequisites"></a>

Start here! To ensure success, please ensure the following prerequisites are complete before proceeding.

#### Super Admin access to HubSpot Account <a href="#super-admin-access-to-hubspot-account" id="super-admin-access-to-hubspot-account"></a>

To authorize HubSpot as a destination in Untitled, you'll require Super Admin credentials to your HubSpot account. If you do not have Super Admin privileges, you can either work with your team to adjust your access level or share these instructions with an existing Super Admin for assistance.

#### Authorize HubSpot as a Source <a href="#authorize-hubspot-as-a-source" id="authorize-hubspot-as-a-source"></a>

Before configuring HubSpot as a destination for data transmission from Untitled, you will be required to establish HubSpot as a source for data import (inflow). This initial step enables Untitled to cross-reference and suppress duplications with the profiles already present in your HubSpot account. By connecting HubSpot as a source, you safeguard against any unintended updates or overwrites to your existing HubSpot profiles during the synchronization process with the destination.[ Follow the guide here to connect HubSpot as a source in Untitled.](/integrations/sources/hubspot)

### Instructions <a href="#instructions" id="instructions"></a>

#### Connect HubSpot as a Destination <a href="#connect-hubspot-as-a-destination" id="connect-hubspot-as-a-destination"></a>

1. First, log into your Untitled account.
2. Select Destinations in the left navigation menu.
3. Find Hubspot and click Connect.
4. A popup will appear with a link. Select Continue - you will be redirected to a new window.

![Destination Connection Prompt](https://distilledguides.refined.site/download/attachments/794525697/Destinations_-_Klaviyo_6.png)

5. In the new window, first select Continue to allow a connection to Hubspot.
6. Next, you will be asked to login to your Hubspot account. Select Login and keep this window open.

![Census Authorization](https://distilledguides.refined.site/download/attachments/794525697/Destinations_-_Hubspot_2.png)

7. After selecting Login, follow the prompt to Sign in to your Hubspot account

![Account Sign In](https://distilledguides.refined.site/download/attachments/794525697/Destinations_-_Hubspot_3.png)

8. Enter your Hubspot credentials and select the account you would like to integrate with Untitled.

To authorize HubSpot as a destination in Untitled, you'll require Super Admin credentials to your HubSpot account. If you don't have Super Admin privileges, you can either adjust your access level or share these instructions with an existing Super Admin for assistance.

![](https://distilledguides.refined.site/download/attachments/794525697/Destinations_-_Hubspot_4.png)

9. After the Test Connection is successful, select Finish. You will then be redirected back to your Untitled account.

![Finished Window](https://distilledguides.refined.site/download/attachments/794525697/Destinations_-_Hubspot_5\(1\).png)

Nice work! You have now authorized HubSpot as a destination in Untitled. You are now ready to schedule one of your audiences to sync to Hubspot. Follow the steps below to get started.

## Syncing Untitled Audiences

#### Select the Audience to Sync to HubSpot <a href="#select-the-audience-to-sync-to-hubspot" id="select-the-audience-to-sync-to-hubspot"></a>

1. On the left navigation menu, select the Audiences tab to view your list of saved audiences.
2. Select the View button next to the audience you want to push to Hubspot

If you still need to create your first Audience, select the Create new + button in the top right corner. Utilize the demographic, firmographic, and behavioral filters to target specific segments of your website visitors. Follow this guide to learn more -[ How to Build & Save Audiences in Untitled.](/audience-studio)

3. Go to the Destinations tab of your saved audience.
4. Under HubSpot, select Setup sync

#### Confirm Suppression Settings & Setup Audience Sync <a href="#confirm-suppression-settings-and-setup-audience-sync" id="confirm-suppression-settings-and-setup-audience-sync"></a>

If you have not setup Hubspot as a source for data import, you will be prompted to authorize HubSpot as a source before moving forward. For step-by-step instructions, reference the guide [here](/integrations/sources/hubspot).

1. Select Setup Sync to Hubspot. Follow the prompt to Update and Refresh the Audience with the required suppression settings. You may have to wait up to one minute for your audience to refresh.

![Audience Update & Refresh](https://distilledguides.refined.site/download/attachments/794525697/Destinations_-_Hubspot_6_2.png)

2. Note: When you confirm to Update and Refresh the Audience, Untitled will automatically apply the necessary suppression settings to your audience. This settings update will be visible in the section titled Source Suppression. You can now proceed to the next step.

<figure><img src="https://distilledguides.refined.site/download/attachments/794525697/Destinations_-_Hubspot_10.png" alt=""><figcaption><p>Suppression Settings</p></figcaption></figure>

3. Select Setup sync again. Enter the Audience name to confirm the integration and hit Continue

![Audience Name Verification](https://distilledguides.refined.site/download/attachments/794525697/Destinations_-_Hubspot_7.png)

Done! Your saved audience has been successfully integrated with Hubspot. You can integrate an unlimited number of saved audiences in Untitled to your HubSpot account by repeating the previous steps. Proceed to the next section for additional workflow recommendations within Hubspot to get the most out of your Untitled Audience.&#x20;

## Untitled Audience Workflows in Hubspot

Prerequisites: Ensure your desired audience is synced from Untitled to HubSpot.

#### Part A: Create an Active Segment (formerly called List) in HubSpot

1. Log in to your HubSpot account.
2. Navigate to **CRM > Segments** and click **Create segment**.
3. Choose **Create a segment of Contacts**, then click **Next**.

#### Part B: Set the Filter Criteria

Untitled populates two additional Contact Properties when it syncs data: Membership Notes and Record Source Detail 1. Membership Notes populates with the Untitled Audience name, and Record Source Detail 1 populates with "Census". You can use either property to identify Untitled-synced contacts.

1. In the **Filter Group**, click **Edit filter**.
2. Select the filter type: **Contact properties**.
3. Search for and select the property named **Record source detail 1**.
4. Set the filter condition to **is equal to any of**.
5. In the value field, type: `Census`\
   *(This is the identifier used for records synced from Untitled — see screenshot if available.)*

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FgQDFMdVUtt790MroPO4S%2FScreen%20Shot%202025-05-20%20at%2011.50.45%20AM.png?alt=media&amp;token=97e8cfca-575c-46ba-8267-66d8ddee92bc" alt=""><figcaption></figcaption></figure>

6. You should now see your synced contacts populate in the segment preview.
7. Save your segment and give it a recognizable name.

#### Part C: Use the List as a Workflow Trigger

1. Navigate to **Automation > Workflows**.
2. Create a new workflow (or open an existing one).
3. For the enrollment trigger, choose **Data Values > Segment membership changed  > Added to segment**.
4. Select the Active Segment you just created (in Part B).

#### Part D: Build Your Workflow

* Add emails and actions as desired.
* Use **branching logic** to segment users based on additional attributes or behaviors coming from the Untitled ID Tag.

## Need Further Support or Have Additional Questions?

Check out our[ <mark style="color:blue;">FAQs</mark> ](/misc/frequently-asked-questions)to get some answers, start a chat on our [website](https://getuntitled.ai/), or get connected directly with our team [<mark style="color:blue;">here</mark>](https://getuntitled.ai/contact/).


# Google Ads

Use an Untitled Audience as an auto-updating Customer List within Google Ads, retargeting visitors to your site on search, display, and video across the web.

## Destination Overview

Google Ads is a leading ad platform to reach customers with search, display, and video ads across the internet, often using audience data provided by Google. Using Untitled, though, you can capture your own website visitor data and use that to target potential customers more efficiently and with more control.

This guide will walk you through how to link a Google Ads Customer List with a Google Sheet that is populated with your Untitled Audience.

## **Prerequisites**

To connect your Untitled Audience to your Google Ads account, you will need:

* An Untitled Audience with at least 2,000 members. [Learn more about building Audiences.](/audience-studio)
* That Audience synced to a Google Sheets Destination within Untitled. [Learn how to sync an Untitled Audience to Google Sheets.](/integrations/destinations/google-sheets)
* Access to, or ownership of, that Google Sheet from the same account that manages the Google Ads account, so the data can be connected between the two.

## Walkthrough Video

{% embed url="<https://www.youtube.com/watch?v=F8EM5YItNbY>" %}

## **Step-by-Step Guide with Images**

Coming soon! Need it faster? [Email us at support@getuntitled.ai](mailto:support@getuntitled.ai) and let us know!


# Mailchimp

Connect the powerful automations, audiences, and campaigns of Mailchimp to your Untitled audiences for automated growth of your email marketing lists.

## Destination Overview

Mailchimp is a leading platform for email marketing and automation, enabling businesses to manage audiences, design campaigns, and drive engagement through targeted email communications.

This guide will walk you through how to configure Mailchimp as a destination within Untitled and how to send audiences effectively for ongoing marketing activation and lifecycle email workflows.

## **Prerequisites**

To connect your Mailchimp account to Untitled, you will need:

* Access to your Mailchimp account.
* An audience within Mailchimp that can be populated with your Untitled resolutions. It can be an empty audience, but you will need a destination for the new users.
* Admin, manager, or owner-level permissions within your Mailchimp account.

## Walkthrough Video

{% embed url="<https://www.youtube.com/watch?v=tMD-Xzciv5Q>" %}

## **Step-by-Step Guide with Images**

### **Authenticating Mailchimp as a Destination**

#### **Log into Untitled**

1. Log into your Untitled account.
2. Select `Destinations` in the left navigation menu under **"Management"**.
3. Click `Connect` in the upper-right of the window and select **"Mailchimp"** from the dropdown menu.
   1. Alternatively, you can click `Connect` directly on the Mail Chimp Destination Card
4. Give your Destination a name like *Untitled Mailchimp* and click `Connect.`

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2Fh1Ss1IWgMVSFBoJE9nLb%2Fpage_1_img_1.png?alt=media&#x26;token=f438fa9b-a0b7-4f60-a7ee-e247c8b9bcae" alt=""><figcaption></figcaption></figure>

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FndlQ3rsGcSXdvgWiPm1m%2FScreenshot%202025-05-16%20at%2010.55.14%E2%80%AFAM.png?alt=media&#x26;token=51c27e22-2c81-4496-bd85-eac8377a2dfb" alt=""><figcaption></figcaption></figure>

5. A popup modal will appear with a link. Select `Continue` and a new tab will open, asking you for permission to continue with Census to connect to and configure your Mailchimp account.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FAyKQyqh5GnqjIZxIQLAq%2FScreenshot%202025-05-16%20at%2010.55.53%E2%80%AFAM.png?alt=media&#x26;token=72dd68aa-7412-4de9-ab2e-244f9c241614" alt=""><figcaption></figcaption></figure>

6. Click `Continue` from this page.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2F711UMk5BtuB01YGDiD4R%2FScreenshot%202025-05-16%20at%2010.56.15%E2%80%AFAM.png?alt=media&#x26;token=2ee5f590-4b03-401e-a03e-20e915421b7b" alt=""><figcaption></figcaption></figure>

7. Click `Continue` again, at which point the MailChimp Login screen will open.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FQwHA9ETiLyrNkQWzGST5%2FScreenshot%202025-05-16%20at%2010.56.36%E2%80%AFAM.png?alt=media&#x26;token=abba3497-5d2c-4e52-9256-bb6ed385c9b6" alt=""><figcaption></figcaption></figure>

You're now moving to the second portion of authenticating Mailchimp as a Destination in your Untitled account.

***

#### **Log into Mailchimp**

1. Log in to your Mailchimp account on the **"Log in and authorize"** page.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FUjkmNK8GcnAooNKaGd1D%2FScreenshot%202025-05-16%20at%2010.56.57%E2%80%AFAM.png?alt=media&#x26;token=01b305cd-11c3-40f3-a4e0-aad01adcd546" alt=""><figcaption></figcaption></figure>

2. Click `Allow` to enable the data sync between your Untitled resolutions and Mailchimp via Census.
3. The app will now test the connection between Untitled and Mailchimp. There are two steps:
   1. Verify service connectivity
   2. Load objects

{% hint style="info" %}
These steps may take 5–10 minutes to complete. Click **"Finish"** on this page when the connection testing has completed.
{% endhint %}

If you've successfully connected the Mailchimp Destination, you'll see a green indicator icon on the Mailchimp card in your "Connected Destinations" dashboard. If this is the case, feel free to close the authentication tab in your browser from the previous steps.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FGJdy9jhZsunV3JaEAM9v%2FScreenshot%202025-05-16%20at%2011.10.28%E2%80%AFAM.png?alt=media&#x26;token=e9550c90-519e-4329-a727-5221e76808f8" alt=""><figcaption></figcaption></figure>

***

### **Sync Untitled Audiences to Mailchimp**

Now that you are back in the Untitled dashboard, you should see a success message in the **"Management" > "Destinations"** area of the dashboard. Click `Explore my audiences` to navigate to the Audiences page of Untitled.

1. Within the **"Audience"** page, click the `Destination` tab. Your available destinations, including Mailchimp, should appear.
2. Click `Setup sync` and a popup will appear. From the dropdown list available, click the Mailchimp audience that you'd like to sync your Untitled audience to and click `Continue`.
3. The Untitled audience will start to sync to your Mailchimp account, and this may take 3 to 5 minutes, depending on how large the audience is.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FfFKWTKBFxhbBGePSBuxL%2Fpage_2_img_1.png?alt=media&#x26;token=8588a530-6d81-46e3-abd3-85dcfcf58a6a" alt=""><figcaption></figcaption></figure>

***

### **Automate Additional Tags in Mailchimp**

When your Untitled audience is added to Mailchimp, the Untitled audience name will be applied as a *Mailchimp tag* to each imported contact. **If you'd like to automatically add additional tags to this audience, follow the steps below to create a Mailchimp Automation:**

1. Click `Automations` and then `All Journeys` in the left-side navigation of Mailchimp. Then click `Build from Scratch` at the top of the screen.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2Fc4oUT94cSCRh2K1Vp9C6%2Fpage_3_img_1.png?alt=media&#x26;token=25c5bcac-2a47-4d16-bf9f-484470d33391" alt=""><figcaption></figcaption></figure>

2. Name the journey something like **"Untitled auto tagging** `[Insert Your Untitled Audience name]`**"** and select the Mailchimp audience that you're syncing your Untitled audience to.
3. Select the starting point `Tag added`.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2F6K9zBFie7eVxWH4BfVGL%2Fpage_4_img_1.png?alt=media&#x26;token=ea293e62-79e3-4762-948b-966da70e7a4f" alt=""><figcaption></figcaption></figure>

4. The starting point tag is going to be the Untitled audience name that is automatically applied to the audience synced from Untitled. Select that tag and click `Save Starting Point`.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2F2DcgCoFuu5fB8PEsAEE4%2Fpage_5_img_1.png?alt=media&#x26;token=95a02a34-d718-45ec-a206-1710fd10ff1c" alt=""><figcaption></figcaption></figure>

5. On the right side of the screen, click `Add a journey step` and from the drop down list, scroll and select `Tag/Untag`.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2F0SCsyxBYpksiMWmjrj4e%2Fpage_5_img_2.png?alt=media&#x26;token=df2f8893-82d5-4da9-b638-fe1f3464edeb" alt=""><figcaption></figcaption></figure>

6. Select the tag you want to add to the contacts and select `Add` as the action for the automation and click `Save`. Repeat the steps for adding journey steps and tags as many times as you wish to get your synced audience tagged.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2Fgjz4mR3MvR5G1YzkUSeC%2Fpage_6_img_1.png?alt=media&#x26;token=8a0d65e2-8dd9-4c30-86f3-a0dca1cb67a1" alt=""><figcaption></figcaption></figure>

{% hint style="success" %}
Now when your Untitled resolutions sync to your Mailchimp audience, they should be automatically tagged however you've set up the automation.
{% endhint %}


# LinkedIn Ads

Use an Untitled Audience as an auto-updating LinkedIn Ads Matched Audience List, retargeting visitors to your site across the LinkedIn advertising network.

## Destination Overview

LinkedIn Ads is a leading platform for reaching professionals with targeted campaigns across feed, InMail, and display inventory, often leveraging LinkedIn’s own audience data. With Untitled, however, you can capture first-party data from your website visitors and use it to target potential customers with greater efficiency and control.

This guide will walk you through how to connect a LinkedIn Ads Matched Audience with a Google Sheet that’s automatically populated by your Untitled Audience.

## **Prerequisites**

To connect your Untitled Audience to your LinkedIn Ads account, you will need:

* An Untitled Audience with at least 400 members. [Learn more about building Audiences.](/audience-studio)
* A LinkedIn Advertising account.
* That Audience synced to a Google Sheets Destination within Untitled. [Learn how to sync an Untitled Audience to Google Sheets.](/integrations/destinations/google-sheets)
* Access to, or ownership of, that Google Sheet.

## Walkthrough Video

{% embed url="<https://www.youtube.com/watch?v=W8RJOo_CTNE>" %}

### **Formula structure used in the Formatter step**

The structure of the formula in the Formatter Step of Zapier is below. You will need to delete everything between the braces \[ ] , including the braces, and type the forward-slash (/) key to select a field from your Google Sheet to use in the formula.

`IF(NOT(ISBLANK("[type /email field here]")), "[type /email field here]", IF(NOT(ISBLANK("[type /personal_email here]")), "[type /personal_email here]", "[type /business_email here]"))`

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FLhx3sD8Dl3g8gw25OhbZ%2FZapier%20Formatter%20Paste%20Gif.gif?alt=media&amp;token=f1a916e8-71b8-4a73-9a36-9c86a186031d" alt=""><figcaption></figcaption></figure>

## **Step-by-Step Guide with Images**

Coming soon! Need it faster? [Email us at support@getuntitled.ai](mailto:support@getuntitled.ai) and let us know!


# Pinterest


# TikTok Ads


# Custom Connections

Integrate Untitled into your existing CDPs, workflows, and business intelligence platforms via our Database Connector.

{% hint style="info" %}
This is a feature exclusively for enterprise accounts. If you'd like to enable the custom connection for your account, please contact your customer success manager or <support@getuntitled.ai>
{% endhint %}

## Database Connection Overview

Untitled offers a premium feature that grants users access to a managed data warehouse, enabling integration at the data layer. All raw visitor data collected via the Untitled ID tag is exposed through a client-specific database connection, which can be accessed using the credential set available in your portal.

Follow one of the step-by-step guides below to test your connection to the Untitled database using a common method, and refer to the accompanying [documentation for schema and table structure](/custom-connections/schema-overview) details.

<table data-view="cards"><thead><tr><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td>Postgres Database</td><td><a href="/custom-connections/postgres-database">Postgres Database</a></td></tr><tr><td>Athena Database (legacy)</td><td><a href="/custom-connections/athena-database-legacy">Athena Database (legacy)</a></td></tr></tbody></table>

## Need Further Support or Have Additional Questions?

Check out our[ <mark style="color:blue;">FAQs</mark> ](/misc/frequently-asked-questions)to get some answers, start a chat on our [website](https://getuntitled.ai/), or get connected directly with our team [<mark style="color:blue;">here</mark>](https://getuntitled.ai/contact/).


# Postgres Database

Integrate Untitled into your existing CDPs, workflows, and business intelligence platforms via our Postgres Database Connector.

{% hint style="info" %}
This is a feature exclusively for enterprise accounts
{% endhint %}

## Database Connection Overview

Untitled offers a premium feature that grants users access to a managed data warehouse, enabling integration at the data layer. All raw visitor data collected via the Untitled ID tag is exposed through a client-specific Postgres database connection, which can be accessed using the credential set available in your portal.

Follow the step-by-step guide below to test your connection to the Untitled Postgres database using a common method, and refer to the accompanying [documentation for schema and table structure](broken://pages/uNPCciDfD1QZMf8aIrlG) details.

## SQL Client Connection Instructions

{% hint style="info" %}
These instructions cover how to connect to the Untitled Postgres database using an open-source SQL client DBeaver. We selected DBeaver for this guide because it’s free **and includes a pre-installed Postgres driver.**

If you prefer to use a different SQL client, check whether it includes support for Postgres. If not, you may need to install an Postgres driver prior to testing your connection credentials as outlined in this guide.
{% endhint %}

### Locate your Untitled Postgres Database Connection Credentials  <a href="#find-your-distilled-database-connection-credentials" id="find-your-distilled-database-connection-credentials"></a>

1. Log in to your Untitled account.
2. Select "Custom Connections" on the left-side navigation menu.
   1. If you do not see this item on your navigation, please contact your customer success manager or <support@getuntitled.ai> to enable it.
3. Your Postgres credentials will be located in the tile component titled "Postgres Warehouse" .

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FlqCK2aYYZuiKCMRaeqZ4%2FScreenshot%202026-05-07%20at%202.24.24%E2%80%AFPM.png?alt=media&amp;token=c1a5de98-89d8-40f2-a8f1-d5f136c2d655" alt=""><figcaption></figcaption></figure>

## Download & Setup DBeaver (Example SQL Client)

1. DBeaver is a free and open source tool used to interact with various databases. To start, [download](https://dbeaver.io/download/) the version of DBeaver corresponding to your operating system. Once downloaded, continue to the next step.
2. Create a new database connection by selecting the plug icon in the top left corner of your screen. Once clicked a new dialog box will appear. Select <kbd>Postgres</kbd> and then click `Next`.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FCpAXmBPSwUtIlaL4X4zg%2FMarked%20up%20New%20DB%20%2B%20Select%20PostgreSQL.png?alt=media&amp;token=ee0893ac-d527-41d0-aaef-fedb880a2621" alt=""><figcaption></figcaption></figure>

3. Using the credentials found in the Custom Connections > Postgres Warehouse page of your Untitled account, enter the following information into the DBeaver Postgres Connection Settings.
   1. Host
   2. Port
   3. Database
   4. Username
   5. Password

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2Fng1C668SJC5Bq2AgHGzP%2FScreenshot%202026-05-07%20at%202.24.24%E2%80%AFPM.png?alt=media&amp;token=1559cae4-9cb7-4378-8bc7-36f1c0ec7eec" alt=""><figcaption></figcaption></figure>

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FASusIgQ8puKgGCaJUHwk%2FScreenshot%202026-05-07%20at%203.08.30%E2%80%AFPM.png?alt=media&amp;token=7c3f52ee-151d-470d-9838-f36358cde701" alt=""><figcaption></figcaption></figure>

4. You should now see your connection listed in the Database Navigator and can begin writing SQL to query your tables. To test your setup, enter the following in the SQL editor: `SELECT * FROM resolutions.visitors LIMIT 10`  Running this query should return the first 10 rows of data, confirming that your connection is working correctly.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FfcyAGvdXWNoT5lrz2QgF%2FScreenshot%202025-04-22%20at%202.38.42%E2%80%AFPM.png?alt=media&amp;token=d116e71d-0b2a-4aff-aee6-4cd14ce48e3c" alt=""><figcaption></figcaption></figure>

Congratulations! You’ve successfully connected to your visitor database using DBeaver. If you have questions about building a replication pipeline from this database, feel free to reach out via the Support Desk—we’re happy to assist with your specific use case.

To review the Postgres Warehouse schema, please proceed to the following [knowledge base article. ](broken://pages/uNPCciDfD1QZMf8aIrlG)

### Manual Export (DBeaver Example)

Once you've successfully connected to the Postgres Database, test the following actions to save your query results locally.&#x20;

#### Write and Execute Query <a href="#write-and-execute-query" id="write-and-execute-query"></a>

1. Write your SQL Query: Write the SQL query in DBeaver to select the data you want to export from the Untitled Postgres database.
2. Execute the Query: Execute the SQL query to retrieve the results from the Untitled Postgres database.

#### Export Query Results <a href="#export-query-results" id="export-query-results"></a>

1. Select Results to Export from the above query steps.
2. Export Results: *Right-click* and select the `export` option. Choose the appropriate format (e.g., CSV, Excel, etc.) and specify the export location.
3. Save Exported File: Save the exported file to the desired location on your local system.

## Connecting the Postgres Database to the Looker Business Intelligence Platform

Google publishes a guide for connecting a Postgres database to Looker here: <https://docs.cloud.google.com/looker/docs/db-config-postgresql>.

## Need Further Support or Have Additional Questions?

Check out our[ <mark style="color:blue;">FAQs</mark> ](/misc/frequently-asked-questions)to get some answers, start a chat on our [website](https://getuntitled.ai/), or get connected directly with our team [<mark style="color:blue;">here</mark>](https://getuntitled.ai/contact/).


# Athena Database (legacy)

Integrate Untitled into your existing CDPs, workflows, and business intelligence platforms via our Athena Database Connector.

{% hint style="warning" %}
As of Q1 2026, new database connections will be set up in Postgres. This guide is maintained for posterity, as a resource for existing Athena database users. Athena database connections will continue to function.
{% endhint %}

{% hint style="info" %}
This is a feature exclusively for enterprise accounts.
{% endhint %}

## Database Connection Overview

Untitled offers a premium feature that grants users access to a managed data warehouse, enabling integration at the data layer. All raw visitor data collected via the Untitled ID tag is exposed through a client-specific Athena database connection, which can be accessed using the credential set available in your portal.

Follow the step-by-step guide below to test your connection to the Untitled Athena database using a common method, and refer to the accompanying [documentation for schema and table structure](broken://pages/uNPCciDfD1QZMf8aIrlG) details.

## SQL Client Connection Instructions

{% hint style="info" %}
These instructions cover how to connect to the Untitled Athena database using an open-source SQL client DBeaver. We selected DBeaver for this guide because it’s free **and includes a pre-installed Athena driver.**

If you prefer to use a different SQL client, check whether it includes support for Athena. If not, you may need to install an Athena driver prior to testing your connection credentials as outlined in this guide.
{% endhint %}

### Locate your Untitled Athena Database Connection Credentials  <a href="#find-your-distilled-database-connection-credentials" id="find-your-distilled-database-connection-credentials"></a>

1. Log in to your Untitled account.
2. Select "Custom Connections" on the left-side navigation menu.
3. Your Athena credentials will be located in the tile component titled "Tag Data Warehouse"&#x20;

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2Fm2ga9Qprf2dUUDuB6YIX%2Fconnection-creds.png?alt=media&amp;token=f1a24ba2-f1e2-42be-8bb9-a6c524f48679" alt=""><figcaption></figcaption></figure>

### Authentication Credentials

In order to authenticate any SQL client, you'll need the following 5 details located within the Custom Connections > Tag Data Warehouse module in your Untitled Account:&#x20;

* **Region:** Enter the AWS region provided by Untitled (e.g., `us-east-1`).
* **S3 Staging Directory:** Enter the S3 bucket path provided by Untitled (e.g., `s3://your-bucket-name/`).
* **Workgroup:** Enter the workgroup name `DistilledResolutions`&#x20;
* **aws\_access\_key\_id:** `Your AWS Access Key ID.`
* **aws\_secret\_access\_key:** `Your AWS Secret Access Key.`&#x20;

## Download & Setup DBeaver (Example SQL Client)

1. DBeaver is a free and open source tool used to interact with various databases. To start, [download](https://dbeaver.io/download/) the version of DBeaver corresponding to your operating system. Once downloaded, continue to the next step.
2. Create a new database connection by selecting the plug icon in the top left corner of your screen. Once clicked a new dialog box will appear. Select `Athena (Legacy)` and then click `Next`.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2F5j3mb6yROhjy8fi1H9Cf%2Fimage%20(5).png?alt=media&amp;token=e55cb967-f9d3-48f6-8184-2af75a0864cd" alt=""><figcaption></figcaption></figure>

3. Using the credentials found in the Custom Connections > Tag Data Warehouse page of your Untitled account, enter the following information into the DBeaver AWS Athena Connection Settings.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FBWhvq9CjFPnl5rA8lyo0%2Fconnection-creds.png?alt=media&amp;token=37665a9e-6633-46ad-abb4-9899fae7810a" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
The `Access Key` in Untitled will be your `Username` in DBeaver.

The `Secret Access Key` in Untitled will be your `Password` in DBeaver.
{% endhint %}

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FQwnLURB9eLHZwrGNtldL%2Fdbeaver-step2%20(1).png?alt=media&amp;token=c1e11404-0209-41ad-beef-e5c3551e2312" alt=""><figcaption></figcaption></figure>

4. You must edit the workgroup in order to complete the connection process. To do that, Navigate to `Driver properties` and scroll to the bottom.&#x20;
5. Next to Workgroup enter `DistilledResolutions` and then click `Finish`&#x20;

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FNZh17Ub0nD3p4MbNgt0d%2FScreenshot%202025-04-22%20at%202.42.46%E2%80%AFPM.png?alt=media&amp;token=def0fa46-5b6e-4e12-8a5a-7d2fbb8ba11e" alt=""><figcaption></figcaption></figure>

{% hint style="danger" %}
If you fail to complete step 4-5 of this section, you'll recieve the following error when attempting to query the DB: *you are not authorized to perform: athena:StartQueryExecution on the resource. After your AWS administrator or you have updated your permissions, please try again. (Service: AmazonAthena; Status Code: 400; Error Code: AccessDeniedException; Request ID: da51650a-9c91-43fc-9c2c-b51588dde369;Proxy:null)*
{% endhint %}

6. You should now see your connection listed in the Database Navigator and can begin writing SQL to query your tables. To test your setup, enter the following in the SQL editor: `SELECT * FROM resolutions.visitors LIMIT 10`  Running this query should return the first 10 rows of data, confirming that your connection is working correctly.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FfcyAGvdXWNoT5lrz2QgF%2FScreenshot%202025-04-22%20at%202.38.42%E2%80%AFPM.png?alt=media&amp;token=d116e71d-0b2a-4aff-aee6-4cd14ce48e3c" alt=""><figcaption></figcaption></figure>

Congratulations! You’ve successfully connected to your visitor database using DBeaver. If you have questions about building a replication pipeline from this database, feel free to reach out via the Support Desk—we’re happy to assist with your specific use case.

To review the Tag Data Warehouse schema, please proceed to the following [knowledge base article. ](broken://pages/uNPCciDfD1QZMf8aIrlG)

### Manual Export (DBeaver Example)

Once you've successfully connected to the Athena Database, test the following actions to save your query results locally.&#x20;

#### Write and Execute Query <a href="#write-and-execute-query" id="write-and-execute-query"></a>

1. Write your SQL Query: Write the SQL query in DBeaver to select the data you want to export from the Untitled Athena database.
2. Execute the Query: Execute the SQL query to retrieve the results from the Untitled Athena database.

#### Export Query Results <a href="#export-query-results" id="export-query-results"></a>

1. Select Results to Export from the above query steps.
2. Export Results: *Right-click* and select the `export` option. Choose the appropriate format (e.g., CSV, Excel, etc.) and specify the export location.
3. Save Exported File: Save the exported file to the desired location on your local system.

## Connecting the Athena Database to the Looker BI Platform

{% hint style="info" %}
You can also view [Looker’s guide](https://cloud.google.com/looker/docs/db-config-amazon-athena) for setting up an integration with an Athena database.
{% endhint %}

#### Set Up Looker Connection <a href="#set-up-looker-connection" id="set-up-looker-connection"></a>

1. Log in to your Looker instance.
2. In Looker's main menu, navigate to the `Admin` section.
3. Click on `Connections` and then `Database` to create a new database connection.
4. Choose `Amazon Athena` as the database dialect.&#x20;

#### Configure Looker Connection Settings <a href="#configure-looker-connection-settings" id="configure-looker-connection-settings"></a>

{% hint style="info" %}
Where to find your Athena Database Authentication credentials within the Untitled portal was detailed in [the above steps](#find-your-distilled-database-connection-credentials).&#x20;
{% endhint %}

1. Provide a Connection Name that identifies the connection (e.g., "*Untitled Visitor Database*").
2. In Looker’s `Host` field, copy and paste the following: `athena.us-east-1.amazonaws.com`
3. Set Looker’s `Database` field to `Athena`.
4. Navigate to back to Untitled.
   1. Copy the `Access Key ID` provided under the Tag Data Warehouse and paste in the Looker `Username` field.
   2. Copy the `Secret Key` provided under Tag Data Warehouse and paste in the Looker `Password` field.
   3. Copy the `S3 Location` URL provided under Tag Data Warehouse and paste in the Looker `Connection String Extras` field.

#### Test the Connection <a href="#test-the-connection" id="test-the-connection"></a>

1. Click the `Test` button to ensure that Looker can successfully connect to the database.
2. If the test is successful, `save` the connection settings.

Congratulations! You have successfully connected your Tag Data Warehouse from Untitled to Looker, allowing you to explore and visualize your data through Looker's intuitive interface. Remember to follow best practices for data security and access control when configuring IAM roles and permissions.

## Need Further Support or Have Additional Questions?

Check out our[ <mark style="color:blue;">FAQs</mark> ](/misc/frequently-asked-questions)to get some answers, start a chat on our [website](https://getuntitled.ai/), or get connected directly with our team [<mark style="color:blue;">here</mark>](https://getuntitled.ai/contact/).


# Schema Overview

The database schema is comprised of three tables: Visitors, Sessions and Pages. They are joined via `hem` and `session_id` respectively.&#x20;

## Database Tables

* The [Visitors Table](/custom-connections/schema-overview/visitors-table) stores comprehensive information about individuals who have visited a website with the Distilled tag installed. B2B, B2C, and PTE records are consolidated in this table view.
* The [Sessions Table](/custom-connections/schema-overview/sessions-table) captures data pertaining to each visitor's session, including session duration. A session concludes when there has been no activity for 30 minutes. In the sessions table, you can find the column that provides the match type for a visitor record. This column is titled [file\_type](/custom-connections/schema-overview/sessions-table#table-structure) and will indicate whether a visitor is a B2B, B2C, or PTE record.
* The[ Pages Table ](/custom-connections/schema-overview/pages-table)records details about the pages viewed by individuals during their session.
* The [Buyer Intent Table](/custom-connections/schema-overview/buyer-intent-table) records details about the modeled intent score of resolved website visitors.&#x20;

### Entity Relationship Diagram

Referencing the provided Entity-Relationship Diagram (ERD) below, you can visualize how these tables can be joined together to provide a holistic view of user interactions on your website.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FFJA8uKFtkPxyYsETifg1%2Funtitled-tag-erd.png?alt=media&amp;token=bd8c1920-8f95-4e16-af35-204cfcb6d3db" alt=""><figcaption></figcaption></figure>


# Visitors Table

The Visitors Table stores comprehensive information about individuals who have visited a website with the Untitled ID tag installed. B2B, B2C, and PTE records are consolidated in this table view. See table structure below.&#x20;

## Table Structure

| Column                              | Description                                                                                                                                                                                                                               |
| ----------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| tag\_id                             | Unique ID for a singular Untitled Identity tag                                                                                                                                                                                            |
| hem                                 | Hashed email (SHA256) associated with a tag fire                                                                                                                                                                                          |
| first\_name                         | First name of matched record                                                                                                                                                                                                              |
| last\_name                          | Last name of matched record                                                                                                                                                                                                               |
| business\_email                     | Business email associated with the record                                                                                                                                                                                                 |
| mobile\_phone                       | Mobile number associated with the record                                                                                                                                                                                                  |
| linkedin\_url                       | LinkedIn URL for the record                                                                                                                                                                                                               |
| personal\_address                   | Personal address associated with the record                                                                                                                                                                                               |
| personal\_address2                  | Personal address 2 associated with the record                                                                                                                                                                                             |
| personal\_city                      | Personal address city                                                                                                                                                                                                                     |
| personal\_state                     | Personal address state                                                                                                                                                                                                                    |
| personal\_zip                       | Personal address zip                                                                                                                                                                                                                      |
| personal\_zip4                      | Plus 4 extension of personal\_zip (does not include personal\_zip)                                                                                                                                                                        |
| personal\_email                     | The most observed personal email and match for the record                                                                                                                                                                                 |
| gender                              | Gender of record (M/F/U)                                                                                                                                                                                                                  |
| age\_range                          | [Age range](#age-range-values) of record (18-24, 25-34, 35-44, 45-54, 55-64, 65 and older)                                                                                                                                                |
| married                             | Determination if the record is married (Y/N)                                                                                                                                                                                              |
| income\_range                       | [Income range](#age-range-values-1) of record                                                                                                                                                                                             |
| net\_worth                          | Estimate of a households [total financial assets](#net-worth-values) minus liabilities. Assets include financial holdings such as deposit accounts, investments and home value. Liabilities include loans, mortgages and credit card debt |
| homeowner                           | Probabilistic and deterministic data set to capture home ownership (Y/N)                                                                                                                                                                  |
| job\_title                          | Job title associated with the record                                                                                                                                                                                                      |
| seniority\_level                    | Modeled [seniority](#seniority-level-values) based on job title                                                                                                                                                                           |
| department                          | Modeled [department](#department-values) based on job title                                                                                                                                                                               |
| professional\_address               | Business address                                                                                                                                                                                                                          |
| professional\_address2              | Business address 2                                                                                                                                                                                                                        |
| professional\_city                  | Business address city                                                                                                                                                                                                                     |
| professional\_state                 | Business address state                                                                                                                                                                                                                    |
| professional\_zip                   | Business zip                                                                                                                                                                                                                              |
| professional\_zip4                  | Plus 4 extension of professional\_zip (does not include professional\_zip)                                                                                                                                                                |
| company\_name                       | Company name associated with job title                                                                                                                                                                                                    |
| company\_domain                     | Company domain associated with company name and business email                                                                                                                                                                            |
| company\_phone                      | Comma separated array of phone numbers associated with the company                                                                                                                                                                        |
| company\_sic                        | Semicolon separated array of SIC codes associated with the company                                                                                                                                                                        |
| company\_naics                      | Comma separated array of NAICS codes                                                                                                                                                                                                      |
| company\_address                    | Company address                                                                                                                                                                                                                           |
| company\_city                       | Company address city                                                                                                                                                                                                                      |
| company\_state                      | Company address state                                                                                                                                                                                                                     |
| company\_zip                        | Company address zip                                                                                                                                                                                                                       |
| company\_linkedin\_url              | Corporate LinkedIn URL                                                                                                                                                                                                                    |
| company\_revenue                    | [Revenue range](#company-revenue-values) of the company                                                                                                                                                                                   |
| company\_employee\_count            | [Range of employees](#company-employee-count-values) based on observed employees                                                                                                                                                          |
| primary\_industry                   | [Primary industry](#primary-industry-values) associated with the company mapped to LinkedIn industries                                                                                                                                    |
| business\_email\_validation\_status | Valid is included if the email has been validated by an email service provider or null if validation is unavailable                                                                                                                       |
| business\_email\_last\_seen         | Unix timestamp of the last activity signal                                                                                                                                                                                                |
| personal\_email\_validation\_status | Valid is included if the email has been validated by an email service provider or null if validation is unavailable                                                                                                                       |
| personal\_email\_last\_seen         | Unix timestamp of the last activity signal                                                                                                                                                                                                |
| last\_updated                       | Unix timestamp of when the record was last updated                                                                                                                                                                                        |
| ip                                  | IP address associated with the tag fire                                                                                                                                                                                                   |
| un\_processed\_timestamp            | Unix timestamp of when the record was processed                                                                                                                                                                                           |
| un\_updated\_timestamp              | Unix timestamp of when the record was last updated                                                                                                                                                                                        |
| record\_uuid                        | A uuid for each record in the table                                                                                                                                                                                                       |

### Age Range Values <a href="#age-range-values" id="age-range-values"></a>

| 18-24        |
| ------------ |
| 25-34        |
| 35-44        |
| 45-54        |
| 55-64        |
| 65 and older |

### Income Range Values <a href="#age-range-values" id="age-range-values"></a>

| Less than $20,000    |
| -------------------- |
| $20,000 to $44,999   |
| $45,000 to $59,999   |
| $60,000 to $74,999   |
| $75,000 to $89,999   |
| $90,000 to $119,999  |
| $120,000 to $149,999 |
| $150,000 to $199,999 |
| $200,000 to $249,999 |
| $250,000+            |

### Net Worth Values

| Less than -$20,000   |
| -------------------- |
| -$20,000 to -$2,500  |
| -$2,499 to $2,499    |
| $2,500 to $24,999    |
| $25,000 to $49,999   |
| $50,000 to $74,999   |
| $75,000 to $99,999   |
| $100,000 to $149,999 |
| $150,000 to $249,999 |
| $250,000 to $374,999 |
| $375,000 to $499,999 |
| $500,000 to $749,999 |
| $750,000 to $999,999 |
| More than $1,000,000 |

### Seniority Level Values

| CXO      |
| -------- |
| VP       |
| Director |
| Manager  |
| Staff    |

### Department Values

| Administrative                   |
| -------------------------------- |
| Community And Social Services    |
| Education                        |
| Engineering                      |
| Executive                        |
| Finance                          |
| Government                       |
| Health Services                  |
| Human Resources                  |
| Information Technology           |
| Legal                            |
| Marketing                        |
| Media And Communications         |
| Military And Protective Services |
| Operations                       |
| Product Management               |
| Real Estate                      |
| Sales                            |

### Company Revenue Values

| 0                          |
| -------------------------- |
| Under 1 Million            |
| 1 Million to 5 Million     |
| 5 Million to 10 Million    |
| 10 Million to 25 Million   |
| 25 Million to 50 Million   |
| 50 Million to 100 Million  |
| 100 Million to 250 Million |
| 250 Million to 500 Million |
| 500 Million to 1 Billion   |
| 1 Billion and Over         |

### Company Employee Count Values

| 0             |
| ------------- |
| 1 to 10       |
| 11 to 25      |
| 26 to 50      |
| 51 to 100     |
| 101 to 250    |
| 251 to 500    |
| 501 to 1000   |
| 1001 to 5000  |
| 5001 to 10000 |
| 10000+        |

### Primary Industry Values

| Accounting                                             |
| ------------------------------------------------------ |
| Advertising Services, Marketing Services               |
| Airlines And Aviation                                  |
| Alternative Dispute Resolution                         |
| Alternative Medicine                                   |
| Animation                                              |
| Appliances, Electrical, And Electronics  Manufacturing |
| Architecture And Planning                              |
| Armed Forces                                           |
| Artists And Writers                                    |
| Automation Machinery Manufacturing                     |
| Automotive                                             |
| Aviation And Aerospace Component  Manufacturing        |
| Banking                                                |
| Beverage Manufacturing                                 |
| Biotechnology                                          |
| Book And Periodical Publishing                         |
| Broadcast Media Production And  Distribution           |
| Building Construction                                  |
| Business Consulting And Services                       |
| Capital Markets                                        |
| Chemical Manufacturing                                 |
| Civic And Social Organizations                         |
| Civil Engineering                                      |
| Commercial Real Estate                                 |
| Computer And Network Security                          |
| Computer Games                                         |
| Computer Hardware Manufacturing                        |
| Computer Networking                                    |
| Computer Networking Products                           |
| Computers And Electronics Manufacturing                |
| Consumer Electronics                                   |
| Consumer Goods                                         |
| Consumer Services                                      |
| Cosmetics                                              |
| Dairy Product Manufacturing                            |
| Defense And Space Manufacturing                        |
| Design Services                                        |
| Education Administration Programs                      |
| E-Learning                                             |
| Entertainment Providers                                |
| Environmental Services                                 |
| Events Services                                        |
| Executive Offices                                      |
| Facilities Services                                    |
| Farming                                                |
| Financial Services                                     |
| Fine Art                                               |
| Fisheries                                              |
| Food And Beverage Manufacturing                        |
| Food And Beverage Services                             |
| Freight And Package Transportation                     |
| Fundraising                                            |
| Furniture And Home Furnishings  Manufacturing          |
| Gambling Facilities And Casinos                        |
| Glass, Ceramics And Concrete  Manufacturing            |
| Government Administration                              |
| Government Relations Services                          |
| Health, Wellness And Fitness                           |
| Higher Education                                       |
| Hospitality                                            |
| Hospitals And Health Care                              |
| Human Resources Services                               |
| Individual And Family Services                         |
| Industrial Machinery Manufacturing                     |
| Insurance                                              |
| International Affairs                                  |
| International Trade And Development                    |
| Internet                                               |
| Investment Banking                                     |
| Investment Management                                  |
| It Services And It Consulting                          |
| Judiciary                                              |
| Law Enforcement                                        |
| Law Practice                                           |
| Leasing Non-Residential Real Estate                    |
| Legal Services                                         |
| Legislative Offices                                    |
| Libraries                                              |
| Logistics And Supply Chain                             |
| Machinery                                              |
| Machinery Manufacturing                                |
| Manufacturing                                          |
| Maritime Transportation                                |
| Market Research                                        |
| Mechanical Or Industrial Engineering                   |
| Medical Equipment Manufacturing                        |
| Medical Practices                                      |
| Mental Health Care                                     |
| Military                                               |
| Mining                                                 |
| Motion Pictures And Film                               |
| Motor Vehicle Manufacturing                            |
| Movies, Videos, And Sound                              |
| Museums, Historical Sites, And Zoos                    |
| Musicians                                              |
| Nanotechnology Research                                |
| Newspaper Publishing                                   |
| Newspapers                                             |
| Nonprofit Organization Management                      |
| Non-Profit Organizations                               |
| Oil And Gas                                            |
| Online Audio And Video Media                           |
| Outsourcing And Offshoring Consulting                  |
| Packaging And Containers Manufacturing                 |
| Paper And Forest Product Manufacturing                 |
| Personal Care Product Manufacturing                    |
| Pharmaceutical Manufacturing                           |
| Philanthropic Fundraising Services                     |
| Photography                                            |
| Plastics Manufacturing                                 |
| Political Organizations                                |
| Primary And Secondary Education                        |
| Printing Services                                      |
| Professional Training And Coaching                     |
| Program Development                                    |
| Public Policy Offices                                  |
| Public Relations And Communications  Services          |
| Public Safety                                          |
| Railroad Equipment Manufacturing                       |
| Ranching                                               |
| Real Estate                                            |
| Recreational Facilities                                |
| Religious Institutions                                 |
| Renewable Energy Semiconductor  Manufacturing          |
| Renewables & Environment                               |
| Research                                               |
| Restaurants                                            |
| Retail                                                 |
| Retail Apparel And Fashion                             |
| Retail Art Supplies                                    |
| Retail Groceries                                       |
| Retail Luxury Goods And Jewelry                        |
| Retail Office Equipment                                |
| Security And Investigations                            |
| Semiconductor Manufacturing                            |
| Shipbuilding                                           |
| Software Development                                   |
| Spectator Sports                                       |
| Sporting Goods Manufacturing                           |
| Sports                                                 |
| Strategic Management Services                          |
| Supermarkets                                           |
| Technology And Information                             |
| Telecommunications                                     |
| Textile Manufacturing                                  |
| Think Tanks                                            |
| Tobacco Manufacturing                                  |
| Translation And Localization                           |
| Transportation, Logistics, Supply Chain  And Storage   |
| Transportation/Trucking/Railroad                       |
| Travel Arrangements                                    |
| Truck Transportation                                   |
| Utilities                                              |
| Venture Capital And Private Equity  Principals         |
| Veterinary Services                                    |
| Warehousing And Storage                                |
| Wellness And Fitness Services                          |
| Wholesale                                              |
| Wholesale Building Materials                           |
| Wholesale Import And Export                            |
| Wine And Spirits                                       |
| Wireless Services                                      |
| Writing And Editing                                    |

\
\
\
\
\
\
\ <br>


# Sessions Table

The Sessions Table captures data on each visitor's session, including session duration. A session concludes when there has been no activity by the user for 30 minutes. See table structure below.

{% hint style="info" %}
\*For users who want to parse results by match type—similar to how they’re displayed in the front-end application—use the `File Type` column values as your delimiters.
{% endhint %}

## Table Structure

| Column                   | Description                                                                                                                  |
| ------------------------ | ---------------------------------------------------------------------------------------------------------------------------- |
| hem                      | Hashed email (SHA256) associated with a tag fire                                                                             |
| tag\_id                  | The ID associated with the tag                                                                                               |
| \***file\_type**         | File type associated with the tag fire (B2B, B2C, PTE)                                                                       |
| session\_id              | The ID associated with a session. The session ends when there has been no activity for 30 minutes                            |
| session\_start           | Timestamp (YYYY-MM-DD HH:MM:SS.sss) of when the session started                                                              |
| session\_end             | Timestamp (YYYY-MM-DD HH:MM:SS.sss) of when the session ended                                                                |
| est\_session\_duration   | The estimated session duration in seconds. This is estimated because we don’t know how long someone was on the last page for |
| entry\_url               | The first URL someone visited in a session                                                                                   |
| exit\_url                | The last URL someone visited in a session                                                                                    |
| total\_pages\_visited    | The total number of pages someone visited in a session                                                                       |
| unique\_pages\_visited   | The unique number of pages someone visited in a session                                                                      |
| un\_processed\_timestamp | Unix timestamp of when the record was processed                                                                              |
| un\_updated\_timestamp   | Unix timestamp of when the record was last updated                                                                           |


# Pages Table

The Pages Table records details about the pages viewed by individuals during their session. See table structure below.&#x20;

## Table Structure

| Column                   | Description                                                                                                                      |
| ------------------------ | -------------------------------------------------------------------------------------------------------------------------------- |
| session\_id              | The ID associated with a session. The session ends when there has been no activity for 30 minutes                                |
| external\_id             | The ID associated with the tag fire                                                                                              |
| ref\_url                 | Reference URL of the tag fire; page of tag fire                                                                                  |
| referer\_url             | URL visited before the tag fire (when available)                                                                                 |
| est\_time\_on\_page      | The estimated time spent on a page in seconds. This is estimated because we don’t know how long someone was on the last page for |
| event\_date              | Timestamp (YYYY-MM-DD HH:MM:SS.sss) of the tag fire                                                                              |
| un\_processed\_timestamp | Unix timestamp of when the record was processed                                                                                  |
| un\_updated\_timestamp   | Unix timestamp of when the record was last updated                                                                               |

<br>


# Buyer Intent Table

The Buyer Intent Table records details about the modeled intent score of resolved website visitors. [Learn more about the buyer intent model here. ](/audience-studio/understanding-buyer-intent-score-on-the-untitled-platform)

| Column         | Description                                                                                       |
| -------------- | ------------------------------------------------------------------------------------------------- |
| tag\_id        | Unique ID for a singular Untitled Identity tag                                                    |
| hem            | Hashed email (SHA256) associated with a tag fire                                                  |
| lead\_category | Intent scoring categorization with the following values: 'hot', 'warm', 'nuetral', 'cool', 'cold' |


# Customer Designated UUID Sync

This article provides an overview of the Customer Designated UUID Sync feature and the setup requirements to capture custom identifiers from a webpage.

{% hint style="info" %}
This is a feature exclusively for enterprise accounts
{% endhint %}

The Customer Designated UUID Sync allows Untitled to capture a customer-defined identifier from the page environment and attach it to the visitor resolution process (similar to a cookie-sync protocol).

This enables downstream workflows where a client needs to **join Untitled identity resolution data with their own system identifiers** (such as customer IDs, event IDs, order IDs, form submission IDs, or internal partner identifiers).

Once configured, the identifier(s) are captured during page load by the Untitled tag and stored alongside the associated external pageview identifier **(`external_id`)**, allowing them to be joined to visitor resolution data in downstream systems, such as [client-provisioned database resource](/custom-connections).

***

## How It Works

When enabled, the Untitled tag will:

1. Wait for the page to fully load.
2. Extract the configured identifier(s) from the page environment.
3. Append those values to a payload associated with the pageview.
4. Attach Untitled’s internal `external_id` (the pageview UUID).
5. Send the payload to the Untitled attribution endpoint.
6. Store the resulting records in a client-accessible table.

This allows the client to join their identifiers with Untitled’s resolution data using the shared `external_id`.

***

### Supported Extraction Methods

Identifiers can be extracted from several locations on the page depending on how the client exposes them.

#### DOM Elements

Values can be retrieved directly from HTML elements.

Example:

```
document.getElementById('OrderFormInstance').value
```

This method is commonly used for:

* form instance identifiers
* transaction IDs
* dynamically generated form values

***

#### JavaScript Objects (dataLayer)

Identifiers can also be extracted from JavaScript objects such as a `dataLayer`.

Example:

```
dataLayer[0].partnerId
```

This method is common for:

* analytics variables
* partner identifiers
* campaign metadata
* event identifiers

***

### Example Field Mapping

Below is an example of how a customer’s identifiers may be mapped.

| Customer Field      | Extraction Method                                    | Example Source                    |
| ------------------- | ---------------------------------------------------- | --------------------------------- |
| `partner_id`        | `dataLayer[0].partnerId`                             | Partner identifier from dataLayer |
| `OrderEventId`      | `dataLayer[0].eventId`                               | Event identifier                  |
| `OrderFormInstance` | `document.getElementById('OrderFormInstance').value` | Form instance identifier          |

These values are captured during page load and associated with the pageview.

***

### Data Model

Each captured record includes the following fields:

| Field                 | Description                         |
| --------------------- | ----------------------------------- |
| `external_id`         | Untitled pageview identifier (UUID) |
| `partner_id`          | Client partner identifier           |
| `order_event_id`      | Event identifier from the page      |
| `order_form_instance` | Form instance identifier            |
| `timestamp`           | Time of capture                     |

The `external_id` allows these values to be joined to visitor resolution records.

***

### Accessing the Data

Captured identifiers are made available in a **client-provisioned database resource**.&#x20;

Example table:

```
{untitled-client-name}_attribution
```

This table contains a row for every instance where the configured identifiers were successfully extracted. The dataset updates approximately **every 15 minutes**.

{% hint style="info" %}
It is on our roadmap to make this functionality available via API
{% endhint %}

***

### Joining to Resolution Data

To associate the identifiers with Untitled visitor resolution data, join the attribution table with the resolutions table using `external_id`.

Example query:

```
SELECT *
FROM resolutions.pages p
INNER JOIN {untitled-client-name}_attribution ta
ON p.external_id = ta.external_id;
```

This allows customers to combine:

* Untitled resolved visitor data
* their internal identifiers
* page-level activity

***

## Setup Requirements

To configure a Customer UUID Sync, Untitled requires the following information from the client.

#### 1. Identifier Name and Example Value

Provide the literal field name and an example value.

Example:

```
ID name: MyUniqueId
Example value: 68dd9e83-3e98-4ae1-b16c-00420a1e2112
```

***

#### 2. Location of the Identifier

Indicate where the identifier appears on the page.

Examples:

* DOM element
* JavaScript variable
* dataLayer property

Providing a **Chrome DevTools screenshot** highlighting the identifier is highly recommended as this will help our team easily triangulate the ID you want us to test extracting.&#x20;

***

#### 3. Test URL

Provide a URL where:

* the Untitled tag is installed
* the identifier is present on page load

This allows our team to validate extraction from the page.

***

### Configuration Process

Once the required information is provided, Untitled will:

1. Validate that the identifiers can be retrieved from the page.
2. Configure the extraction logic for the client’s tag.
3. Deploy the updated tag configuration.
4. Enable ingestion into the attribution service.
5. Expose the resulting dataset in the client Postgres environment.

***

### Important Notes

* All identifiers must be available **at page load** for reliable extraction.
* If an identifier is missing, the event may not be recorded.
* Multiple identifiers can be captured in the same configuration.
* **This feature is configured per client environment and requires 5–7 business days for setup once the necessary implementation details have been provided.** This timeframe allows our team to validate the identifiers, test extraction from the page environment, configure the endpoint, and deploy the workflow.

***

### Common Use Cases

Customer UUID Sync is commonly used for:

* event platform integrations
* CDP identifiers
* Customer order attribution
* Form submission linking
* Partner program tracking
* CRM or internal ID reconciliation


# Overview


# Managing Users

By following these step-by-step instructions, you can easily **add, remove, and manage team members** within your Untitled account to ensure they have the access and resources they need.

We recommend **regularly reviewing and updating user access** to keep your team aligned and secure.

## Team Member Administration <a href="#log-into-distilled" id="log-into-distilled"></a>

### Log into Untitled <a href="#log-into-distilled" id="log-into-distilled"></a>

1. Log into Untitled and select the `Account` button at the bottom of the left-side navigation menu.
2. Toggle to the `Team members` tab

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FgnvbfXq9EeaLrhXzwqh0%2FScreenshot%202025-04-24%20at%202.07.02%E2%80%AFPM.png?alt=media&amp;token=b5fec8c0-0265-41d2-ad17-0bfaef1ea17b" alt=""><figcaption></figcaption></figure>

### To Add a New Team Member  <a href="#add-a-new-team-member" id="add-a-new-team-member"></a>

1. Select the `Add user +` button located above the user table to initiate the process to add a new team member.
2. Fill out the required fields for the new team member. This includes `Email address` and `Role`.
   * Role Options include:
     * **Viewer:** users have full access to Untitled, but do **not** have the ability to add or delete additional team members.
     * **Admin:** admins have full access to Untitled, plus the ability to add or delete additional team members.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2F2Fu42sgELh1EVEeMxYks%2FScreenshot%202025-04-22%20at%205.12.02%E2%80%AFPM.png?alt=media&amp;token=ce5ab1f5-f399-42a6-ba0f-911624ff7a4b" alt=""><figcaption></figcaption></figure>

3. Once all of the fields have been filled out, select the `Invite User` button.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FFPU61BsXcbY0BarVUWjl%2FScreenshot%202025-04-22%20at%205.14.47%E2%80%AFPM.png?alt=media&amp;token=a30e24b2-fcff-443b-ae47-265bc48d19f5" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
The (Owner) Role is reserved for **the user that initially created the trial account**. It's important to note that Admins at this time are NOT able to assume the owner role, or perform any actions to remove the Owner role user. If you need to transfer the Owner role to a different user, please reach out through out support desk to update this scope assignment.&#x20;
{% endhint %}

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FC3Ug1OtWZ45bY4bTXUCt%2FScreenshot%202025-04-22%20at%205.19.50%E2%80%AFPM.png?alt=media&amp;token=60c2d88e-7e2e-4242-830b-0687938ea730" alt=""><figcaption></figcaption></figure>

### User Onboarding Steps—New User Point of View <a href="#confirm-invitation-acceptance" id="confirm-invitation-acceptance"></a>

1. The new team member will receive an email invitation to join Untitled from <noreply@mail.getuntitled.ai>. (It will look like the email below).&#x20;

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2F8wZzOOAVIljVNPSUAhvl%2FScreenshot%202025-04-23%20at%2010.51.05%E2%80%AFAM.png?alt=media&amp;token=bda3339e-d82f-4785-83ad-4235871c6a91" alt=""><figcaption></figcaption></figure>

2. Notify them to follow the instructions provided in the email to accept the invitation and set up their account. They'll be taking to the following screen upon clicking `Accept Invitation`

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2Fn4CCvD9QeIovMlUo1TMl%2FScreenshot%202025-04-23%20at%2010.51.22%E2%80%AFAM.png?alt=media&amp;token=1880387e-88b8-4fc3-810c-febeb8bd4331" alt=""><figcaption></figcaption></figure>

3. They'll be prompted to then setup a password and upon meeting the password specification requirements, they can proceed to authenticating their credentials by pressing `Continue`

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FiGSacuQfJii42NRfcXWc%2FScreenshot%202025-04-23%20at%2010.51.51%E2%80%AFAM.png?alt=media&amp;token=968a4749-dd2e-4bec-9015-ffde63cc425e" alt=""><figcaption></figcaption></figure>

After pressing `Continue` the user will be logged in and directed to the home page of the application.&#x20;

{% hint style="info" %}
After the user has successfully onboarded into the Untitled account, the available Actions for that user record will update to “Reset Password" and "Delete User” for Admins of the account.&#x20;
{% endhint %}

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FwuVLLQQMDlQ600orfSlt%2FScreenshot%202025-04-23%20at%2011.05.52%E2%80%AFAM.png?alt=media&amp;token=cbe461de-6ff7-420e-b24b-9796717babef" alt=""><figcaption></figcaption></figure>

#### Pending Invitations & Invitation Actions

1. While you await your new user to accept their invitation, they will be categorized into the "Pending Invitations" status.&#x20;

{% hint style="warning" %}
New users have **7 days** to accept their invitation. If the invitation isn't accepted within that window, the link will expire. To proceed, the user will need to be **removed and re-invited** in order to onboard to the application.
{% endhint %}

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FgdK8YAbwDOkskpMLbSmX%2FScreenshot%202025-04-22%20at%205.12.36%E2%80%AFPM.png?alt=media&amp;token=10f97375-5f86-4d69-8fa8-0730b1066fa6" alt=""><figcaption></figcaption></figure>

2. At anytime, you can revoke this invitation, and the invite link sent via email will automatically expire.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2F4s27UfGWWYNyPNPpJN8j%2FScreenshot%202025-04-24%20at%201.51.46%E2%80%AFPM.png?alt=media&amp;token=89457077-d78c-4203-b1b4-3ab5f0c52ec8" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
If a new user is having trouble locating their invite email, you can **copy the invitation link** and send it to them manually via email or your preferred messaging system. (click `Copy invitation link`).

The user experience will be the same — the first-time setup process follows the same workflow outlined in [Step 2 of the New User Onboarding](#confirm-invitation-acceptance) guide.
{% endhint %}

### Resetting a Team Member's Password

1. To reset a user's password, simply click the Actions button on the user's record, then select `Reset Password` .

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FkI0OOb7xWZr9LHOkqA6u%2FScreenshot%202025-04-24%20at%202.18.14%E2%80%AFPM.png?alt=media&amp;token=3b7082b6-c838-44c7-8168-fbc1829896f9" alt=""><figcaption></figcaption></figure>

2. You'll see a notification pop-up informing you that a password reset email has been sent to the user.&#x20;
3. The user will receive an email that looks like the following.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2F3Hlulyso5Iqv903DJ5Jt%2FScreenshot%202025-04-24%20at%202.20.24%E2%80%AFPM.png?alt=media&amp;token=91369502-fdb1-4ee9-9b12-3ef2ccfed53c" alt=""><figcaption></figcaption></figure>

4. They will need to click the link, or press `Confirm` .
5. Upon doing so, they'll be redirected to the following screen.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2F1hWHyNduEBQOmXX7Z0YX%2FScreenshot%202025-04-24%20at%202.20.59%E2%80%AFPM.png?alt=media&amp;token=dd31abc4-2552-4537-9a42-ec9e2b278674" alt=""><figcaption></figcaption></figure>

6. Once they've input a new password, and then confirmed the new password by re-entering it, they'll need to click `Reset password` .

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FSlViCGFtTfpCsgGWWjo4%2FScreenshot%202025-04-24%20at%202.21.15%E2%80%AFPM.png?alt=media&amp;token=20868950-551b-4b00-a4f7-a5d7983f99d8" alt=""><figcaption></figcaption></figure>

7. They will see a success confirmation on the screen that looks like this:&#x20;

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2F87W9jAvCdguUMcYgKHMX%2FScreenshot%202025-04-24%20at%202.21.29%E2%80%AFPM.png?alt=media&amp;token=fe4ade29-8079-4d0a-8d02-d5c2dc5a9fbe" alt=""><figcaption></figcaption></figure>

8. By clicking `Back to Untitled`, they will be redirected to the login screen to use their new credentials to sign in to the Untitled Account.&#x20;

### Removing a Team Member

1. To remove a user, click the **Actions** menu button on the user’s record, then select `Delete user` from the dropdown menu.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FF4B2Rd8kX6ycXkfO7HRt%2FScreenshot%202025-04-24%20at%202.04.28%E2%80%AFPM.png?alt=media&amp;token=d722d429-e5d8-410e-9e6c-ee273319bbe1" alt=""><figcaption></figcaption></figure>

2. You’ll be prompted to confirm the deletion — click `Delete` to proceed. Once confirmed, the user will be removed from your Untitled account.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FUa1qaDsjQYhVorrauGly%2FScreenshot%202025-04-24%20at%202.01.20%E2%80%AFPM.png?alt=media&amp;token=bdb8101e-4417-4bc2-80b6-a78a9274ad13" alt=""><figcaption></figcaption></figure>

## Need Further Support or Have Additional Questions?

Check out our[ <mark style="color:blue;">FAQs</mark> ](/misc/frequently-asked-questions)to get some answers, start a chat on our [website](https://getuntitled.ai/), or get connected directly with our team [<mark style="color:blue;">here</mark>](https://getuntitled.ai/contact/).


# Agency & Multi-Brand Management

The Agency Management feature in the Untitled portal gives Agencies and Multi-Brand organizations a single, holistic view of all their client accounts. Rather than logging into individual accounts to monitor progress, you can now add clients, create tags, and manage monthly resolution budgets all from one centralized location.&#x20;

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FmyIOkn5sImhHqSqGS1Mo%2FAgency-Multi-Brand-View.jpg?alt=media&amp;token=10a58abd-19c7-4c33-b311-e708c17a4fb1" alt=""><figcaption></figcaption></figure>

## Overview:

Agency & Multi-Brand Controls:

* [Add a New Client Account](#how-to-add-a-new-client-account)
* [Create New Tags](#how-to-create-a-new-id-tag), [Set Monthly Tag Budgets](#how-to-set-a-budget-for-the-id-tag), [Enable/Disable Tags](#enable-disable-tags)
* [Manage User Access and Roles](#how-to-manage-user-access-and-roles)

This unified view consolidates the metrics most relevant to your business, including:

#### **Clients**

* The Clients tab provides a comprehensive snapshot of all client accounts, both active and inactive, within a single centralized view. This enables administrators to quickly assess account health across the entire client base without needing to access individual accounts directly.

  From this view, you can monitor key account metrics, including:

  * Status – Current activation state (active/inactive)
  * Activity – The number of visitors over the trailing 30-day period
  * Tags – Number of tags configured within each account and the health status
  * Connected Sources & Destinations – Total count and source type for all integrated sources and destinations
* This consolidated view is designed to streamline account monitoring and support faster, more informed decision-making.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FblbO5w67iUbJjnaZMsyU%2Fimage.png?alt=media&amp;token=4a8870af-e996-4a26-be8e-59cf030964d4" alt=""><figcaption></figcaption></figure>

#### **Tags**

* This section provides a complete view of all Tags associated with each client account, allowing Agencies to monitor Tag performance at a glance. Available metrics include:
  * Tag - Tag names and their associated accounts
  * Status – Current operational status of each tag (Healthy vs. Inactive)
  * Activity (MTD) – Month-to-date visitor activity
  * Projected End-of-Month Visitors – Forecasted visitor volume based on current trends
  * 7-Day Trend – Visitor activity patterns over the trailing seven days
* **New:** Agency partners can now enable or disable tags directly from this view, as well as configure tag-level budgets and create new tags for their client accounts.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FpzgjoqDC9Rd7IEoXfdtx%2Fimage.png?alt=media&amp;token=6d80bfd0-5b33-4d53-b84a-172b95108d99" alt=""><figcaption></figcaption></figure>

#### **Usage**

* This section offers an in-depth, comparative view of visitor resolution performance across Tags and client accounts. Agency partners can select custom date ranges and sort the view according to the following criteria:
  * Highest Resolutions in Period
  * Highest Daily Average
  * Most Tags
  * Name (A–Z)
* This level of detail allows agencies to identify performance trends and prioritize accounts or tags that may require additional attention.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FlAU60x01uO4a1pGaXf4S%2Fimage.png?alt=media&amp;token=20652948-20b5-4204-a8d1-4afad2fa1f3a" alt=""><figcaption></figcaption></figure>

#### **Team**

* The Team tab allows agency partners to view all users across their client accounts and manage each individual's roles and access permissions in one centralized location.

  From this section, you can:

  * Invite New Users – Add new team members directly to the platform
  * Assign Account Access – Designate which client accounts each user can access
  * Manage Roles – Set users as Admins or Viewers
    * Viewer: users have full access to Untitled, but do not have the ability to add or delete additional team members.\
      Admin: admins have full access to Untitled, plus the ability to add or delete additional team members.
* This functionality gives agencies greater control over account security and ensures the right people have the right level of access.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2F3VplHW6rhiec314xqLSD%2Fimage.png?alt=media&amp;token=35851a98-910a-4ec5-8a62-f08041c88ead" alt=""><figcaption></figcaption></figure>

#### **Self-Serve Whitelabeling (in development)**

* Manage your branding elements: Brand the Untitled experience as your own — logos, colors, and more. Your clients see your agency, not Untitled.
  * Brandable login screen and dashboard accent
  * Whitelabeled email notifications and reports

{% hint style="info" %}
At this time, white-labeling is available but must be configured by an Untitled team member. To add or update your white-label assets, please contact your Customer Success Manager.
{% endhint %}

## New Agency Management Controls:

### How to Add a New Client Account: <a href="#how-to-add-a-new-client-account" id="how-to-add-a-new-client-account"></a>

1. Click `Add client` in the top right.
2. In the pop-up modal, type in the name of your company. This will automatically create a workspace name for you as well.
3. Then select your client’s use case, eCommerce, B2C or B2B.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FY3k9iIrU6CbRCNeLEweO%2Fimage.png?alt=media&amp;token=a55c2675-e6e5-45f5-b94c-3d77fa3c4f29" alt=""><figcaption></figcaption></figure>

4. Click `Create Account` .
5. After a few moments your new client account will appear at the bottom of your client list and is ready to be accessed.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FNqP07fBZhEMTw6i8OpSB%2Fimage.png?alt=media&amp;token=1076bc68-0705-4cb4-bce6-97892e6e1655" alt=""><figcaption></figcaption></figure>

### **How to Create a New ID Tag** <a href="#how-to-create-a-new-id-tag" id="how-to-create-a-new-id-tag"></a>

1. To create a new Tag for one of your client accounts, navigate to the Tags section of Agency Management.
2. Click `New tag +` in the right corner.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FbfRsLeAyWfoaqNooFzC9%2Fimage.png?alt=media&amp;token=ca2622b4-8a0f-4b45-9068-7749de170b3b" alt=""><figcaption></figcaption></figure>

3. Click the drop-down under Client to selected the client account you’d like to create a tag for.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FRZ3kaZJgCMn2Yn9mKrqs%2Fimage.png?alt=media&amp;token=185d819a-17f8-4e2a-ae1e-fcb36fbe9ef0" alt=""><figcaption></figcaption></figure>

4. Under Tag name, please name the Tag something memorable and identifiable, such as the name of your company or the website the Tag is being placed on.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FyD8MQZ2HYQ22Ey7SHl0H%2Fimage.png?alt=media&amp;token=eb7f6cca-aca3-4cb9-a5cc-5774c7423669" alt=""><figcaption></figcaption></figure>

5. Click `Continue`.
6. After naming your Tag and clicking <kbd>Continue</kbd> a consent window will appear where you confirm your understanding of opt-out and data-gathering requirements for your website, industry, and geography.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FeB4IpnmfcXuVo1uiEU1U%2Fimage.png?alt=media&amp;token=af7f5add-9fd6-427d-bbd9-c63028730044" alt=""><figcaption></figcaption></figure>

7. Confirm and click `Create tag`.
8. Your new Tag and associated client account will now show under the list of All Tags in the table view.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FZMdyHpM65bHvFrCNGPhb%2Fimage.png?alt=media&amp;token=6415a6bc-8434-4202-84e5-d09fa6b4ff73" alt=""><figcaption></figcaption></figure>

### Enable/ Disable Tags <a href="#enable-disable-tags" id="enable-disable-tags"></a>

Now you can easily manage your client Tags all in one table view.

1. To enable or disable a Tag, simply use the toggle on the far right side of the table.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FfiBN1kZPPt8xY7WvFHXh%2Fimage.png?alt=media&amp;token=57c3aab6-e5fc-4cbe-8076-94b7453cf327" alt=""><figcaption></figcaption></figure>

2. When you update the toggle, a confirmation window will pop up to confirm your decision to enable or disable a Tag.
3. Click `Confirm and disable`, or `Confirm and enable` to finalize.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FDDYfKpEsJC4Vl22bHHCd%2Fimage.png?alt=media&amp;token=988d01e0-ee63-4a76-a23b-ce14caa34cb9" alt=""><figcaption></figcaption></figure>

### **How To Set a Budget for the ID Tag** <a href="#how-to-set-a-budget-for-the-id-tag" id="how-to-set-a-budget-for-the-id-tag"></a>

In the Tag table view, you can now set a monthly budget for any Tag in any client account.

1. Click `Set budget` next to the desired Tag.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FsIyuPhAqJfiy0rtLnSHt%2Fimage.png?alt=media&amp;token=b78ba480-b7c0-4152-b435-27c2f8c125cf" alt=""><figcaption></figcaption></figure>

&#x20;

2. In the pop-up window, toggle off the No limit option next to Monthly Cap.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FtU78K03yjCF4ZkJxRAqD%2Fimage.png?alt=media&amp;token=7e273a7d-b41b-4894-8a7e-1b8170926d2e" alt=""><figcaption></figcaption></figure>

&#x20;

3. Once off, you can either select from a pre-loaded selection of monthly caps or select a custom number with the range of 0 - 250,000 resolutions with the draggable slider.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FetEphZ3S1oXF9jOpnY1P%2Fimage.png?alt=media&amp;token=b426a206-009f-4ea8-9146-a7dbd27b8ff2" alt=""><figcaption></figcaption></figure>

4. Click `Save budget`.
5. You will now see the saved budget for easy visibility in the table view.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FhGd6LaJzmrcSBbsOE6He%2Fimage.png?alt=media&amp;token=5e0fa23f-378a-43d5-9fa5-06d145062268" alt=""><figcaption></figcaption></figure>

### How to Manage User Access and Roles <a href="#how-to-manage-user-access-and-roles" id="how-to-manage-user-access-and-roles"></a>

To manage user access, navigate to the Team tab in Agency management.

1. To add a new user, click `Invite User`.
2. Then add their email address and select their role, and click `Send invite`.
   1. Role Options include:\
      \- **Viewer**: users have full access to Untitled, but do not have the ability to add or delete additional team members.\
      \- **Admin**: admins have full access to Untitled, plus the ability to add or delete additional team members.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FKwjqyjikfxTk11MY1qdh%2Fimage.png?alt=media&amp;token=f4c29bbb-615d-4e6b-9fc3-1d50b92c879b" alt=""><figcaption></figcaption></figure>

3. The new user will receive an email invitation to join your Agency from <noreply@mail.getuntitled.ai>. (It will look like the email below).

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FbhFBaDJysPWmYbxTZlIX%2Fimage.png?alt=media&amp;token=faf42e6d-8bb0-4a77-98b0-cfc69ed66178" alt=""><figcaption></figcaption></figure>

4. If you would like to assign a new or existing user to one or multiple client accounts, click `Assign to client`.\ <br>

   <figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FcpGEjjoGktyhtEZZCcgG%2Fimage.png?alt=media&amp;token=6f9315fb-b504-40b2-88b5-cda9262ffbcf" alt=""><figcaption></figcaption></figure>
5. Select the user by clicking the dropdown or searching by name or email.
6. Once you select the user, you can search or scroll down your list of accounts and check the account(s) you would like them to have access to.
7. Here you can also determine their role, per account, as an Admin or Viewer.
8. Once complete, click `Assign`.\ <br>

   <figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FmVs2zbTUy3CGPjqtybAg%2Fimage.png?alt=media&amp;token=f97c9e93-1e29-444d-bf2c-aa9dc99bc8b0" alt=""><figcaption></figcaption></figure>
9. Once assigned to one or multiple accounts, the user can now navigate to Current workspace in the top right corner and select the accounts they would like to switch between.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2F6Xao5o1dOIngJ7dewudW%2Fimage.png?alt=media&amp;token=e5a660fc-8b7b-4af4-b631-32298f734dfc" alt=""><figcaption></figcaption></figure>

### How to Remove a User From a Client Account <a href="#how-to-remove-a-user-from-a-client-account" id="how-to-remove-a-user-from-a-client-account"></a>

To remove access to one or several client accounts, navigate to the Team tab in Agency management.

1. Select `View profile` next to the user record you would like to remove.\ <br>

   <figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FF6ySeGTnZufoQG603tpZ%2Fimage.png?alt=media&amp;token=85364b16-5bfa-480a-b05d-b7e1b94a0057" alt=""><figcaption></figcaption></figure>
2. The list of accounts that user has access to will be listed under Clients.
3. Click the `x` next to the desired account you would like to remove access from.\ <br>

   <figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FNhvudSAB4Yh4k6CvryUC%2Fimage.png?alt=media&amp;token=1af07782-ff1e-4dca-8fbd-de46d3f94a7a" alt=""><figcaption></figcaption></figure>
4. A pop-up window will appear, confirming your decision to remove access. Click `Remove access`.<br>

   <figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FfSiWsZpo9I1002GmKnYZ%2Fimage.png?alt=media&amp;token=01e98849-5010-42f8-8617-c7c58462a742" alt=""><figcaption></figcaption></figure>
5. This client will now no longer have access to the selected account(s).
6. If you would like to remove a user’s access to all client accounts, click on the Actions menu button on the user’s record and click `Remove from agency`.\ <br>

   <figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2F8sz7k7swGL3JhG9e9Hrf%2Fimage.png?alt=media&amp;token=1d8e83be-c1c7-4e0e-aba0-ea10607f6a09" alt=""><figcaption></figcaption></figure>
7. A pop-up window will appear, confirming you would like to remove the user from all agency client accounts they belong to. Click `Remove from all clients`.\ <br>

   <figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FmzeYbMIAkQODzozhf2gV%2Fimage.png?alt=media&amp;token=c847c59b-6633-48e2-82d4-eacd1aa1fe65" alt=""><figcaption></figcaption></figure>


# Generate and Manage an API Key

Untitled allows each user to generate and manage their own API credentials directly within the platform.

API keys are scoped to the individual user and workspace. Each user can have one API key per workspace, and requests made with that key are associated with the user who generated it.

### Generate an API Key

#### 1. Log in to Untitled

Log in to your Untitled account and confirm that you are working within the correct workspace.

#### 2. Open Developer Settings

From the navigation menu, select **Developer settings**.

This will open the **Manage your API key** page.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FODTcs7BXgn5MqsEgMqTT%2Fgenerate-api-key.png?alt=media&amp;token=c7a72c52-2074-4bd0-86c8-95dfb6b4ce40" alt=""><figcaption></figcaption></figure>

#### 3. Generate Your Key

Select **Generate API key**.

Once generated, your new secret key will appear within the page.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FihtwJOz2xM0Mpp4Roi9o%2Fkey-preview.png?alt=media&amp;token=3b621bf4-2e05-4da3-b44f-005320a593e1" alt=""><figcaption></figcaption></figure>

#### 4. Copy and Store Your Key

For security, the full key will remain hidden within Untitled. Select **Copy** to copy the complete key to your clipboard.

**Store the key securely and avoid including it directly in source code, emails, support tickets, or other unsecured locations.**

#### 5. Test Your Connection

Use the **Connection test** panel and select **Run test**.

Untitled will send a request to the `GET /auth/verify` endpoint to confirm that the key is valid and being accepted. A successful test will display a **Connected** confirmation.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FlbJmYxhCSLgyqxls53XR%2Ftest-connection.png?alt=media&amp;token=70787782-8086-41d1-a6fb-91dd2d8adbbb" alt=""><figcaption></figcaption></figure>

### Rotate or Revoke an API Key

You can return to **Developer settings** at any time to manage your credentials.

Select **Rotate** to replace the current key with a newly issued credential. Rotating the key immediately revokes the previous credential, so any systems using the old key will need to be updated.

Select **Revoke** to delete the key and disable API access for that credential. You can generate a new key later from the same page.

### Next Steps

Review the [Untitled API Documentation](https://docs.getuntitled.ai/api-documentation) for available endpoints, authentication requirements, request examples, and implementation guidance.


# Privacy & Consent Management

The Untitled ID Tag is designed to support compliance with applicable privacy requirements, including the California Consumer Privacy Act (CCPA/CPRA) and applicable GDPR requirements, when implemented and used appropriately. The Untitled Identity Tag and identity resolution services are designed exclusively for U.S. records and U.S.-based audiences and do not resolve EU/EEA resident identity records.

Privacy and appropriate disclosures are critical components of the Untitled ID Tag implementation process. **Before installing or activating the Untitled ID Tag, customers must maintain two core privacy mechanisms on any website where the Untitled iframe or JavaScript tag is deployed:**

1. An appropriate and publicly accessible Privacy Policy
2. A Consent Management Platform (CMP), consent string, or cookie consent banner

The Untitled ID Tag should only be permitted to fire after the appropriate consent has been obtained from the website visitor through the customer's consent management solution.

For Client Personal Data processed through the Untitled Platform, the customer generally acts as the business or data controller and Untitled acts as its service provider or data processor. Customers remain responsible for ensuring that their collection, use, disclosure, and activation of personal information complies with applicable privacy laws and that their website disclosures and consent practices accurately describe their use of the Untitled ID Tag.

For more information about Untitled's own privacy practices, please review our Privacy Policy:

<https://getuntitled.ai/privacy-policy/>

### Privacy Policy Requirements

A customer's Privacy Policy must be globally accessible from the website where the Untitled ID Tag is installed.

The Privacy Policy should accurately disclose the website's use of cookies, tags, pixels, or similar technologies for applicable marketing, advertising, remarketing, analytics, identity resolution, and related purposes. It should also describe the categories of information collected, how that information may be used or disclosed, and the methods available to consumers to exercise applicable privacy rights.

Untitled provides a [Privacy Policy template](/misc/privacy-and-consent-management/sample-privacy-policy) as a reference. However, each customer is responsible for ensuring that its Privacy Policy accurately reflects its own data collection, usage, disclosure, and retention practices. **We strongly encourage customers to review their policies and implementation with qualified legal counsel.**

### Consent Management

In addition to maintaining an appropriate Privacy Policy, Untitled requires customers to deploy a consent management solution on websites where the Untitled ID Tag is installed.

The consent solution should notify new website visitors about the use of cookies and similar technologies, provide appropriate choices regarding data collection, and direct users to the website’s Privacy Policy, which should more comprehensively describe applicable data collection, use, and disclosure practices. The Untitled ID Tag should be configured so that it does not fire unless the visitor has provided the consent required for the applicable processing.

Many website and publishing platforms provide consent-management functionality directly. Customers may also use a third-party Consent Management Platform.

Examples include:

* Osano
* CookieYes
* Cookiebot

This list is provided for convenience and is not exhaustive. Customers are responsible for selecting and configuring a consent management solution appropriate for their website, users, and applicable legal requirements.

### Consumer Privacy Requests and Opt-Outs

Customers must provide consumers with appropriate methods to exercise privacy rights required under applicable law.

To support California consumer privacy rights, customers should include access to Untitled's [**Do Not Sell or Share My Personal Information**](https://getuntitled.ai/do-not-sell-or-share-my-info/) request mechanism within their Privacy Policy or otherwise make the applicable opt-out mechanism available where required.

When Untitled receives a valid deletion or applicable opt-out request concerning Untitled Personal Data, Untitled will process the request in accordance with applicable privacy requirements and will prevent affected records from being provided where the request prohibits further disclosure or use.

Customers are also responsible for honoring privacy choices communicated directly through their own websites or systems. When a consumer has opted out of applicable advertising, sharing, sale, or other processing, customers should maintain appropriate suppression and preference-management controls across their marketing and advertising systems so that the consumer's privacy choices continue to be honored.

## Data Landscape and Privacy <a href="#frequentlyaskedquestions-datalandscapeandprivacy" id="frequentlyaskedquestions-datalandscapeandprivacy"></a>

<details>

<summary>Is the Untitled ID Tag compliant in the USA?</summary>

**Yes, when implemented correctly.** The Untitled ID Tag is designed to operate within applicable U.S. data privacy frameworks and is built around a first-party and second-party data model. This means the data originates from a direct interaction between a visitor and your website, rather than third-party tracking across sites.

However, compliance is not automatic. It depends on how you configure and use the tag within your broader privacy and consent framework. To remain compliant, you should:

* Clearly disclose data collection and usage practices in your website’s privacy policy, including marketing use cases
* Implement a consent management platform (CMP) that allows users to opt out of non-essential data collection
* Honor user preferences and opt-out signals in accordance with applicable laws and standards
* Avoid misrepresenting how data is collected, processed, or activated

For a more detailed overview of how consent and compliance should be handled, please review our [Privacy and Consent Management article](/misc/privacy-and-consent-management).

</details>

<details>

<summary>Is the Untitled ID Tag GDPR compliant?</summary>

Yes - the Untitled ID Tag services does not collect or store any data from individuals in the EU. Only within the United States/for U.S.-based contacts.

</details>

<details>

<summary>Is any personally-identifiable information (PII) transmitted to 3rd-parties via the Untitled ID Tag?</summary>

No. We do not transmit any PII to third parties in order to resolve your website visitors. Instead, we leverage joint first-party and second-party data through a consent-based framework, collecting information from the visitor’s browser and matching those signals against data sources through out-of-band or offline processes.

If you have any questions about how this works, or would like to confirm compliance before enabling the ID Tag feature, feel free to reach out. We’re happy to help.

</details>

<details>

<summary>Are visitors captured even if they don’t hit “Accept All” to my consent policy?</summary>

Whether a visitor is captured depends on how your consent management platform (CMP) is configured and implemented on your website. For clarity, a "Cookie Consent Banner" is the user-facing feature of a CMP.

In the United States (an “opt-out” jurisdiction), many CMPs allow tags to fire by default unless a user explicitly rejects non-essential cookies. This means a visitor may be included if they continue browsing without interacting with the consent banner, depending on your CMP’s settings. However, some CMPs provide more granular controls, allowing users to selectively disable certain categories of cookies, which can impact whether data is collected.

Ultimately, capture behavior is determined by how your consent framework is set up and whether it accurately enforces the user’s preferences. Untitled’s tag will follow the consent signal provided by your CMP and will not fire where a user has explicitly opted out of applicable data collection.

For a more detailed overview, we recommend reviewing our [Privacy and Consent Management article](/misc/privacy-and-consent-management), which covers implementation considerations and consent handling in greater depth.

</details>

<details>

<summary>Why would someone who accepted my Cookie policy NOT be resolved?</summary>

Even with consent, not every visitor can be resolved. Common reasons include:

* **Not in our dataset:** The individual may not exist in our data.
* **Geography:** We exclusively resolve U.S.-based visitors only.
* **Age:** Our data covers individuals 18 and older.
* **Insufficient signal:** We require high-confidence, deterministic matches. If signals are weak or conflicting, we will not resolve the visitor.
* **Browser limitations:** Resolution is strongest on Chrome; other browsers may have lower match rates.
* **Private browsing:** Incognito or similar modes reduce the ability to resolve users.
* **VPNs or proxies:** These can obscure device signals and prevent accurate matching.

If you have questions about specific edge-cases, your Customer Success Manager can help review.

</details>

<details>

<summary>If a website visitor opts out of the cookie policy, will their visit to the site still be tracked in other tools such as Google Analytics?</summary>

Whether a visitor's site visit is tracked in tools like Google Analytics after opting out of the cookie policy depends on your cookie consent tool settings. In the U.S., you can inform visitors about the use of cookies for marketing and tracking, and allow them to opt in or out. Tools like Osana and CookieYes offer options to customize this.&#x20;

</details>

<details>

<summary>Can I email my website visitors, even if they didn’t ask to be contacted?</summary>

**Yes, with conditions.** You can email your website visitors, but you must comply with the requirements of the CAN-SPAM Act. This includes (but is not limited to) providing clear identification of the sender, an accurate subject line, a physical mailing address, and a clear, functioning opt-out mechanism in every message. Recipients must be able to unsubscribe easily, and those requests must be honored promptly.

We also encourage users to conduct their own research to develop a more complete understanding of CAN-SPAM requirements and how they apply to their specific use case.

</details>

<details>

<summary>Can I text or call my website visitors?</summary>

Having a phone number in Untitled does **not** constitute consent for marketing phone calls or SMS messaging. Under the Telephone Consumer Protection Act (TCPA), SMS requires a higher standard of consent than most other marketing channels. This includes explicit opt-in requirements and compliance with restrictions such as “quiet hours” (generally 9 PM–8 AM in the recipient’s local time zone).

SMS consent must be collected and managed deliberately, and requirements can vary by state. If you are already using platforms like Klaviyo or Mailchimp, their built-in SMS tools and consent workflows are often the most straightforward way to stay compliant. Alternatively, you can implement third-party consent management solutions on your website to capture and store proper opt-ins.

Additional Resources:

[Untitled Messaging Policy Agreement](https://getuntitled.ai/messaging-policy/)

[SMS Compliance and Consent Overview from Klaviyo](https://help.klaviyo.com/hc/en-us/articles/360035056972)

</details>

<details>

<summary>What does the JavaScript code send Untitled?</summary>

IP Address, Time Stamp, Cookies, Browser Details, Page URL(s) and the referring URL.

</details>


# Set up a cookie consent banner with Cookiebot

Use Google Tag Manager and a Cookiebot account to create a cookie consent banner, and classify the Untitled Tag as a marketing/advertising cookie so that it only fires for consenting users.

{% embed url="<https://www.youtube.com/watch?v=faCTAOjH0ic>" %}

This video walks through the process of using the Cookiebot consent management platform to create a cookie consent banner for your website, as well as two methods for classifying the Untitled Tag as a marketing cookie.&#x20;

Step 1: Configure your cookie consent banner

0:00 Intro&#x20;

0:17 Prerequisites&#x20;

0:27 Turn on Consent Overview in Google Tag Manager&#x20;

0:45 Use the Cookiebot wizard to configure your cookie banner&#x20;

2:24 Add the Cookiebot CMP Template in Google Tag Manager&#x20;

2:37 Create a new Google Tag for Cookiebot CMP with your Domain group ID from Cookiebot&#x20;

3:14 Save and publish the updated Google Tag Manager container&#x20;

Step 2: Configure your Untitled Tag as a Marketing Cookie

3:40 Method 1: Use Google Tag Manager to update your Untitled Tag configuration for ad\_storage consent&#x20;

4:11 Method 2: Use Cookiebot to classify the Untitled Tag as a marketing cookie

Step-by-step text and screenshot walkthrough coming soon! Have extra questions or prefer to walk through this with someone on a video call? Email <support@getuntitled.ai> .&#x20;


# Sample Privacy Policy

You may use this sample as a starting point for your website’s privacy policy, covering how your business collects, uses, and shares personal information and the choices available to visitors.

## Overview

The sample below provides a general starting point for businesses creating a privacy policy for their website. It describes common information collection, use, and disclosure practices, along with privacy choices and other general provisions.

**Untitled provides this template as a reference for informational purposes only. It is not legal advice and does not guarantee compliance with applicable laws. We strongly encourage each client to review the policy with qualified legal counsel and tailor it to accurately reflect its website, data practices, and applicable regulatory requirements.**

**Before publishing, replace the business-specific placeholders (contained in brackets: `[]` ) and confirm that the policy accurately describes your practices.**&#x20;

Remove statements that do not apply and add any disclosures required for your business. Your website controls and internal processes should support the choices and commitments described in the policy.

***

## Sample Privacy Policy

**Last updated:** `[Date]`

`[Business name]` respects your privacy. This Privacy Policy describes how we collect, use, disclose, and protect personal information when you visit `[Website URL]`, use our products or services, or otherwise interact with us. It also explains your choices regarding your information.

In this policy, we, us, and our refer to `[Business name]`. Personal information means information that identifies, relates to, or can reasonably be linked to an individual or household, as defined by applicable law.

### 1. Information We Collect

#### Information you provide

We collect information you provide when you submit a form, make a purchase, create an account, subscribe to communications, participate in a survey or promotion, or contact us. Depending on how you interact with us, this may include your name, email address, telephone number, mailing address, billing and shipping information, account details, company information, preferences, and the content of your communications.

We also collect information you choose to submit through our website, such as reviews, comments, feedback, and other content. If you provide information about another person, you should have the authority to provide it for the intended purpose.

You may choose not to provide certain information, although this may limit our ability to fulfill a request, complete a transaction, or provide particular features or services.

#### Information collected automatically

When you visit our website, we and our service providers may automatically collect information about your browser, device, and use of the website. This may include your IP address, browser type, operating system, device identifiers, cookie identifiers, referring website, pages viewed, links clicked, and the dates and times of your visits. We may also derive an approximate location from your IP address.

We may collect information about your interactions with our emails and advertisements, such as whether you opened a message or clicked a link. This information helps us understand engagement and improve our communications.

#### Information from other sources

We may receive information from business partners, referral sources, marketing and analytics providers, social media platforms, and publicly available sources. This may include contact information, professional information, demographic information, interests, and information about your interactions with those sources.

If you connect a third-party account or use a third-party sign-in feature, we may receive information that the service makes available based on your permissions and account settings.

We may combine information from these sources with information we collect directly to maintain accurate records, understand our customers, and support the purposes described in this policy.

#### Transaction information

When you make a purchase, we collect information needed to process the transaction, fulfill your order, and provide related support. This may include order details, billing and shipping information, payment information, and transaction history. Payment providers may process payment information on our behalf. Their own privacy notices may also apply to information they collect directly.

### 2. How We Use Information

We use personal information to:

* Provide, operate, and improve our website, products, and services.
* Process payments, fulfill orders, and manage returns, billing, and related requests.
* Create and administer accounts and remember your preferences.
* Respond to inquiries, provide customer support, and communicate about your relationship with us.
* Send order confirmations, account notifications, service updates, and other administrative messages.
* Personalize content, recommendations, and offers.
* Send marketing communications and promote our products and services, subject to applicable requirements and your preferences.
* Understand website usage, develop audiences, and measure advertising and marketing performance.
* Administer surveys, promotions, and events.
* Detect and prevent fraud, unauthorized activity, and other misuse.
* Maintain business records, comply with legal obligations, enforce agreements, and establish, exercise, or defend legal claims.

We may also use information for purposes described at the time of collection or with your consent where required by law.

### 3. Cookies, Analytics, and Advertising

We use cookies, pixels, tags, local storage, and similar technologies to operate our website, remember preferences, understand visitor activity, and support advertising. Cookies are small files stored on your device. Pixels and similar technologies can help record actions such as viewing a page or opening an email.

Some technologies support essential functions, such as security, account access, and shopping carts. Others help us analyze website performance, personalize your experience, and measure or deliver advertising.

We may work with analytics and advertising providers that collect information through these technologies. Advertising providers may use information about activity over time and across websites or services to display ads that are relevant to your interests. We may also provide contact information or other identifiers to support audience matching and campaign measurement. Encoded or hashed identifiers may still be associated with you and are not necessarily anonymous.

You can manage optional technologies through `[Cookie Settings URL]`. You can also adjust your browser settings to block or delete cookies and other stored information. Disabling certain technologies may affect website functionality. We obtain consent where required by applicable law.

Cookie controls do not necessarily delete information already collected. Additional privacy choices are described below.

### 4. Website Visitor Identification

We use the Untitled Identity Tag to help associate website activity, such as IP addresses, cookie identifiers, browser information, and pages visited, with an existing identity record. This may allow us to obtain contact information and related attributes even if you have not submitted a form on our website. We may use this information for visitor analysis, marketing, advertising, audience development, and campaign measurement, subject to applicable consent requirements and your choices. We obtain the appropriate consent before activating the tag.

You can manage website preferences through `[Cookie Settings URL]` or contact us using the information below. For information about this provider’s practices and requests concerning information it controls, see [Untitled’s Privacy Policy](https://getuntitled.ai/privacy-policy/) and [Consumer Privacy Request form](https://getuntitled.ai/do-not-sell-or-share-my-info/).

### 5. How We Disclose Information

We may disclose personal information in the following circumstances:

**Service providers.** We share information with companies that help us operate our business, including hosting providers, payment processors, fulfillment providers, customer support services, analytics providers, marketing platforms, advertising platforms and communications platforms. These providers process information to perform services for us, subject to applicable contractual and legal requirements.

**Advertising and marketing partners.** We may disclose contact information, online identifiers, website activity, transaction or conversion information, and audience information to advertising and marketing partners to support relevant advertising, audience matching, and measurement, subject to applicable requirements and your choices.

**Affiliates and business partners.** We may share information with affiliated businesses and partners when necessary to administer our operations, provide jointly offered products or services, or fulfill your requests.

**At your direction.** We may disclose information when you request or authorize it, such as when you connect another service or participate in a jointly offered program.

**Legal and protective purposes.** We may disclose information to comply with applicable law or valid legal process, obtain professional advice, enforce our agreements, prevent fraud, or protect the rights, property, or safety of our business, customers, or others.

**Business transactions.** Information may be disclosed or transferred in connection with a proposed or completed merger, acquisition, reorganization, financing, sale of assets, or similar transaction, subject to applicable legal requirements.

#### Sale, sharing, and targeted advertising

`[State whether your business sells personal information, shares it for cross-context behavioral advertising, or processes it for targeted advertising under applicable law. Identify the actual information and recipient categories involved, and provide the applicable opt-out link. This statement must reflect your business’s practices.]`

### 6. Your Choices and Privacy Rights

#### Marketing communications

You can unsubscribe from marketing emails by following the unsubscribe instructions in the message or contacting us. We may continue to send transaction confirmations, security notices, and other necessary service communications.

You may contact us to request that we stop sending promotional postal mail. If you participate in a text messaging program, follow the opt-out instructions provided in the messages or applicable program terms.

Marketing unsubscribe requests, cookie preferences, and advertising opt-outs address different activities. Contact us if you need help managing your preferences.

#### Account information

If you have an account, you may be able to review and update certain information through your account settings. You may also contact us to request correction or deletion of account information. We may retain information where necessary for legal obligations, fraud prevention, dispute resolution, or other permitted purposes.

#### Privacy requests

Depending on your location and applicable law, you may have the right to:

* Confirm whether we process your personal information and request access to it.
* Correct inaccurate personal information.
* Request deletion of personal information, subject to applicable exceptions.
* Obtain a portable copy of personal information.
* Opt out of the sale or sharing of personal information, targeted advertising, or certain types of profiling.
* Limit certain uses or disclosures of sensitive personal information.
* Withdraw consent where processing is based on consent.
* Appeal a decision concerning a privacy request.

You can submit a request using `[Privacy Request URL]` or by contacting us at `[Privacy email address]`. We may need to verify your identity or authority before fulfilling certain requests, where permitted or required by law. We do not require identity verification for opt-out requests where prohibited by law.

Where applicable, you may authorize an agent to submit a request on your behalf. We may request appropriate evidence of that authorization and additional verification where permitted. We will respond within the time required by applicable law. We will not unlawfully discriminate against you for exercising your privacy rights.

### 7. Information Retention

We retain personal information for as long as reasonably necessary for the purposes described in this policy, including providing services, maintaining business records, complying with legal obligations, resolving disputes, and honoring privacy preferences.

Retention periods vary based on the type of information, the nature of our relationship with you, and applicable requirements. We consider whether the information remains necessary, whether we have an ongoing legal or business need to retain it, and the potential risks associated with retaining it.

`[Insert your business’s actual retention periods or meaningful criteria by information category, including any category-specific disclosures required by applicable law.]`

### 8. Information Security

We endeavor to protect the privacy of your account and other Personal Information we hold in our records, but we cannot guarantee complete security. Unauthorized entry or use, hardware or software failure, and other factors, may compromise the security of user information at any time.

We maintain administrative, technical, and physical safeguards designed to protect personal information against unauthorized access, use, alteration, and disclosure. However, no method of transmission or storage is completely secure, and we cannot guarantee absolute security.

If you create an account, keep your login credentials confidential and notify us if you suspect unauthorized access or use.

### 9. Children’s Privacy

Our website and services are not directed to children under `[Applicable age].` We do not knowingly collect personal information from children below that age. If you believe a child has provided personal information to us, please contact us so we can investigate and take appropriate action, including deletion where required by law.

### 10. Public Content and Third-Party Services

Content you choose to post in public areas of our website, such as reviews or comments, may be visible to other people. Please consider what personal information you include in publicly available content.

Our website may link to other websites or provide access to third-party services, features, or integrations. Those third parties have their own privacy practices, which are described in their privacy notices. This policy describes our own practices, including the information collection and disclosures we enable through our website.

### 11. International Processing

We and our service providers may process information in countries other than where you live. Those countries may have different privacy laws. Where applicable law requires protections for international transfers, we implement the required safeguards.

`[Identify the actual processing locations and applicable transfer safeguards if your business processes information internationally. Remove this section if it does not apply.]`

### 12. Changes to This Policy

We may update this Privacy Policy to reflect changes in our practices, services, or legal requirements. We will post the updated policy and revise the date above. We will provide additional notice or obtain consent when required by law. You are bound by any changes to the Privacy Policy when you use the Website after such changes have been first posted.

### 13. Contact Us

If you have questions about this Privacy Policy or would like to exercise an applicable privacy right, contact us:

`[Business name]`\
`[Mailing address]`\
`[Privacy email address]`\
`[Privacy Request URL]`\
`[Telephone number]`

You may also contact us to request this policy in an accessible alternative format.

***

### Additional Coverage to Consider

*The following notes are for the business preparing its policy and are separate from the sample policy above.*

Depending on your business, additional disclosures may be needed for:

* **State privacy laws:** State-specific categories, sources, purposes, recipients, sale and sharing disclosures, retention, rights, and request procedures. A separate notice at collection may also be required.
* **Sensitive information:** Health, financial, biometric, precise location, or other sensitive information collected or inferred by your business.
* **Loyalty programs and incentives:** Programs offering discounts or benefits connected to the collection or use of personal information.
* **Automated decisions:** Profiling or automated decisions that trigger specific notice or consumer rights requirements.
* **Website interaction tools:** Chat, session replay, call recording, or similar technologies that capture the content of interactions.
* **Children and teenagers:** Services used by minors that require additional notices, consent, or other protections. Untitled Personal Data does not include information regarding individuals under the age of 18. Our identity resolution and data services are not intended to identify, enrich, license, or provide personal information concerning minors.&#x20;
* **International or industry-specific obligations:** Additional requirements arising from where your customers are located or the products and services you offer. Untitled data, the identity graph and its identity resolution services are designed for U.S. records and U.S.-based audiences exclusively.

<br>


# Procurement Resources

### Overview

This article provides an overview of Untitled’s approach to information security, infrastructure protection, vulnerability and patch management, data protection, and operational resilience. It is intended to assist enterprise customers, procurement teams, and security reviewers evaluating Untitled as a technology vendor.

Untitled provides a cloud-based Audience Platform used by organizations to perform identity resolution, data enrichment, audience building, and marketing activation workflows. The Platform processes website interaction signals, pseudonymous identifiers, and technical metadata in connection with these services.

Because the Platform operates on infrastructure that processes marketing and identity data, security, privacy, and operational reliability are foundational considerations in how Untitled designs and operates its systems.

***

### Security Philosophy

Untitled’s security program is based on practical, layered controls designed to protect Platform infrastructure, customer data, and internal systems.

Core principles include:

**Least-privilege access**\
Access to infrastructure, production systems, and internal tools is granted based on role and limited to personnel whose responsibilities require it.

**Defense-in-depth**\
Security controls are implemented across infrastructure, application, network, and identity layers rather than relying on a single protective mechanism.

**Secure cloud architecture**\
Untitled’s Platform is deployed on Amazon Web Services (AWS) and leverages cloud security controls including encrypted storage, private networking, identity and access controls, and managed infrastructure services.

**Continuous monitoring and maintenance**\
Infrastructure dependencies and system components are monitored for vulnerabilities, operational issues, and required updates through automated tooling and internal review processes.

### Information Security Program Scope

Untitled maintains an information security program designed to protect the confidentiality, integrity, and availability of our systems, Platform Services, and the information we process.

Our security practices include controls across the following areas:

* Infrastructure and cloud security
* Identity and access management
* Encryption and data protection
* Secure development and change management
* Vulnerability management and patching
* Logging, monitoring, and observability
* Backup, recovery, and operational resilience
* Incident response
* Vendor and subprocessor management
* Personnel and physical security

Additional information about Untitled's security practices and controls is available in our [**Information Security Policy**](/misc/procurement-resources/information-security-policy).

***

### Infrastructure Model

Untitled operates as a cloud-native SaaS platform hosted within Amazon Web Services (AWS).

Production infrastructure is deployed within AWS regions located in the United States and utilizes managed cloud infrastructure and redundancy controls to support system reliability.

Applicable production data stores are backed up automatically on a daily basis. Untitled also maintains write-ahead logging for applicable database systems, supporting point-in-time recovery at approximately five-minute intervals. Backup data is protected through appropriate encryption and access controls.

***

### Encryption & Data Protection

Untitled protects data both in transit and at rest using widely adopted encryption standards.

* Data in transit is encrypted using TLS 1.2 or higher.
* Sensitive data stored in databases and object storage is encrypted using AES-256 encryption.
* Encryption keys are managed using AWS Key Management Service (KMS).

Additional information about Untitled's data protection practices and controls is available in our [**Information Security Policy**](/misc/procurement-resources/information-security-policy).

***

### Identity & Access Management

Access to internal systems and infrastructure is governed through role-based access controls and centralized identity and access management.

Multi-factor authentication (MFA) is required for access to production systems, cloud infrastructure, administrative tooling, and other systems containing sensitive company or customer information.

User access privileges are reviewed periodically and are revoked without undue delay when access is no longer required, including upon employee off-boarding.

Additional information about Untitled's access and authentication controls is available in our [**Information Security Policy**](/misc/procurement-resources/information-security-policy).

***

### Observability & Patch Management

Untitled maintains a risk-based approach to identifying, prioritizing, and remediating security vulnerabilities and system errors across its infrastructure, applications, and dependencies. Issues are identified through automated scanning tools, monitoring of publicly disclosed vulnerabilities such as CVEs, vendor alerts, and internal observability and engineering processes.

Each issue is evaluated based on severity, exposure, and potential impact, with critical vulnerabilities prioritized for immediate remediation and lower-severity issues addressed through standard maintenance and release cycles. Where immediate fixes are not feasible, mitigating controls may be implemented to reduce risk.

Patches and updates are deployed through controlled processes, including CI/CD pipelines, managed cloud services, and version-controlled dependency updates. Untitled maintains ongoing visibility into vulnerabilities through automated issue tracking, alerting, and structured internal review processes.

Additional information about Untitled's observability systems and patch management processes is available in the [**Observability & Patch Management Policy**.](/misc/procurement-resources/observability-and-patch-management-policy)

***

### Incident Response & Operational Resilience

Untitled maintains internal procedures for responding to security incidents and operational disruptions.

These procedures address incident reporting, escalation, investigation, containment, communication, remediation, and recovery activities.

In the event of a confirmed security incident affecting customer data, Untitled will notify affected customers in accordance with applicable legal requirements and the obligations defined in its [**Platform Services Agreement**](https://getuntitled.ai/platform-services-agreement/).

Additional information regarding incident response and operational resilience is available in our [**Information Security Policy**](/misc/procurement-resources/information-security-policy).

***

### Vendor & Subprocessor Management

Untitled uses a limited set of third-party infrastructure and service providers to support operation of the Platform.

Third-party providers are evaluated based on factors including the nature of the service, information involved, intended use, and applicable security, privacy, compliance, and operational considerations.

Where third-party subprocessors process Client Personal Data, they are subject to applicable contractual and data protection requirements. Untitled remains responsible for its subprocessors as provided in the [**Platform Services Agreement**](https://getuntitled.ai/platform-services-agreement/).

A current list of third-party subprocessors and additional information about vendor oversight is available in the [**Third-Party Subprocessors**](/misc/procurement-resources/third-party-subprocessors) article.

***

### Enterprise Procurement & Security Reviews

Untitled regularly works with enterprise customers that require vendor security, privacy, and procurement reviews. This documentation section is intended to support those processes by providing an overview of our systems, controls, standards, policies, subprocessors, and data-handling practices.

### Questions

If additional documentation or questionnaire responses are required as part of a procurement process, please contact us at [**support@getuntitled.ai**](mailto:support@getuntitled.ai).


# Information Security Policy

### 1. Purpose

Untitled, LLC ("Untitled") maintains an information security program designed to protect the confidentiality, integrity, and availability of information processed through Untitled's systems and Platform Services.

This policy describes the administrative, technical, organizational, and physical safeguards Untitled uses to protect Client Data, Personal Data, Untitled systems, and other confidential or sensitive information from unauthorized access, disclosure, alteration, loss, misuse, or destruction.

Untitled's security practices are designed to support the operation of a cloud-based Software-as-a-Service platform and the identity resolution, enrichment, audience, intent, activation, integration, API, and related services provided through the Untitled Platform.

### 2. Scope

This policy applies to:

* Untitled's production infrastructure and Platform Services;
* systems and applications used to process, transmit, or store Client Data, Personal Data, or other confidential information;
* personnel with authorized access to Untitled systems or information;
* third-party service providers and subprocessors where applicable; and
* data received or transmitted through authorized Platform interfaces, integrations, APIs, tags, data connections, and destinations.

Security requirements are applied based on the nature of the system, information being processed, level of access, and associated operational or security risk.

### 3. Security Governance and Responsibility

Responsibility for information security is shared across Untitled's technical and operational functions.

Personnel responsible for systems, infrastructure, applications, and business operations are expected to implement and maintain security controls appropriate to their responsibilities. Security considerations are incorporated into infrastructure management, software development, access administration, vendor management, incident response, and ongoing Platform operations.

Security policies, procedures, and controls are reviewed and may be updated as Untitled's services, technologies, risks, contractual obligations, and legal requirements evolve.

### 4. Risk Management

Untitled takes a risk-based approach to information security.

Security risks are evaluated in connection with system architecture, infrastructure and application changes, vulnerability management, third-party services, operational events, and other activities where security considerations may arise.

Identified risks are evaluated according to factors such as likelihood, potential impact, affected systems or information, exposure, and available mitigating controls. Remediation and other risk-response activities are prioritized accordingly.

### 5. Information Protection

Untitled applies safeguards appropriate to the sensitivity and purpose of the information it processes.

Client Data and Client Personal Data are treated as confidential information and are protected from unauthorized access, use, or disclosure. Access is limited to authorized personnel and systems where required to provide, operate, maintain, secure, or support the Platform Services.

Untitled processes Client Personal Data on behalf of its clients and in accordance with applicable agreements, documented client instructions, and applicable law.

Untitled does not sell or share Client Personal Data.

### 6. Access Control and Authentication

Untitled applies access controls designed to restrict system and information access to authorized users.

Core access control practices include:

* applying least-privilege principles when granting access to infrastructure, production systems, internal tools, and information;
* granting access based on job responsibilities and business need;
* maintaining individual user credentials rather than shared user access where reasonably practicable;
* requiring multi-factor authentication for access to production systems, cloud infrastructure, administrative tooling, and other sensitive systems;
* restricting access to Personal Data and Client Data to authorized personnel;
* reviewing and modifying access as responsibilities change; and
* revoking access without undue delay when it is no longer required.

Remote access to critical infrastructure requires secure access controls, including VPN access when authorized personnel are not connected through Untitled's office network.

Clients are responsible for maintaining the confidentiality of credentials issued to their authorized users and for ensuring that Platform access is limited to appropriate personnel.

### 7. Encryption and Data Transmission

Untitled protects data in transit and at rest using industry-standard encryption mechanisms.

Data transmitted to or from supported Untitled systems is protected using TLS 1.2 or higher where applicable.

Sensitive information stored within production databases and object storage is encrypted at rest using AES-256 encryption or equivalent protections provided through Untitled's cloud infrastructure.

Encryption keys, credentials, secrets, and other sensitive authentication materials are managed through access-controlled systems and are not intentionally exposed through application interfaces or public repositories.

### 8. Cloud Infrastructure and Network Security

Untitled operates as a [cloud-native SaaS platform](/misc/procurement-resources/platform-data-flows). Core Platform production infrastructure and identity resolution systems are hosted within Amazon Web Services ("AWS") in the United States.

Untitled does not operate on-premises production infrastructure or data centers.

Untitled applies technical controls designed to protect cloud infrastructure and network-accessible systems, including:

* authentication and authorization controls;
* network access restrictions;
* firewalls and other network security mechanisms;
* separation of access privileges based on role and responsibility;
* monitoring of production infrastructure and services;
* encryption of data transmitted across supported network connections; and
* controls intended to reduce unauthorized access to production resources.

Access to production infrastructure is restricted to personnel with an authorized operational need.

### 9. Secure Development and Change Management

Untitled incorporates security considerations into the development, deployment, maintenance, and operation of Platform software and infrastructure.

Software and infrastructure changes are developed, reviewed, tested, and deployed through managed development and release processes appropriate to the nature of the change.

Development, testing, and production activities are appropriately separated, and production changes are managed through established change-management processes.

Untitled considers recognized secure-development practices, including applicable OWASP guidance, when developing and maintaining Platform services.

### 10. Vulnerability and Patch Management

Untitled maintains vulnerability and patch management processes designed to identify, evaluate, prioritize, and remediate software vulnerabilities, security weaknesses, and required updates.

Untitled follows a risk-based approach to remediation. Factors considered may include:

* vulnerability severity;
* likelihood of exploitation;
* system exposure;
* affected information or functionality;
* availability of a vendor patch or remediation;
* operational impact; and
* availability of compensating or mitigating controls.

Untitled performs periodic vulnerability scanning of applicable systems. Identified vulnerabilities are prioritized according to severity and risk, with critical and high-severity vulnerabilities receiving accelerated remediation.

Zero-day and actively exploitable vulnerabilities are evaluated promptly and addressed based on their potential impact and exposure.

Where immediate remediation is not reasonably feasible, Untitled may implement mitigating controls while a permanent correction is developed, tested, or made available.

Additional information is available in Untitled's Observability & Patch Management Policy.

### 11. Logging, Monitoring, and Observability

Untitled maintains logging and [observability capabilities](/misc/procurement-resources/observability-and-patch-management-policy) to support the operation, security, troubleshooting, and performance of the Platform.

Depending on the applicable system, logs may include authentication activity, user and administrative actions, API activity, diagnostic information, application events, infrastructure activity, performance information, and security-related events.

Monitoring and observability information may be used to:

* identify system errors or abnormal behavior;
* detect potential security events;
* troubleshoot Platform issues;
* evaluate system performance and availability;
* support vulnerability and patch management;
* investigate suspected incidents; and
* maintain appropriate audit and operational records.

Access to security and operational logging systems is restricted to authorized personnel.

### 12. Backup, Recovery, and Availability

Untitled maintains backup and recovery capabilities designed to protect production data and support restoration following an operational failure, security event, or other disruption.

Applicable production data stores are backed up automatically on a daily basis. Untitled also maintains write-ahead logging for applicable database systems, supporting point-in-time recovery at approximately five-minute intervals.

Backup and recovery controls include:

* automated daily backups of applicable production data stores;
* point-in-time recovery capabilities for applicable database systems;
* encryption and access controls appropriate to backup and recovery data;
* monitoring of backup status;
* redundancy and recovery mechanisms designed to reduce the risk of data loss and service interruption; and
* procedures for restoring data and Platform functionality following an operational failure or other disruption.

Backup configurations and retention periods may vary based on the applicable system, data store, service criticality, and underlying cloud infrastructure.

Untitled maintains recovery procedures appropriate to the nature and criticality of its production systems.

### 13. Security Incident Response

Untitled maintains procedures for identifying, reporting, investigating, containing, remediating, and documenting suspected or confirmed security incidents.

A Security Incident includes actual or suspected unauthorized access, use, disclosure, modification, loss, or destruction of Personal Data or Client Data, or another compromise of safeguards protecting that information.

When a Security Incident involving Client Data or Client Personal Data occurs, Untitled will:

1. investigate the nature and scope of the incident;
2. take appropriate steps to contain and remediate the incident;
3. notify affected clients without undue delay after becoming aware of the Security Incident, as required by the applicable agreement and law;
4. provide reasonably requested information concerning the incident, affected information, and remediation activities;
5. reasonably cooperate with affected clients in connection with their response obligations; and
6. evaluate and implement appropriate measures intended to reduce the likelihood of recurrence.

Security incidents are evaluated according to their severity, scope, affected systems or information, and potential operational, contractual, privacy, or security impact.

### 14. Third-Party Service Providers and Subprocessors

Untitled uses third-party service providers and subprocessors to support functions such as cloud hosting, infrastructure, authentication, security, communications, analytics, payments, customer support, and other Platform or business operations.

Third-party providers are evaluated based on factors including the nature of the service, information involved, intended use, and applicable security, privacy, compliance, and operational considerations.

Where a subprocessor processes Client Personal Data in connection with the Platform Services:

* the subprocessor is subject to applicable contractual and data protection requirements;
* Untitled requires data protection obligations appropriate to the services being provided;
* Untitled provides reasonable advance notice of new subprocessors where required by the applicable client agreement; and
* Untitled remains responsible for its subprocessors as provided by the Platform Services Agreement.

Untitled maintains a [current list of applicable third-party subprocessors](/misc/procurement-resources/third-party-subprocessors) within its Procurement Resources documentation.

### 15. Data Retention and Secure Deletion

Untitled retains information only for as long as reasonably necessary for the applicable business, operational, contractual, security, or legal purpose.

Client Personal Data is retained and deleted in accordance with the applicable client agreement and legal requirements.

Upon expiration or termination of applicable Platform Services, Untitled will, at the client's option and subject to applicable contractual terms:

* return Client Personal Data in a commonly used electronic format; or
* securely delete applicable Client Personal Data from Untitled systems.

Information required to be retained by law may be retained for the required period and will remain subject to appropriate protections.

Limited suppression or opt-out records may also be retained where necessary to continue honoring privacy choices. Aggregated or de-identified information may be retained where permitted by applicable agreements and law.

### 16. Privacy and Data Protection

Information security and privacy protections are applied together as part of Untitled's data protection practices.

For Client Personal Data processed through the Platform:

* the client generally acts as the business, controller, or equivalent role under applicable privacy law;
* Untitled generally acts as the service provider, processor, or equivalent role;
* Untitled processes Client Personal Data to provide the Platform Services and in accordance with applicable client instructions and agreements;
* Untitled does not sell or share Client Personal Data; and
* Untitled maintains safeguards designed to protect Client Personal Data from unauthorized access, disclosure, alteration, loss, misuse, or destruction.

Untitled's identity graph and identity resolution services are designed for United States records and U.S.-based audiences, and core production infrastructure supporting these services is hosted in the United States.

Additional information regarding Untitled's collection, use, disclosure, and protection of Personal Data is available in the Untitled [Privacy Policy](https://getuntitled.ai/privacy-policy/) and [Platform Services Agreement](https://getuntitled.ai/platform-services-agreement/).

### 17. Personnel Security and Security Awareness

Personnel with access to Untitled systems or confidential information are expected to follow applicable information security, confidentiality, access control, and data protection requirements.

Untitled applies access restrictions based on personnel responsibilities and limits production or sensitive system access to individuals with an authorized business need.

Personnel are expected to:

* protect authentication credentials;
* protect Client Data and other confidential information from unauthorized access or disclosure;
* use approved methods for accessing critical infrastructure;
* follow applicable security and data handling requirements; and
* promptly report suspected security incidents or vulnerabilities through appropriate internal channels.

Untitled provides personnel with security and data protection guidance and training appropriate to their responsibilities.

Access to Untitled systems is revoked without undue delay following termination or when access is otherwise no longer authorized.

### 18. Physical Security

Untitled's critical production systems and infrastructure are cloud-based and are not hosted within Untitled's office facilities.

Physical protection of cloud infrastructure is provided through Untitled's applicable infrastructure and hosting providers.

Access to Untitled office space is restricted through building and suite access controls. Personnel are expected to protect company-issued devices and other resources from unauthorized physical access, loss, or theft.

Company-managed laptops used to access sensitive systems are protected using full-disk encryption.

### 19. Client Security Responsibilities

Security of the Platform also depends on appropriate actions by clients and authorized users.

Clients are responsible for:

* maintaining the confidentiality of Platform usernames, passwords, API keys, and other access credentials;
* restricting access to authorized users;
* promptly removing access that is no longer required;
* using the Platform only for lawful and authorized purposes;
* maintaining appropriate privacy notices and consent mechanisms where required;
* maintaining a privacy policy and consent management or cookie consent solution where the Untitled Identity Tag is deployed;
* protecting Client-controlled systems and integrations connected to Untitled;
* promptly reporting suspected unauthorized access, security issues, errors, or anomalies; and
* refraining from attempts to bypass Platform security controls, probe systems for vulnerabilities without authorization, or otherwise interfere with Platform security or operation.

Client-selected third-party destinations and integrations may be subject to the security and privacy practices of those third parties after information is transmitted at the client's direction.

### 20. Policy Review and Maintenance

Untitled periodically reviews this policy and its underlying security practices and may update them to reflect changes in:

* security risks and threats;
* technologies and Platform architecture;
* business operations;
* security controls and procedures;
* legal and regulatory requirements;
* contractual obligations; and
* third-party services.

Material changes may be incorporated into this policy or related Procurement Resources documentation as appropriate.

### 21. Related Resources

Additional information regarding Untitled's security, privacy, infrastructure, subprocessors, and data processing practices is available through the following resources:

* [Platform Services Agreement](https://getuntitled.ai/platform-services-agreement/)
* [Privacy Policy](https://getuntitled.ai/privacy-policy/)
* [Procurement Resources](/misc/procurement-resources)
* [Observability & Patch Management Policy](/misc/procurement-resources/observability-and-patch-management-policy)
* [Third-Party Subprocessors](/misc/procurement-resources/third-party-subprocessors)
* [Platform Data Flows](/misc/procurement-resources/platform-data-flows)

### 22. Additional Information

This policy provides a **high-level description of Untitled's current information security practices** and is intended to assist clients and prospective clients with security, procurement, and vendor review processes.

This policy does not replace or modify the terms of an applicable [Platform Services Agreement](https://getuntitled.ai/platform-services-agreement/), order form, data processing agreement, or other written agreement between Untitled and a client. In the event of a conflict, the applicable executed agreement will control.

### Questions

If you have questions regarding Untitled's information security, privacy, or procurement practices, please contac&#x74;**:** **<support@getuntitled.ai>**


# Observability & Patch Management Policy

### 1. Purpose

Untitled, LLC ("Untitled") maintains observability, vulnerability management, and patch management practices designed to support the security, reliability, and availability of its systems and Platform Services.

This policy describes Untitled's approach to identifying, evaluating, prioritizing, and remediating software vulnerabilities, system errors, and required updates across its infrastructure, applications, and dependencies.

Untitled's observability and patch management practices are designed to reduce exposure to known vulnerabilities, support timely remediation of identified issues, and maintain the ongoing security and operational integrity of the Untitled Platform.

### 2. Scope

This policy applies to:

* Production infrastructure and systems
* Cloud resources and services (AWS)
* Application dependencies and libraries
* Internal systems and supporting services used in platform operations

### 3. Patch Management Approach

Untitled follows a risk-based patch management approach, prioritizing remediation based on the severity and potential impact of identified vulnerabilities.

Where possible, Untitled leverages managed cloud services to reduce direct infrastructure patching requirements, relying on AWS-managed controls for underlying system updates.

### 4. Vulnerability Identification

Untitled identifies vulnerabilities through a combination of:

* Automated vulnerability scanning tools (AWS, Sentry, and auxiliary dependency monitoring tools)
* Monitoring of publicly disclosed vulnerabilities (e.g., CVEs)
* Alerts from infrastructure providers and software vendors
* Internal engineering review and monitoring processes

Identified vulnerabilities are tracked and evaluated based on severity and relevance to Untitled systems.

### 5. SLAs, Patch Prioritization & Remediation

<table data-header-hidden="false" data-header-sticky><thead><tr><th width="187">Severity</th><th>Definition / Examples</th><th>Acknowledge within</th><th>Resolve within</th></tr></thead><tbody><tr><td>Critical</td><td>Service down / data loss</td><td>1 hour</td><td>4 hours</td></tr><tr><td>High</td><td>Major feature broken, wide user impact</td><td>4 hours</td><td>24 hours</td></tr><tr><td>Medium</td><td>Partial degradation, workaround exists</td><td>24 hours</td><td>72 hours</td></tr><tr><td>Low</td><td>Minor errors, isolated impact</td><td>72 hours</td><td>2 weeks</td></tr></tbody></table>

Patches are applied based on the severity of the associated vulnerability:

* **Critical vulnerabilities**\
  Addressed as soon as practicable, with prioritization for immediate remediation.
* **High severity vulnerabilities**\
  Addressed promptly based on risk and exposure.
* **Moderate and low severity vulnerabilities**\
  Addressed as part of normal maintenance and release cycles.

#### Issue Management:

When a user or system action triggers an error, Untitled captures details such as which endpoint failed, the error type, and how many times it occurred.

Errors are grouped by HTTP method, endpoint, and error code, and **published as issues.** Each new issue triggers a notification to an internal Slack channel. Reminders are sent every 24 hours until the issue has been reviewed.

After an issue is corrected, it will be marked as resolved with a note indicating which version includes the fix. Issue fixes are shipped as patch releases, indicated by incrementing the patch version: `major.minor.patch` (e.g., `1.1.10` → `1.1.11`).

The Untitled development team holds a weekly review to ensure low-priority issues are being triaged.

Where immediate patching is not feasible, mitigating controls may be applied to reduce risk until remediation can be completed.

### 6. Patch Deployment

Patches and updates are deployed through controlled processes, of which include:

* Application updates via CI/CD pipelines
* Infrastructure updates via managed cloud services or deployment workflows
* Dependency updates through version-controlled code changes

All production changes follow established deployment and change management practices, including review and approval where applicable. Issues

#### Diagram of Issue Remediation Process (Example)

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FNOy9gYvw4l8TQLaQ3lxj%2Fissue-remediation.png?alt=media&amp;token=330b9cbc-d6fa-4f36-91f1-57f33de6f2a4" alt=""><figcaption></figcaption></figure>

### 7. Weekly Review Process

Untitled maintains an ongoing process to review and track issues, errors, and vulnerability patch status.

* Issues and patch status is reviewed on a **regular basis, no less than weekly**
* Open vulnerabilities are evaluated for severity, impact, and required action
* Remediation progress is tracked through internal workflows

This review process ensures continued visibility into outstanding vulnerabilities and supports timely remediation.

### 8. Exceptions

In cases where a patch cannot be applied within expected timeframes, the following may occur:

* Risk is evaluated and documented internally
* Temporary mitigating controls may be implemented
* Remediation is scheduled for a future release cycle

### 9. Roles & Responsibilities

* **Engineering Team**\
  Responsible for identifying, prioritizing, and implementing patches and updates
* **Infrastructure / DevOps**\
  Responsible for maintaining cloud infrastructure updates and monitoring system-level vulnerabilities
* **Leadership Oversight**\
  Provides oversight on prioritization and ensures appropriate resourcing for remediation

### 10. Policy Maintenance

This policy is reviewed periodically on a semi-annual basis and updated as necessary to reflect changes in infrastructure, tooling, or security practices.

### Questions

If you have questions regarding Untitled's Observability and Patch Management practices, please contac&#x74;**:** **<support@getuntitled.ai>**


# Third-Party Subprocessors

Untitled may engage trusted third-party service providers (“Subprocessors”) to support the delivery, security, and performance of the Platform Services.

This article outlines how subprocessors are used, the safeguards in place, and where clients can review governing contractual protections.

***

### What Is a Subprocessor?

A subprocessor is a third-party service provider engaged by Untitled to process data in connection with providing the Platform Services.

Subprocessors may assist with functions such as:

* Cloud hosting and infrastructure
* Data storage and security
* Analytics and monitoring
* Customer support tooling
* Communication services

Subprocessors do **not** receive data for independent use. They process data solely on behalf of Untitled and strictly for the purpose of delivering the Platform Services.

***

### Contractual Safeguards

Untitled’s use of subprocessors is governed by Section 8.4.6 of the Platform Services Agreement.

Under that section:

> Untitled may engage third-party subprocessors to assist in providing the Platform Services, provided that:\
> \
> 1\. Untitled provides Client with reasonable advance notice of any new subprocessors;\
> 2\. All subprocessors are bound by data protection obligations no less protective than those set forth in the Agreement;\
> 3\. Untitled remains fully liable for the acts and omissions of its subprocessors.

This ensures that:

* Clients are notified of material subprocessor additions
* Subprocessors are contractually required to meet equivalent data protection standards
* Untitled retains responsibility for subprocessor compliance

Untitled does not transfer liability to subprocessors.

***

### Data Protection Standards

All subprocessors engaged by Untitled are required to:

* Process data only under documented instructions
* Maintain appropriate technical and organizational security measures
* Comply with applicable data protection laws
* Enter into written agreements reflecting data protection obligations consistent with the Platform Services Agreement

Where applicable, subprocessors must also support:

* Confidentiality obligations
* Data minimization
* Secure deletion or return of data upon termination

***

### Subprocessor Transparency

Untitled maintains an internal list of active subprocessors supporting the Platform Services.

At the time of writing this article, that manifest includes the following parties:

<table><thead><tr><th>Third-Party Subprocessor</th><th width="249">Function</th><th>Region</th><th>URL</th></tr></thead><tbody><tr><td>Amazon Web Services (AWS)</td><td>Application &#x26; Platform Infrastructure</td><td>United States</td><td><a href="https://aws.amazon.com/">https://aws.amazon.com/</a></td></tr><tr><td>Auth0 (Okta)</td><td>Authentication, Authorization &#x26; User Management</td><td>United States</td><td><a href="https://auth0.com/">https://auth0.com/</a></td></tr><tr><td>Fivetran</td><td>Integration &#x26; Data Onboarding</td><td>United States</td><td><a href="https://www.fivetran.com/">https://www.fivetran.com/</a></td></tr><tr><td>Census</td><td>Integration &#x26; Data Activation</td><td>United States</td><td><a href="https://www.getcensus.com/">https://www.getcensus.com/</a></td></tr><tr><td>Prefect</td><td>Pipeline Orchestration</td><td>United States</td><td><a href="https://www.prefect.io/">https://www.prefect.io/</a></td></tr><tr><td>Pinecone</td><td>Intent Topic Database</td><td>United States</td><td><a href="https://www.pinecone.io/">https://www.pinecone.io/</a></td></tr><tr><td>Prospect Desk</td><td>Cookie Enrichment Services Supporting Identity Resolution System<br>(see <a href="/misc/cookies-and-storage-overview">Cookies &#x26; Storage Overview</a> for more details)</td><td>United States</td><td><a href="https://www.prospectdesk.ai/">https://www.prospectdesk.ai/</a></td></tr><tr><td>Beeswax (Freewheel)</td><td>Digital Advertising Ecosystem for the Untitled DSP</td><td>United States</td><td><a href="https://www.beeswax.com/">https://www.beeswax.com/</a></td></tr><tr><td>United Direct Solutions</td><td>Direct Mail Destination Partner</td><td>United States</td><td><a href="https://udsolutions.com/">https://udsolutions.com/</a></td></tr><tr><td>Embeddable</td><td>Client-Facing Data Visualization Reports</td><td>United States</td><td><a href="https://embeddable.com/">https://embeddable.com/</a></td></tr><tr><td>Metabase</td><td>Internal Data Visualization Reports (may access aggregated platform data)</td><td>United States</td><td><a href="https://www.metabase.com/">https://www.metabase.com/</a></td></tr><tr><td>Posthog</td><td>Application Observability &#x26; Product Analytics (for product performance monitoring)</td><td>United States</td><td><a href="https://posthog.com/">https://posthog.com/</a></td></tr><tr><td>Sentry</td><td>Application &#x26; System Monitoring (for patch management &#x26; issue remediation)</td><td>United States</td><td><a href="https://sentry.io/welcome/">https://sentry.io/</a></td></tr></tbody></table>

Clients may request the current list of subprocessors by contacting:

**<support@getuntitled.ai>**

Where required by agreement, Untitled will provide reasonable advance notice before engaging new subprocessors that materially impact data processing.

***

### Liability & Accountability

Untitled remains fully liable for:

* The acts of its subprocessors
* Compliance with contractual data protection commitments
* Any breach of obligations arising from subprocessor activity

Engaging a subprocessor does not reduce Untitled’s responsibility to its clients.

***

### Questions

If you have questions regarding subprocessors, data protection safeguards, or contractual provisions, please contact: **<support@getuntitled.ai>**&#x20;


# Platform Data Flows

Untitled supports several methods for receiving, enriching, accessing, activating, and delivering data. The diagram below provides a high-level view of these flows across the Untitled platform and external systems.

The specific flows available to each Client depend on the products, integrations, and delivery methods included in their implementation. Optional connections are configured and enabled only at the Client’s election.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2F3wDRMsPV6Bav8h7dRxlh%2FUntitled%20Data%20Flows.png?alt=media&amp;token=91c58a9b-9f5f-49e9-85b9-b7dc8005e746" alt=""><figcaption></figcaption></figure>

### Data Entering the Platform

Client-originated data may enter Untitled through two primary methods:

**Untitled Identity Resolution Tag**\
A JavaScript tag installed on the Client’s website may collect eligible website activity and support visitor identity resolution.

**First-Party Data Sources**\
Clients may provide first-party data through supported SaaS connectors, APIs, integrations, or file uploads.

The Client determines which sources are connected and what data is made available to Untitled.

### Data Assets Within Untitled

Depending on the Client’s configuration, the Untitled platform may produce or maintain the following data assets:

**Visitor identity results**\
Website visitor records resolved through the Untitled Identity Graph.

**First-party enriched audiences**\
Audiences built using Client-provided data, Untitled Identity Graph data, or a combination of both.

**Intent audiences**\
Third-party, topic-based audiences selected by the Client for targeting or analysis.

These data assets remain logically associated with the applicable Client account and authorized workflows.

### Data Access

Clients may access available data through one or more of the following methods:

**Portal UI**\
Authorized users may view and manage data through the Untitled application at `app.getuntitled.ai`.

**REST API**\
Clients may access supported platform resources programmatically through the Untitled API at `api.getuntitled.ai`.

**Postgres Database**\
Where provisioned, Untitled may provide a Client-isolated Postgres tenant. Credentials are made available through the Portal UI.

Availability and permissions vary by account configuration.

### Data Activation

Clients may activate eligible audiences through supported marketing channels using:

**Untitled DSP**\
Untitled’s embedded advertising platform supports self-service activation across channels such as CTV/OTT, pre-roll video, and banner advertising.

**Direct API Integrations**\
Untitled can connect to supported advertising and marketing platforms, including Meta, Google, HubSpot, and Klaviyo. These connections are authenticated using Client-authorized OAuth 2.0 or API credentials.

Each destination must be configured and authorized before data is transmitted.

### External Data Delivery

Untitled also supports delivery of data outside the platform when included in the Client’s implementation.

**United Direct Solutions Delivery**\
Audiences may be securely delivered to United Direct Solutions through SFTP for direct mail activation. Client-provided house files may be matched against selected audiences to create inclusion and suppression segments.

**Custom Client Delivery**\
Data may be delivered to a Client-controlled environment through approved methods such as SFTP, Amazon S3, or a Client-specific warehouse destination such as Snowflake.

Delivery formats, schedules, fields, and destinations are defined as part of the applicable implementation.

### Client Control and Optionality

The diagram represents the broader set of data flows supported by Untitled. Individual Clients may use only a subset of these capabilities.

The Client controls:

* Which data sources are connected
* Which platform features are enabled
* Which users receive access
* Which audiences are created
* Which destinations are authorized
* Whether external delivery workflows are configured

Untitled does not enable optional data transfers or third-party destinations without the required Client configuration and authorization.

### Diagram Scope

This diagram is intended to document the high-level, end-to-end movement of Client-originated data and data provided by Untitled. It does not represent every internal processing step, system component, or implementation-specific configuration.

Technical architecture, security, privacy, retention, and subprocessor documentation may be provided separately as part of a Client’s procurement or security review.

### Questions

If you have questions regarding Untitled's Platform Data Flows, please contac&#x74;**:** **<support@getuntitled.ai>**


# Cookies & Storage Overview

This article describes the cookies and browser storage technologies used by the Untitled Tag when deployed on a website.

## Tag Script & Structure

The Untitled Tag is implemented by placing the following script on a website:

```
<script async src="https://tag.getuntitled.ai/{client-tag-name}"></script>
```

**Structure Notes:**

* `{client-tag-name}` is a unique identifier assigned to each customer implementation.
* The script loads asynchronously to avoid blocking page rendering.
* The tag may dynamically load additional resources required for identity resolution, session management, and activation.
* No directly identifiable personal information is stored within the script itself.

**Data Collected:**

* Cookie ID(s)
* JSON header (including IP address, user agent, etc)
* Page URLs (tag fire and referring page) - including UTM variables

***

## Provider Tags

The Untitled Tag may be served from the following domains:

* `https://tag.getuntitled.ai/{client-tag-name}`
* `https://tag.trovo-tag.com`&#x20;
* `https://tag.prospectdesk.ai/ldc.js`

***

## Overview

When installed, the Untitled Tag may create:

* First-party HTTP cookies
* Third-party HTTP cookies (via integrated advertising platforms)
* HTML Local Storage entries

These technologies support identity resolution, audience building, measurement, and activation use cases.

***

## First-Party Storage (Untitled)

### 1. `tuid`

**Provider:** Untitled LLC (served via `.a.usbrowserspeed.com`) \
**Type:** HTTP Cookie\
**Example Value:** `893d11ee-c981-4850-9b6b-1f83069303bc`\
**Maximum Storage Duration:** 1 year

**Purpose:**\
Used to identify website visitors for marketing and audience-building purposes. This identifier enables:

* Recognition of new visitors and returning visitors
* Audience segmentation
* Measurement and attribution support
* Activation across permitted media destinations

This cookie does not store directly identifiable personal information.

***

### 2. `id_tag_session_id`

**Provider:** Untitled (`tag.getuntitled.ai`)\
**Type:** HTML Local Storage\
**Storage Duration:** Persistent (until manually cleared or overwritten)

**Purpose:**\
Stores a session identifier used to manage and associate activity within a browsing session.

***

### 3. `id_tag_session_last_activity`

**Provider:** Untitled (`tag.getuntitled.ai`)\
**Type:** HTML Local Storage\
**Storage Duration:** Persistent (until manually cleared or overwritten)

**Purpose:**\
Tracks the timestamp of the user’s last recorded activity to help manage session logic and tag behavior.

***

## Third-Party Cookies

The Untitled Tag may integrate with approved demand-side platforms and advertising exchanges. These partners may set cookies in connection with advertising activation and for audience use in our native DSP.

### 4. `bito`

**Provider:** bidr.io\
**Partner Service:** Beeswax\
**Type:** HTTP Cookie\
**Example Value:** `AAAd107TLAQAAABk99Zzcw`\
**Maximum Storage Duration:** 13 months

**Purpose:**\
Sets a unique identifier for the visitor to support a component of the identity resolution process and enables relevant advertising through the Untitled DSP. The identifier also facilitates real-time bidding and other programmatic advertising functions within the Untitled DSP.

***

### 5. `bitoIsSecure`

**Provider:** bidr.io\
**Partner Service:** Beeswax\
**Type:** HTTP Cookie\
**Example Value:** `ok`\
**Maximum Storage Duration:** 13 months

**Purpose:**\
Indicates whether the user’s connection is secure and supports the delivery of relevant advertising content via real-time bidding infrastructure through the Untitled DSP.

***

### 6. <kbd>checkForPermission</kbd>&#x20;

**Provider:** bidr.io\
**Partner Service:** Beeswax\
**Type:** HTTP Cookie\
**Example Value:** `ok`\
**Maximum Storage Duration:** Persistent (until manually cleared or overwritten)

**Purpose:**\
Indicates whether the user’s connection is secure and supports the delivery of relevant advertising content via real-time bidding infrastructure through the Untitled DSP.

***

## Legal & Compliance Notes

* Storage duration may vary depending on browser policies and user settings.
* Users may clear cookies or local storage at any time through browser settings.
* These identifiers are pseudonymous and do not directly store names, email addresses, or other directly identifiable personal information.
* Websites deploying the Untitled Tag are responsible for [ensuring appropriate consent mechanisms](/misc/privacy-and-consent-management) (e.g., cookie banners) are implemented in accordance with applicable laws such as GDPR and CCPA.

***

## Console Errors & Troubleshooting

### 400 Bad Request Errors from International Traffic

**Issue:**\
You may observe `400 Bad Request` errors in browser console logs associated with the Untitled ID Tag.

**Cause:**\
The Untitled ID Tag is restricted to fire exclusively within North America (United States and Canada).&#x20;

{% hint style="info" %}
**For clarity, US-based visitors are the only visitor identites we're able to resolve via the identity graph in North America.**
{% endhint %}

If the tag is implemented without geographic filtering, it will still attempt to execute for all visitors. When traffic originates from outside North America, the request is intentionally rejected, resulting in a `400 Bad Request` response in the console.

This behavior is expected and does not indicate a malfunction.

During testing, this issue is most commonly observed when:

* The website is accessed from outside the U.S. or Canada
* A VPN routes traffic through a non–North American location

Because of this geographic restriction, the issue can be difficult to replicate unless testing from an international IP address.

To reproduce the error while testing from a U.S.-based location, use a VPN and route your connection through a location outside of North America.

***

### Impact

* No data is collected for visitors outside North America
* North American traffic continues to function normally
* The error appears only in developer console logs
* There is no visible site disruption

The Untitled Tag loads asynchronously, meaning it does not block page rendering. As a result:

* **There is minimal to no performance impact**
* Page load times are not materially affected
* No front-end functionality is disrupted

***

### Resolution Options

You may choose one of the following approaches:

#### Option A: Apply Geographic Firing Rules (Recommended)

Deploy the tag via Google Tag Manager (or equivalent tag management system) with a trigger that restricts firing to U.S.-based (or North American) traffic.

This prevents the tag from attempting to execute for unsupported regions and eliminates console errors.

#### Option B: Reinstall and Disregard the Error

Reinstall the tag directly on the site and disregard the console error.

In this case:

* The error will only appear for international traffic
* North American data collection will resume immediately
* The console message can be safely ignored

For most U.S.-focused businesses, international traffic typically represents a minority of total sessions. You can confirm the percentage of international visitors using Google Analytics or a comparable analytics platform ahead of installation.


# Frequently Asked Questions

## General Knowledge <a href="#frequentlyaskedquestions-generalknowledge" id="frequentlyaskedquestions-generalknowledge"></a>

<details>

<summary>How does the Untitled ID Tag work?</summary>

The Untitled ID Tag works by matching anonymous data signals from website visitors to known profiles in our Identity Graph to help determine identity.

When a visitor lands on your site, we collect non-PII identifiers from their browser and session. These signals are then matched, through secure processes, against our Identity Graph to enrich the record with additional attributes such as contact information, professional details, and demographic insights.

Our Identity Graph is built from a combination of real-time signals, online and offline data sources, and first- and third-party data partnerships. It consists of 300+ million unique person-level records, each with hundreds of deterministically associated attributes.

</details>

<details>

<summary>What is an Identity Graph?</summary>

An identity graph is a structured dataset that maps relationships between different identifiers and attributes associated with an individual. It connects signals such as devices, emails, and behavioral data to a single profile, enabling a more complete and unified view of a person.

Within Untitled, our Identity Graph is built from a combination of first- and third-party data sources, provider partnerships, and consented data inputs. It primarily covers U.S. adults and includes attributes such as contact information, demographic and firmographic details, and other relevant signals.

These signals can include identifiers like hashed email addresses, device IDs, mobile advertising IDs (MAIDs), IP addresses, and other digital touchpoints. By linking these identifiers together, the Identity Graph allows us to match anonymous website activity to known profiles in a controlled and deterministic way.

This is what enables the platform to help identify and enrich your website visitors for downstream audience building and activation.

</details>

<details>

<summary>How often is the visitor data updated in Untitled?</summary>

Visitor data is updated hourly in your Untitled account.

</details>

<details>

<summary>Can visitor data integrate with existing first-party data?</summary>

Visitor data can be appended and enrich existing first-party data sources (Shopify, Klaviyo, Hubspot, Salesforce, etc.) to further enrich customer profiles with additional attributes.

</details>

<details>

<summary>Is the Untitled ID Tag able to be set up or placed to only resolve visitors on certain pages?</summary>

Yes, the Untitled ID Tag can be set up or placed to only fire on certain pages of a website.

</details>

<details>

<summary>What can the resolved visitor data be used for?</summary>

Resolved visitor data can be used across a range of marketing, analytics, and operational use cases, both within your organization and across your activation channels.

Common use cases include email marketing, digital advertising, direct mail campaigns, audience building, customer profile enrichment, and internal analytics. Many clients also use the data to improve targeting, personalize messaging, and better understand customer behavior across channels.

All use of this data should align with your privacy policy, disclosed data practices, and applicable regulations.

</details>

<details>

<summary>What geographic regions does the Identity Graph for the tag pull from?</summary>

The Untitled ID Tag exclusively resolves website visitors located in the United States.&#x20;

</details>

<details>

<summary>How can agencies view tag data for multiple clients?</summary>

Agencies using the Untitled ID Tag across multiple clients can access results directly within the Untitled platform, with data segmented on a per-tag basis.

Each client’s tag is logically isolated, allowing you to view, analyze, and activate data independently for each account. This ensures clear separation of client data while still enabling centralized access and management within a single login.

On the backend, data is stored in separate environments to maintain proper data isolation and integrity across clients.

</details>

<details>

<summary>Do you work with all types of companies?</summary>

We work with a wide range of businesses across both product and service categories. Our clients range from single-person companies to large enterprises, as well as agencies supporting their own end clients.

That said, there are certain industries we do NOT support with our product due to compliance and regulatory considerations. These include, but are not limited to:

* Healthcare and medical-related services
* Financial hardship or credit-related services
* Addiction and recovery services
* Victim support and advocacy organizations
* Adult content and products
* Weapons, ammunition, and explosives
* Gambling and betting
* Personal tragedy or hardship-related services

If you are unsure whether your business falls into a restricted category, please contact us at <support@getuntitled.ai> before starting a trial. These categories are subject to stricter compliance standards, and we will need to review your use case before approving implementation of the Untitled ID Tag.

</details>

## Data Landscape and Privacy <a href="#frequentlyaskedquestions-datalandscapeandprivacy" id="frequentlyaskedquestions-datalandscapeandprivacy"></a>

<details>

<summary>Is the Untitled ID Tag compliant in the USA?</summary>

**Yes, when implemented correctly.** The Untitled ID Tag is designed to operate within applicable U.S. data privacy frameworks and is built around a first-party and second-party data model. This means the data originates from a direct interaction between a visitor and your website, rather than third-party tracking across sites.

However, compliance is not automatic. It depends on how you configure and use the tag within your broader privacy and consent framework. To remain compliant, you should:

* Clearly disclose data collection and usage practices in your website’s privacy policy, including marketing use cases
* Implement a consent management platform (CMP) that allows users to opt out of non-essential data collection
* Honor user preferences and opt-out signals in accordance with applicable laws and standards
* Avoid misrepresenting how data is collected, processed, or activated

For a more detailed overview of how consent and compliance should be handled, please review our [Privacy and Consent Management article](/misc/privacy-and-consent-management).

</details>

<details>

<summary>Is the Untitled ID Tag GDPR compliant?</summary>

Yes - the Untitled ID Tag services does not collect or store any data from individuals in the EU. Only within the United States/for U.S.-based contacts.

</details>

<details>

<summary>Is any personally-identifiable information (PII) transmitted to 3rd-parties via the Untitled ID Tag?</summary>

No. We do not transmit any PII to third parties in order to resolve your website visitors. Instead, we leverage joint first-party and second-party data through a consent-based framework, collecting information from the visitor’s browser and matching those signals against data sources through out-of-band or offline processes.

If you have any questions about how this works, or would like to confirm compliance before enabling the ID Tag feature, feel free to reach out. We’re happy to help.

</details>

<details>

<summary>Are visitors captured even if they don’t hit “Accept All” to my consent policy?</summary>

Whether a visitor is captured depends on how your consent management platform (CMP) is configured and implemented on your website. For clarity, a "Cookie Consent Banner" is the user-facing feature of a CMP.

In the United States (an “opt-out” jurisdiction), many CMPs allow tags to fire by default unless a user explicitly rejects non-essential cookies. This means a visitor may be included if they continue browsing without interacting with the consent banner, depending on your CMP’s settings. However, some CMPs provide more granular controls, allowing users to selectively disable certain categories of cookies, which can impact whether data is collected.

Ultimately, capture behavior is determined by how your consent framework is set up and whether it accurately enforces the user’s preferences. Untitled’s tag will follow the consent signal provided by your CMP and will not fire where a user has explicitly opted out of applicable data collection.

For a more detailed overview, we recommend reviewing our [Privacy and Consent Management article](/misc/privacy-and-consent-management), which covers implementation considerations and consent handling in greater depth.

</details>

<details>

<summary>Why would someone who accepted my Cookie policy NOT be resolved?</summary>

Even with consent, not every visitor can be resolved. Common reasons include:

* **Not in our dataset:** The individual may not exist in our data.
* **Geography:** We exclusively resolve U.S.-based visitors only.
* **Age:** Our data covers individuals 18 and older.
* **Insufficient signal:** We require high-confidence, deterministic matches. If signals are weak or conflicting, we will not resolve the visitor.
* **Browser limitations:** Resolution is strongest on Chrome; other browsers may have lower match rates.
* **Private browsing:** Incognito or similar modes reduce the ability to resolve users.
* **VPNs or proxies:** These can obscure device signals and prevent accurate matching.

If you have questions about specific edge-cases, your Customer Success Manager can help review.

</details>

<details>

<summary>If a website visitor opts out of the cookie policy, will their visit to the site still be tracked in other tools such as Google Analytics?</summary>

Whether a visitor's site visit is tracked in tools like Google Analytics after opting out of the cookie policy depends on your cookie consent tool settings. In the U.S., you can inform visitors about the use of cookies for marketing and tracking, and allow them to opt in or out. Tools like Osana and CookieYes offer options to customize this.&#x20;

</details>

<details>

<summary>Can I email my website visitors, even if they didn’t ask to be contacted?</summary>

**Yes, with conditions.** You can email your website visitors, but you must comply with the requirements of the CAN-SPAM Act. This includes (but is not limited to) providing clear identification of the sender, an accurate subject line, a physical mailing address, and a clear, functioning opt-out mechanism in every message. Recipients must be able to unsubscribe easily, and those requests must be honored promptly.

We also encourage users to conduct their own research to develop a more complete understanding of CAN-SPAM requirements and how they apply to their specific use case.

</details>

<details>

<summary>Can I text or call my website visitors?</summary>

Having a phone number in Untitled does **not** constitute consent for marketing phone calls or SMS messaging. Under the Telephone Consumer Protection Act (TCPA), SMS requires a higher standard of consent than most other marketing channels. This includes explicit opt-in requirements and compliance with restrictions such as “quiet hours” (generally 9 PM–8 AM in the recipient’s local time zone).

SMS consent must be collected and managed deliberately, and requirements can vary by state. If you are already using platforms like Klaviyo or Mailchimp, their built-in SMS tools and consent workflows are often the most straightforward way to stay compliant. Alternatively, you can implement third-party consent management solutions on your website to capture and store proper opt-ins.

Additional Resources:

[Untitled Messaging Policy Agreement](https://getuntitled.ai/messaging-policy/)

[SMS Compliance and Consent Overview from Klaviyo](https://help.klaviyo.com/hc/en-us/articles/360035056972)

</details>

<details>

<summary>What does the JavaScript code send Untitled?</summary>

IP Address, Time Stamp, Cookies, Browser Details, Page URL(s) and the referring URL.

</details>

## Data Management <a href="#frequentlyaskedquestions-datamanagement" id="frequentlyaskedquestions-datamanagement"></a>

<details>

<summary>How do returning visitors work?</summary>

When a visitor returns to the site, the Visitor Table will not show duplicate resolutions for that person within the selected date range. Instead, it displays only that visitor’s most recent session during the period, including when page path filters are applied.

If you are accessing the raw data through the database connection, you may see duplicates, even within a single day. That is because the raw dataset captures every session and page visit, not just the most recent one. This more detailed session-level data is available through the provisioned database resource.&#x20;

We are also preparing additional UI features that will make it easier to distinguish new versus returning visitors over custom time periods, with added filtering and reporting for metrics such as page hits and session duration.

</details>

<details>

<summary>How often are resolutions updated in my Untitled Database?</summary>

We receive resolution feeds in hourly intervals, which are then distributed directly into your Untitled account. If you ever encounter a data lapse outage lasting two hours or more on business days, or 24 hours or more on weekends, we encourage you to reach out to your dedicated Customer Support Manager for prompt assistance.

</details>

<details>

<summary>How long does a session need to be in order to be captured in Untitled?</summary>

There is no minimum session length requirement. The Untitled ID Tag fires as soon as the page loads, similar to Google Analytics or the Facebook Pixel.

A visitor may have multiple sessions in a single day, but a resolution is only counted once per day. All resolved page views and sessions are still captured in the raw data and are available through the database connection, including page-level activity for each visit.

</details>

<details>

<summary>When integrating a first-party source to Untitled, what is the process for both the initial historical sync and the ongoing syncs?</summary>

When connecting a first-party source, the initial sync involves the transfer of historical data and matching it to your Resolutions Table. The standard timeframe for the initial sync typically takes up to 24 hours to complete, however, duration may vary based on the size of the dataset. In rare cases, the full back-sync could take multiple days, especially if the historical data is extensive.

To kickstart the initial sync, visit the Library Page in your Untitled account and follow the connection steps. If you have further questions regarding connecting sources and their specific use cases within our product, we recommend checking out our case studies on the website or reaching out to your dedicated Customer Success Manager.

</details>

## Use Cases & Best Practices <a href="#frequentlyaskedquestions-usecases-and-bestpractices" id="frequentlyaskedquestions-usecases-and-bestpractices"></a>

<details>

<summary>What sort of bounce rates are expected with Untitled ID x Email marketing?</summary>

Bounce rates are inherent with any person-level data-set, but can vary based on the following reasons:&#x20;

* How you choose to segment your Untitled ID data, based upon recency of visitor date/time window and your ICP filtering inputs
* The recency within the look-back window on the "Email Last Seen" column, and&#x20;
* Specific requirements for the Email Sending System being utilized.&#x20;

The "Email Last Seen" field is a unix timestamp indicating the last event date for when we received a first-party signal validation on the record. To clarify, an example would be only sending to records where “Email Last Seen” includes event dates within the past 120 days. Generally speaking, the sooner the signal occurrence, the more likely the email address is active.&#x20;

It's important to clarify that emails without a value in the "Email Last Seen" column are not "invalid" by default. A vast majority are good emails and likely have been validated through third-party mechanisms. Nonetheless, we'll only include a “Last Seen” timestamp for an email address record where we have first-party signal validation given we can verify these events by tracing through our own data set.

We provide this information to inform your best decisive judgements of which resolution records you choose to email. However, none of these recommendations should cause you to deviate from also (and more importantly) strictly adhering to industry-wide privacy and legal standards. This is inclusive of the new Google and Klaviyo sender requirements as well as a strict compliance with the CAN SPAM Act regulations.

For more detailed information and use cases related to email marketing and effective filtering using the "Email Last Seen" field, please reach out to your dedicated Customer Success Manager.

</details>

<details>

<summary>What other visitor attributes are available for me to use that may not be in my Untitled account?</summary>

Untitled prioritizes compliance with privacy laws and frameworks, which may lead to the obfuscation of certain attributes within our datasets, making them unavailable for direct access in your Untitled account. These attributes (such as B2C Mobile Phone numbers or MAIDs), may be subject to more stringent compliance frameworks, necessitating additional separation of control measures, and/or customer provided warranty on the intended utilization within permissible use-cases.

For detailed information on specific attributes that are not currently visible in your Untitled account, please reach out to your dedicated sales representative. If your team is interested in utilizing these attributes for marketing activation/outbound purposes, there may be a requirement to sign an additional addendum related to fair use and compliance..

</details>

<details>

<summary>How can I allow website visitors to opt out?</summary>

A properly-implemented cookie management system will mark the Untitled ID Tag as a marketing cookie. If a website visitor opts out of that type of cookie, the ID Tag will not operate and will not add that person to your Untitled Visitor Table.

In order to meet CCPA standards, we ask that our customers [add a link to the Untitled CCPA](https://getuntitled.ai/do-not-sell-my-info/) form within their Privacy Policy.

If a California resident requests to have their information removed, Untitled will delete all records of the user from our data sets in order to meet the CCPA standards.

Additionally, for California residents who may have already opted out of advertising on your web property, we ask that our client send us these records before accessing the feature so we can remove these individuals from showing up in your data sets.

</details>

## Tag Installation

<details>

<summary>Can I use multiple Tags on my website?</summary>

Yes, it is possible to have multiple Tags on your website, but there is a process that the Untitled team needs to set up in our back-end system  so that both Tags capture data correctly. If you’d like to do this, please email <support@getuntitled.ai> and let us know the URL where you’d like to have multiple Tags.&#x20;

This should be reserved for special case scenarios. One example where this setup could be merited is in franchisor-to-franchisee CoOp marketing programs. This use case can arise when different marketing organizations share a website, but need their own separate marketing data, such as a franchise with a domain like [www.restaurant.com/location-1](http://www.restaurant.com/location-1) and [www.restaurant.com/location-2](http://www.restaurant.com/location-2) , where the locations do not share customer data with each other, and each need to be able to execute their own marketing plans.

</details>

<details>

<summary>Can I use a Tag on a website subdomain?</summary>

Yes, if you have a domain set up like products.domain.com or service.domain.com, you can place the same Tag on the subdomain from your main domain (domain.com). To market to the visitors to your subdomain separately from the main domain, we recommend using page path (URL) filters in addition to your other filters to create Audiences - i.e. visitors to [service.domain.com/contact](http://service.domain.com/contact) who have a “Hot” Buyer Intent Score vs. visitors to [products.domain.com/contact](http://products.domain.com/contact) who have a “Hot” Buyer Intent Score.

</details>

<details>

<summary>Can I use a single Tag on multiple websites?</summary>

Technically, yes, if you place a Tag on multiple websites, they will both capture visitor data. However, we do NOT typically recommend this approach given it will make differentiating results from one website to another more challenging. We do not charge ‘per-Tag’, and an Untitled account can have multiple Tags in it, so it most often makes sense to have one Tag per website.

When you utilize multiple Tags within a single account, you can still combine the visitor data from those Tags when building Audiences, so the data can still be treated as a single pool if that best fits your marketing workflows.

</details>

## Data Validation & Differentiation <a href="#frequentlyaskedquestions-datavalidation-and-differentiation" id="frequentlyaskedquestions-datavalidation-and-differentiation"></a>

<details>

<summary>Why is this data better than competitors?</summary>

Most solutions rely on IP-based matching to identify a company and then infer potential users from that organization, which creates distance from the actual buyer. Untitled resolves the specific individual who visited your site, along with both personal and company-level attributes tied directly to that person. Our underlying data is refreshed monthly to maintain accuracy and ensure consistently high-quality identity resolution.

</details>

<details>

<summary>How is the Untitled ID visitor data assembled and validated?</summary>

Untitled uses email as the primary identity anchor, linking devices and profile attributes through a deterministic identity graph built on first- and third-party data. \
\
Validation happens continuously using a combination of online signals like website activity and device interactions, along with out-of-band data such as email engagement and mobility data to confirm accuracy and keep records up to date. This ongoing process helps maintain high-confidence, self-correcting identity profiles at scale without relying on probabilistic modeling.

For a deeper breakdown, see our [**Identity Resolution Overview**](/product-overview/untitled-id-tag/data-validation-and-identity-resolution/how-identity-resolution-works) article.

</details>

<details>

<summary>How is the Untitled ID Tag different from Klaviyo Activity Backfill?</summary>

Klaviyo Activity backfill places a cookie on anonymous site visitors to capture onsite activity for a shopper prior to identification. Once that visitor is identified in the future, you’ll then have access to their historical onsite events.&#x20;

Identification is defined by Klaviyo as an event where the **user supplies their identity** by way of signing up for a newsletter, offer code, or transacting with the website where the tag is placed. Preemptive identity resolution is NOT within the functionality of this offering. You will only get the email once the user has supplied it, not prior, and the offering very much is tailored for customer journey analytics, rather than identity-based visitor resolution and retargeting methods. Our product resolves web visitors prior to deanonymized user-provided inputs via the use of cookie syncs with a robust email marker-based Identity Graph. &#x20;

Klaviyo essentially places a cookie on a user’s browser client-side, and stores event activity from site interactions until the email is submitted in-band where it can then be appended with browser cookie data. This is enabled via the browser request where email is captured through user inputs alongside the stored cookie, and the two are returned as a "pair" in response to that browser request.

The way that “functionally” works is through a traditional place and pull cookie workflow. The browser cookie is placed via a tag in the user's client-side browser storage. It is then inserted as a UTM parameter on the header request every time the anonymous user visits the website or engages with an advertisement where the UTM is tethered. UTMs could drop, but so long as the cookie remains cached in the user's browser, tracking will continue. Upon a user-provided self-identification workflow (Newsletter, Offer Code, Transaction Submission), the cookie is passed within the headers of the browser request. In the response payload to the user input transaction, a matched email is returned and all event activity associated with that cookie/email pair is now made available to the website owner.

</details>

## Agency Partners

<details>

<summary>Can I white label my Untitled account with my branding?</summary>

Yes, Untitled can whitelabel the following aspects of an account:

* Logos on the dashboard and platform pages
* Login screen exclusive to your clients
* Email invitations for new users
* Removal of links to the Untitled knowledge base
* The Tag (single line of javascript) itself can be whitelabeled

Untitled does not support white-labeling the application URL (`app.getuntitled.ai/...`). Firms that require a fully branded client experience can use our [API](https://docs.getuntitled.ai/api-documentation) to build a custom application on top of the Untitled platform.

</details>

<details>

<summary>Should I keep all of my clients in one account, or should each client have their own account?</summary>

We recommend that each client has their own account for a few reasons.

1\) The dedicated Agency Dashboard provides Tag summaries, trends, alerts, and control over all accounts in one place with more power and flexibility than a single account.

2\) Demo / client login purposes. Separate accounts allow a client to either login on their own or alongside you and see their data without seeing any other client.

3\) Ease of execution. When each account applies to only one client, Audiences, reports, and synced accounts apply only to that client, removing the need to frequently 'filter by client'.&#x20;

4\) Tehcnical future-proofing and logical data separation. When each client has a dedicated account, they can sync data into and out of Untitled without creating potential conflicts with other client environments. This structure also maintains a clean, logical separation of client data.

</details>

## Billing & Support <a href="#frequentlyaskedquestions-billing-and-support" id="frequentlyaskedquestions-billing-and-support"></a>

<details>

<summary>How does pricing work?</summary>

Untitled’s current pricing is based primarily on your **website visitor volume**, with plans sized to your organization’s usage, implementation requirements, and level of support. Every plan includes access to the core Untitled platform, so pricing scales with your usage rather than access to individual features.

You can view our current plans and pricing at [getuntitled.ai/pricing](https://getuntitled.ai/pricing/).

#### What if my agreement uses Daily Unique Visitor Resolutions?

Some existing subscriptions were established under Untitled’s historical usage-based pricing model, which was based on **Daily Unique Visitor Resolutions**.

A Daily Unique Visitor Resolution represents a website visitor successfully resolved by the Untitled ID Tag within a 24-hour period. If the same visitor accesses your site multiple times in one day, they count as one Daily Unique Visitor Resolution. If they return on separate days, they may be counted once for each day they are resolved.

For customers on this historical pricing model, billing tiers are determined by the total number of Daily Unique Visitor Resolutions accumulated during the applicable monthly billing cycle.

Your **Order Form Agreement** will specify the pricing model, usage thresholds, and billing terms applicable to your subscription. If you are unsure which pricing structure applies to your account, please contact your Customer Success Manager.

</details>

<details>

<summary>When and how am I billed?</summary>

Billing terms depend on your agreement. Subscriptions may be billed **annually upfront** or on a **month-to-month basis**. Month-to-month subscriptions are billed on a rolling 30-day period beginning when a credit card is placed on file.

We recommend reviewing your **Order Form Agreement** for the billing structure, payment terms, and renewal terms specific to your subscription.

</details>

<details>

<summary>Can I cancel my subscription?</summary>

Yes. Most agreements require **30 days’ written notice** prior to cancellation. All subscriptions, including annual and month-to-month agreements, are subject to automatic renewal unless notice is provided in accordance with your agreement.

For annual agreements, cancellation does not end the existing contractual term, and you will remain responsible for all fees due through the end of that term.

If you would like to cancel or have questions about your agreement, please contact your Customer Success Manager.

</details>

## **What support is available should I need technical assistance?**

Please contact your Customer Success Manager via email or within Untitled should you need assistance and they will respond within 24 hours, Monday through Friday, 9 am-5 pm EST.


# Key Terminology

Concepts you'll come across in the Untitled Dashboard and Knowledge Base.

### Audience

A filtered and saved subset of the Visitor Table. Filters can be applied on demographic information and activity on your website.

***

### Buyer Intent Model

A custom "grading" model that generates a temperature for each of your website visitors, ranging from "Hot" to "Cold" based on their website activity. [Learn more about the Buyer Intent Model.](/audience-studio/understanding-buyer-intent-score-on-the-untitled-platform)

***

### DSP

Demand Side Platform. Software platform that helps advertisers purchase digital real estate to place their ads. A DSP can also help target advertisements and track the ad performance.

***

### First Party Data&#x20;

Data collected directly by you about your users, which can include name, email, phone number, purchase history, and more.

***

### ICP

Ideal Customer Profile. A subset of your Visitor Table that shares the most attributes with your existing customers, based on customer data from your Sources. This is an AI-generated list of high-potential customers.

***

### Resolution

A record of a visitor to your website that Untitled has identified. This always contains an email address, and often includes more information like name, workplace, location, age range, gender, and activity on your site.

***

### Retargeting

Targeting a website visitor who has already shown interest in your brand or products, typically with an ad tailored to their previous behavior on your website.&#x20;

***

### Second Party Data

Data that you acquire through partnerships; another company’s First Party Data that you use. This is what the Untitled ID Tag offers: enrichment of your First Party Data.

***

### Session

A period of time during which a user interacts with your website. A session begins when a user views a page. It ends after 30 minutes of inactivity.

***

### Source

An existing source of customer information that you own. Syncing a source to Untitled prevents duplication of records and can help train Untitled about what attributes your existing customers share, enabling better modeling of buyer intent and ideal customer profiles.

***

### Tag&#x20;

A snippet of Javascript that you install on your website that enables Untitled to identify previously-anonymous site visitors.

***

### Third Party Data

Data that is aggregated and sold to others, without any direct contact between the party collecting and the party using the data.

***

### Visitor Table

The full list of resolutions, or site visitors, that Untitled has identified. Automatically filtered into B2B, B2C, and PTE visitors.


# Tips and Tricks

Unlock the potential of your hidden website visitors with actionable steps with your Untitled data.

<details>

<summary>Email Retargeting for Hot Leads</summary>

Use the Buyer Intent Model filter to segment your Hot and Warm website visitors into an Audience. Sync that Audience to your email provider, like Klaviyo or Mailchimp, and use the "added to list" trigger for a drip campaign that offers a discount to entice shopping and introduces website visitors to your brand.\
\
Research shows that, depending on your vertical and average order value, a discount of 15% is the level that will likely pique interest outside of holiday shopping in November and December, when discounts may need to increase as much as double to achieve conversion results.

A sample email flow that you may want to use with these leads is:\
**Email 1** - as soon as the visitor is synced to your email system - "Here's your welcome discount!" 20-30% discount alongside a display of your products that click through to product pages.\
*Wait a day*\
**Email 2** - "What is \[Your Brand]?" - your story, value proposition, possibly an broad array of products so readers know what you offer (they may have only seen one item). Offer the original discount amount in this email.\
*Wait 2 days*\
**Email 3** - "What our Customers Love" - best sellers, new releases, and/or customer testimonials. Discount code included.\
*Wait 2 days*\
**Email 4** - "The \[Your Brand] Difference" - this could include technical specifications, something unique, like made in USA, works with small business suppliers, meet the team, etc. Discount code included.\
*Wait 2 days*\
**Email 5** - "Hear from our Biggest Fans" - testimonial heavy, ideally with each testimonial linking to a product in a different collection. Discount code included.

This sequence can be adjusted for your typical buyer persona or buyer journey, but it's a great way to introduce website visitors to your brand.

Further Reading:

* [Creating Audiences](/audience-studio)
* [Syncing to Destinations](/integrations/destinations)

</details>

<details>

<summary>Hypertarget visitors at the product page level</summary>

Using the Page Path filter when creating Audiences, you can build an Audience based on a single product page, like /collections/t-shirts/blue, and send customers very targeted messaging in Facebook, Google Ads, or via email, inviting them to revisit the site for the product they viewed.

Some caveats to this approach are that if you target many individual product pages, one website visitor could end up in many of them if they shopped many pages, resulting in a high frequency of ads for this visitor.

This approach also tends to work best when the number of products available is relatively small - fewer than 30 - for the sake of simplicity in setting up the marketing campaigns, and with traffic of greater than 3000 visitors to **each product page** if you plan to retarget the customers on Facebook and / or Google ads.&#x20;

Further Reading:

* [Creating Audiences](/audience-studio)
* [Syncing to Destinations](/integrations/destinations)

</details>

<details>

<summary>Re-engage existing Shopify customers</summary>

If you run a Shopify store and sync your existing customer database to Untitled, you can build an Audience that only includes those customers. Then, you can trigger an email to them when they return to your website, turning your existing customers into even bigger fans and evangelists.

Further Reading:

* [Syncing Shopify as a Source of Data](/integrations/sources/shopify)
* [Creating Audiences](/audience-studio)
* [Syncing to Destinations](/integrations/destinations)

</details>

<details>

<summary>Match your Untitled strategy to your existing marketing actions - and grow from there</summary>

Using the Untitled Platform provides a wealth of information to marketing teams, often increasing the number of addressable website visitors by 25X or more. With this flood of new potential, you may wonder "Where do I begin?". Here are some things to think about so that you make the most of your initial efforts.

1. What is your typical buyer journey?
   1. Is it an impulsive, “I need it now” purchase, or is it a more considered, ‘shopped for’ item?
2. What is your typical buyer persona?
   1. Do you have an obvious demographic, like gender, age range, geography, or job title?
3. How sophisticated is your marketing infrastructure? On a scale from “one monthly newsletter to everyone” to “unique drip campaign specific to each product”, where do you sit today?
   1. Untitled can segment your Visitors very specifically, but if your marketing infrastructure is not ready for this tightly-specified data, that effort may be misplaced until your marketing funnel is set up for all the new data it will receive.
4. What is in your marketing playbook today? Is it Google Ads, Facebook, email, outbound sales?
   1. Untitled can help create a “flywheel” between these different tools by turning your Facebook ads clickers into a specific email list, for example.
5. What is your site traffic? Untitled data can benefit most sites, but the best practices may look different at different scales.
   1. Over-segmenting on a small site can result in more work than reward, for example a site with <1000 visitors per month that is segmenting the audience by >10 individual product pages.

</details>

<details>

<summary>Cross-pollinate your Audiences between marketing channels</summary>

Reaching customers across multiple advertising channels, like Facebook, Google search, and email, increases your chances of making a sale and establishing your brand. It also insures ad visibility in case a potential customer stops using Facebook or emails aren't delivered to the Primary inbox.

When building Audiences in Untitled, you can filter by 'Referrer URL' and use the values of 'facebook.com' for example to capture all of your visitors from Facebook into an Audience that you then import to Google Ads for search ads, or vice versa.

You can also filter by 'Visited URLs' that contain the automatic URL additions from each ad platform, creating an Audience in Untitled from each advertising click source. Then, you can use each source of traffic to target those visitors in new ad channels for more exposure. For example, you can use your email click visitors as a list to custom audience in Facebook.&#x20;

Here are some advertising URL additions from common ad platforms. Paste any of these segments of text into the 'Visited URL' page path filter in Untitled to see web visitors who came from those ad platforms.

| **Text to filter 'Visited URL' by** | **Source of the website traffic** |
| ----------------------------------- | --------------------------------- |
| gclid                               | Google Ad Referrer                |
| fbclid                              | Facebook Ad Referrer              |
| li\_fat\_id                         | LinkedIn Ad Referrer              |
| klaviyo\_id or utm\_source=Klaviyo  | Klaviyo Email Link                |
| mc\_cid or mc\_eid                  | Mailchimp Email Link              |

Further Reading:

* [Creating Audiences](/audience-studio)

</details>


# Latest Updates

Actionable product updates,  new features, guides and articles published by the Untitled team. Have a question about how to implement a features you see here? Reach out to support\@getuntitled.ai.

### August 2026

<details>

<summary>Create Intent Audiences with Natural Language Descriptions</summary>

Find web browsers interested in your category, product, or competitors by describing your ideal audience to our Intent Audience tool. Combine interests and demographic filters to create the perfect target audience, and then upload as a custom audience to your ad platforms.

</details>

### July 2026

<details>

<summary>Use the API to Connect Untitled to Your Systems</summary>

The launch of the public-facing API allows developers and teams to create Audiences, query Resolutions, create Tags, and integrate Untitled data into your own projects and products.

</details>

### June 2026

<details>

<summary>Apply Email Retargeting Filter Templates to Increase Deliverability</summary>

B2C and B2B Email Retargeting templates filter on a number of attributes designed to increase deliverability and engagement through email remarketing.&#x20;

</details>

<details>

<summary>Describe and Apply Audience Filters with Natural Language</summary>

Use AI to translate your prompts into Audience filters. Try prompting with language like “East Coast executives at mid size companies in the finance, legal, or adjacent industries” or “Personal emails for high net worth people of retirement age in Colorado” and the AI assistant will apply the appropriate filters in Untitled.

</details>

<details>

<summary>Agency Management Dashboard</summary>

Agency partners can add clients, create tags, and budget monthly Resolutions in one place. See historical usage to make billing simple and check on Tag activity and health for every client in one view.

</details>

<details>

<summary>Stronger Reporting on DSP Creatives</summary>

When you run connected TV and banner ads on the Untitled DSP, you now have in-depth reporting on each still or video ad that you run. Drill into deliverability and engagement metrics to hone which ad creative is working and deserves more budget.

</details>

### May 2026

<details>

<summary>Visualize Your Account Health and Activity with the New Untitled App Homepage</summary>

{% embed url="<https://www.youtube.com/watch?v=Cm6kPL7UgrE>" %}

</details>

<details>

<summary>Send Postcards to Your Website Visitors</summary>

Use the Untitled Direct Mail integration to send a custom-designed postcard to any Untitled Audience, delivering physical mail to them within days of a website visit or signal of purchase intent. Contact your Customer Success Manager or <info@getuntitled.ai> to set up direct mail in your account.&#x20;

</details>

### April 2026

<details>

<summary>Segment Visitors by Referring Ad Channel for Cross-Channel Marketing and Retargeting</summary>

We’ve added more Audience templates based on ad platforms’ automatic URL parameters, like ‘gclid’ for Google and ‘fbclid’ for Facebook. These templates make it easy for you to see where your advertising dollars are driving traffic. They enable you to either retarget these visitors with a ‘lower funnel’ strategy on the same channel where they came from, or to target them with multi-channel ads by syncing the Audience to another platform.&#x20;

Currently supported paid traffic channels are Google, Meta, LinkedIn, Twitter, TikTok, Snapchat, Reddit, Mailchimp, Bing, Pinterest, Hubspot, and Klaviyo.

</details>

### March 2026

<details>

<summary>Market to Intent Audiences before they ever visit your website</summary>

Intent data combines the content a web browser is viewing with their identity. Web content from over 300,000 websites is classified into over 30,000 Topics. Untitled clients participating in the private beta release have the ability to build Audiences based on these Intent Topics and target them with Facebook or DSP marketing.&#x20;

Learn more about Intent Topics on our blog: <https://getuntitled.ai/blog/what-is-intent-data/> and contact your Customer Success Manager about inclusion into the private beta.&#x20;

</details>

### February 2026

<details>

<summary>Customize and Save a Visitor Table View</summary>

Customize the columns in your Visitor Table, revealing only the website visitor attributes that are most important to you. Save this view so that you get the most valuable information at a glance each time you log in to your Untitled account.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FOeHpY9HOq4iz3UDdqnEO%2FColumnShowHideandSave-optimized-500pxwide.gif?alt=media&amp;token=9d3a9bfd-4b00-4be8-90d9-cbe005052257" alt=""><figcaption></figcaption></figure>

</details>

<details>

<summary>Filter Visitors by Number of Pages Visited</summary>

Filter and save Audiences in Untitled based on the number of pages viewed in any visitor’s most recent session on your website. This can be a great filter to remove ‘quick-bounce’ viewers from your retargeting lists or to hone in on only your most engaged visitors; we’ve seen visitors with 180+ pageviews!

</details>

### January 2026

<details>

<summary>Transfer Data Efficiently with Short Lookback Windows</summary>

[Lookback windows](/audience-studio/using-the-audience-lookback-window-strategically) define how long someone stays in an Untitled Audience and are very helpful to control the duration of a retargeting campaign if you’re syncing to Google Ads or Facebook Ads. You might select 7 days for an impulse-driven ecommerce purchase, or 90 days for a higher-priced item that requires consideration.

\
Now, you can select 1 or 2 day lookback windows.

\
These are helpful when you’re delivering leads to a sales team via Google Sheets and they don’t need repeat visitors showing up in the list. A 1 day lookback window is also great when you’re moving Untitled Audiences into your CRM via Zapier or N8N, and want to remove unnecessary re-runs of your ‘middleware’ automation.

</details>

### December 2025

<details>

<summary>Set up a Consent Management Platform with Cookiebot</summary>

[Follow our video guide for setting up Cookiebot](https://docs.getuntitled.ai/misc/privacy-and-consent-management/set-up-a-cookie-consent-banner-with-cookiebot) on your website through Google Tag Manager. Using a consent management platform and classifying your Untitled ID Tag as a marketing cookie helps ensure you're compliant with cookie consent rules.&#x20;

</details>

### November 2025

<details>

<summary>Enhance Attribution in Klaviyo with Tags and Reports</summary>

Our new [Klaviyo Tips and Tricks article and video](https://docs.getuntitled.ai/integrations/destinations/klaviyo/klaviyo-tips-and-tricks) details how you can use a Flow to tag Untitled Audience imports to Klaviyo, and then use a custom analytics report to monitor the performance of those contacts over time. These tips overcome Klaviyo's default short attribution window and 'last touch' attribution model.

</details>

<details>

<summary>Save and Share File Downloads</summary>

You've always been able to export CSV files of your Resolution data from Untitled. With this update, your exports are saved for 7 days, making it easier to download them again, review the export settings, or share the files with your team.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FfbKvfkVeBdgm50aUcaAO%2FFile%20Downloads%20Quick%20Clip%2011-18-25%20GIF%20800px%20wide.gif?alt=media&amp;token=000489a3-b9b1-40ff-bfa9-ac0b57d95862" alt=""><figcaption></figcaption></figure>

</details>

### October 2025

<details>

<summary>Get more of your FAQs answered</summary>

We’ve refreshed and expanded our Frequently Asked Questions section of the knowledge base to help you get and share answers with your team and your clients. [Check out the entire FAQ section here](https://docs.getuntitled.ai/misc/frequently-asked-questions), or if you’ve had any of these questions, now you have answers!

[Can I text my visitors?](https://docs.getuntitled.ai/misc/frequently-asked-questions#can-i-text-my-website-visitors)

[How long does a session need to be in order to be captured in Untitled?](https://docs.getuntitled.ai/misc/frequently-asked-questions#how-long-does-a-session-need-to-be-in-order-to-be-captured-in-untitled)

[How is the Untitled ID Tag different from Klaviyo Activity Backfill?](https://docs.getuntitled.ai/misc/frequently-asked-questions#how-long-does-a-session-need-to-be-in-order-to-be-captured-in-untitled)

</details>

### September 2025

<details>

<summary>Sort and Save your Visitor Table View</summary>

Save your own custom view of the Visitor Table for quick reference to the information you need most. We've also redesigned the layout of the Visitor Table for a more compact view of data, grouped into relevant columns that you can display or hide. Make sure you toggle on "Try out the new version" to use these new settings.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FVN8zMeGGxREZGxqPPglj%2FNew%20Visitor%20Table%20View%209-12-25%20-%20full%20size%20no%20letterbox.gif?alt=media&amp;token=39155b13-0fe6-4236-bff1-aa8ca5fa0bfe" alt=""><figcaption></figcaption></figure>

</details>

### August 2025

<details>

<summary>Use Audience Templates to Create Actionable Site Visitor Segments</summary>

Use templates from the Untitled team to automatically apply filters to your Visitor Table based on combinations of website visitor attributes that neatly segment shoppers into actionable groups. Alternatively, start with a template and modify it before saving, to jumpstart your account.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FmfjpeTzPTK0Vffwhe4Mh%2FAudience%20Template%20Quick%20Demo.gif?alt=media&amp;token=339839e3-bd4f-4076-97eb-ac29fd28aa53" alt=""><figcaption></figcaption></figure>

</details>

<details>

<summary>Create and Edit Audience Descriptions</summary>

Add a text description to your Audiences when you create them, describing which filters were applied or their intended use. These descriptions are also editable in the Audience Summary, so your entire team can stay updated on all of your Untitled Audiences.

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FujUWCeB7IkLAGyBwfqov%2FAudience%20Description%20upon%20creation%20Screenflow%20project.gif?alt=media&amp;token=a7ee43fd-ca59-48d4-a9ba-054ef0caf4b2" alt=""><figcaption></figcaption></figure>

</details>

<details>

<summary>Create a LinkedIn Ads Matched Audience with an Untitled Audience</summary>

[This guide](/integrations/destinations/linkedin-ads) explains how you can auto-sync an Untitled Audience to a LinkedIn Ads Matched Audience via Zapier, automatically using your Untitled data to power your retargeting campaigns. The guide can also be used as a template for how to use Zapier to manipulate and move Untitled data into other marketing systems.

</details>

### July 2025

<details>

<summary>Filter your Audience by Net Worth</summary>

You can now filter your website visitors by net worth when building an Audience in Untitled. Although many clients have had success using the ‘income range’ filter, we introduced this filter in response to clients who are targeting the following two groups:

1. Retirees who may show no income, but have significant net worth. These might be prime customers for travel services, second homes, or large scale recreational purchases like boats.
2. Households with a non-working member. The net worth filter captures household net worth, whereas income applies to an individual. In the case where a non-working member of a household is shopping online, they might be missed by the income filter, but otherwise match the profile of your ideal shopper. The net worth filter will help you match that shopper.

Need help implementing this filter or want to share a different use case you found for it? Let us know! Email <support@getuntitled.ai> .

</details>

<details>

<summary>Create a Google Customer List with an Untitled Audience</summary>

[This guide](/integrations/destinations/google-ads) explains how you can auto-sync an Untitled Audience to a Google Customer List in Google Ads, automatically using your Untitled data to power your retargeting campaigns.

</details>

<details>

<summary>Build Audiences with Rolling Membership Window</summary>

Adjust how long someone stays in your Untitled Audience, ranging from 7 days to All-Time, with the new Lookback Window feature. [Learn more about how to use that feature here.](/audience-studio/using-the-audience-lookback-window-strategically)

</details>

<details>

<summary>Buyer Intent Score Explainer</summary>

[This article](/audience-studio/understanding-buyer-intent-score-on-the-untitled-platform) explains how the Untitled Buyer Intent Score (from hot to cold) predicts purchase intent from your website visitors, helping you send the right message to the right people.

</details>

### June 2025

<details>

<summary>Advertise With the Untitled Demand Side Platform</summary>

Activate your Audience directly within Untitled and run video, audio, and display ads on smart TV placements like Disney+, Amazon Prime Video, and Hulu, plus Spotify, YouTube, and on apps like ESPN. [Learn more here.](/untitled-demand-side-platform-dsp) Launched as a fully-managed service.&#x20;

</details>

<details>

<summary>Keep Up With Key Untitled Terminology</summary>

[A new page here](/misc/key-terminology) to keep you updated on the in-app vocabulary of the Untitled platform.&#x20;

</details>

### May 2025

<details>

<summary>Dashboard 2.0 Launched</summary>

Your Untitled Dashboard has a fresh look and new features, while maintaining all of your data and connections. If you're still logging in to your account at a URL containing  [distilled.untitledfirm.com](https://toadfish.distilled.untitledfirm.com/) , contact[ support@getuntitled.ai](mailto:support@getuntitled.ai) to get upgraded to the new dashboard for free.

</details>


# User Support

The guide below will walk you through the steps for obtaining support from the Untitled team via submitting a support ticket to our ticketing desk.

## **Submitting a Support Request** <a href="#usersupport-distilledsupport" id="usersupport-distilledsupport"></a>

If you are having an issue related to Untitled (i.e. your application is not running correctly, you’ve identified a bug, you need help setting up a Destination, etc.) please follow the steps below:

1. Click the `Support` tab in the left side navigation menu, or by clicking your profile in the top right of your screen and selecting `Support` from the drop down.&#x20;

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2FMzXxRIHVLk0FXkHnFiWE%2FScreenshot%202025-04-23%20at%2010.38.07%E2%80%AFAM.png?alt=media&amp;token=0b743638-ed80-4e2c-b81b-44976c1c4f66" alt=""><figcaption></figcaption></figure>

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2F6xYm97HcDvStyt4aNKvm%2FScreenshot%202025-04-23%20at%2010.37.49%E2%80%AFAM.png?alt=media&amp;token=f3a6bd8b-96c1-455c-8f2a-7660d02f960a" alt=""><figcaption></figcaption></figure>

2. Fill in the form on this page detailing what you need assistance with, and the level of priority of the request.&#x20;

<figure><img src="https://312477262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGoQsfzqc7OhGHTIseEas%2Fuploads%2F2w5mopqMPjvve7MocmxU%2FScreenshot%202025-04-23%20at%2010.33.49%E2%80%AFAM.png?alt=media&amp;token=3eff0180-089a-4452-8751-3ed396db2c38" alt=""><figcaption></figcaption></figure>

3. Click `Submit your ticket` and the Untitled support team will follow up within 24 hours Monday through Friday, 9 am to 5 pm EST.

## Need Further Support or Have Additional Questions?

Check out our[ <mark style="color:blue;">FAQs</mark> ](/misc/frequently-asked-questions)to get some answers, start a chat on our [website](https://getuntitled.ai/), or get connected directly with our team [<mark style="color:blue;">here</mark>](https://getuntitled.ai/contact/).


# Auth

## Verify API Key

> Validates your API key and returns the identity it authenticates as, along with\
> your current rate limits. Use this to confirm your connection and credentials are\
> working. This call does not count against your daily quota.

```json
{"openapi":"3.1.0","info":{"title":"Untitled API","version":"1.12.2"},"servers":[{"url":"https://api.getuntitled.ai","description":"Production"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"http","description":"Bearer token for authentication","scheme":"bearer"}},"schemas":{"VerifyResponse":{"properties":{"client_id":{"type":"string","title":"Client Id","description":"Your Untitled workspace identifier"},"user":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"User","description":"Email of the user this API key belongs to"},"scopes":{"items":{"type":"string"},"type":"array","title":"Scopes","description":"Scopes granted to this API key"},"rates":{"$ref":"#/components/schemas/RateInfo","description":"Your current daily quota (this call does not count against it)"},"agency":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agency","description":"Your agency name (omitted for workspaces that belong directly to Untitled)"}},"type":"object","required":["client_id","rates"],"title":"VerifyResponse","description":"Confirms an API key is valid and echoes the identity it authenticates as."},"RateInfo":{"properties":{"limit":{"type":"integer","title":"Limit"},"remaining":{"type":"integer","title":"Remaining"},"resets_at":{"type":"string","format":"date-time","title":"Resets At"}},"type":"object","required":["limit","remaining","resets_at"],"title":"RateInfo"}}},"paths":{"/auth/verify":{"get":{"tags":["Auth"],"summary":"Verify API Key","description":"Validates your API key and returns the identity it authenticates as, along with\nyour current rate limits. Use this to confirm your connection and credentials are\nworking. This call does not count against your daily quota.","operationId":"verify_auth_verify_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VerifyResponse"}}}}}}}}}
```


# Audiences

## List Audiences

> Returns all your saved audiences.

```json
{"openapi":"3.1.0","info":{"title":"Untitled API","version":"1.12.2"},"servers":[{"url":"https://api.getuntitled.ai","description":"Production"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"http","description":"Bearer token for authentication","scheme":"bearer"}},"schemas":{"Page_AudienceApiResponse_":{"properties":{"items":{"items":{"$ref":"#/components/schemas/AudienceApiResponse"},"type":"array","title":"Items"},"total":{"type":"integer","minimum":0,"title":"Total"},"page":{"type":"integer","minimum":1,"title":"Page"},"size":{"type":"integer","minimum":1,"title":"Size"},"pages":{"type":"integer","minimum":0,"title":"Pages"}},"type":"object","required":["items","total","page","size","pages"],"title":"Page[AudienceApiResponse]"},"AudienceApiResponse":{"properties":{"id":{"type":"string","title":"Id"},"name":{"type":"string","title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"members_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Members Count"},"engine":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Engine"},"is_private":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Private"},"filters":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Filters"},"lookback_window":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Lookback Window"},"status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"},"user":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"User"},"last_synced":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Last Synced"},"created_at":{"type":"string","format":"date-time","title":"Created At"},"updated_at":{"type":"string","format":"date-time","title":"Updated At"}},"type":"object","required":["id","name","created_at","updated_at"],"title":"AudienceApiResponse"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}},"paths":{"/audiences":{"get":{"tags":["Audiences"],"summary":"List Audiences","description":"Returns all your saved audiences.","operationId":"get_audiences_audiences_get","parameters":[{"name":"page","in":"query","required":false,"schema":{"type":"integer","minimum":1,"description":"Page number","default":1,"title":"Page"},"description":"Page number"},{"name":"size","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"description":"Page size","default":50,"title":"Size"},"description":"Page size"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Page_AudienceApiResponse_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}}}
```

## Create Audience

> Creates a new audience from the provided filters. Building happens asynchronously in the background — the audience will have \`status: queued\` until the build completes.

```json
{"openapi":"3.1.0","info":{"title":"Untitled API","version":"1.12.2"},"servers":[{"url":"https://api.getuntitled.ai","description":"Production"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"http","description":"Bearer token for authentication","scheme":"bearer"}},"schemas":{"AudienceCreateRequest":{"properties":{"name":{"type":"string","title":"Name","description":"A name for this audience."},"filters":{"$ref":"#/components/schemas/ApiFilters","description":"Defines who belongs to this audience. Supports filtering on visitors, sessions, pages, buyer intent, enrichment data, and ML scores."},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"lookback_window":{"anyOf":[{"type":"integer","minimum":1},{"type":"null"}],"title":"Lookback Window","description":"How many days of session history to include when building the audience.","default":60},"refresh_cron":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Refresh Cron","default":"55 15 * * *"}},"type":"object","required":["name","filters"],"title":"AudienceCreateRequest"},"ApiFilters":{"properties":{"visitors":{"items":{"$ref":"#/components/schemas/FilterCondition"},"type":"array","title":"Visitors"},"sessions":{"items":{"$ref":"#/components/schemas/FilterCondition"},"type":"array","title":"Sessions"},"pages":{"items":{"$ref":"#/components/schemas/FilterCondition"},"type":"array","title":"Pages"},"buyer_intent":{"items":{"$ref":"#/components/schemas/FilterCondition"},"type":"array","title":"Buyer Intent"},"enrichment":{"additionalProperties":{"items":{"$ref":"#/components/schemas/FilterCondition"},"type":"array"},"type":"object","title":"Enrichment","description":"Nested by enrichment source, e.g. {\"klaviyo\": [...], \"shopify\": [...]}."},"ml":{"additionalProperties":{"items":{"$ref":"#/components/schemas/FilterCondition"},"type":"array"},"type":"object","title":"Ml","description":"Nested by ML model name, e.g. {\"icp\": [...]}."}},"additionalProperties":false,"type":"object","title":"ApiFilters","description":"Top-level filter payload, grouped by entity.\n\nAll lists default to empty so callers only need to populate the entities\nthey actually filter on."},"FilterCondition":{"properties":{"field":{"type":"string","title":"Field","description":"Column to filter on. Must be in the allowlist for the parent entity."},"method":{"$ref":"#/components/schemas/Operator","description":"Comparison method. Accepts word-style names ('equals', 'contains', …) or SQL symbols ('=', '!=', '<', '<=', '>', '>=', 'like', 'not like', 'in', 'not in', 'is null', 'is not null'). Case-insensitive."},"value":{"title":"Value","description":"Value to compare against. List for IN/NOT_IN. Ignored for IS_NULL/IS_NOT_NULL."}},"additionalProperties":false,"type":"object","required":["field","method"],"title":"FilterCondition","description":"A single filter clause: ``{field, method, value}``.\n\n``method`` accepts word-style names (``equals``, ``contains``, …) or SQL\nsymbols (``=``, ``!=``, ``like``, ``in``, …) in any case.\n\nFor ``in`` / ``not_in``, ``value`` must be a list. For ``is_null`` /\n``is_not_null``, ``value`` is ignored and may be omitted."},"Operator":{"type":"string","enum":["equals","not_equals","less_than","less_than_or_equal","greater_than","greater_than_or_equal","contains","not_contains","starts_with","not_starts_with","ends_with","not_ends_with","in","not_in","is_null","is_not_null"],"title":"Operator","description":"Canonical word-style comparison operators used internally.\n\nEach value maps to a SQL operator in\n``integrations.api.validators.OPERATOR_TO_SQL``."},"AudienceApiResponse":{"properties":{"id":{"type":"string","title":"Id"},"name":{"type":"string","title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"members_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Members Count"},"engine":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Engine"},"is_private":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Private"},"filters":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Filters"},"lookback_window":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Lookback Window"},"status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"},"user":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"User"},"last_synced":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Last Synced"},"created_at":{"type":"string","format":"date-time","title":"Created At"},"updated_at":{"type":"string","format":"date-time","title":"Updated At"}},"type":"object","required":["id","name","created_at","updated_at"],"title":"AudienceApiResponse"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}},"paths":{"/audiences":{"post":{"tags":["Audiences"],"summary":"Create Audience","description":"Creates a new audience from the provided filters. Building happens asynchronously in the background — the audience will have `status: queued` until the build completes.","operationId":"create_audience_audiences_post","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AudienceCreateRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AudienceApiResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}}}
```

## Get Audience

> Returns a single audience by ID, including its filters and current build status.

```json
{"openapi":"3.1.0","info":{"title":"Untitled API","version":"1.12.2"},"servers":[{"url":"https://api.getuntitled.ai","description":"Production"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"http","description":"Bearer token for authentication","scheme":"bearer"}},"schemas":{"AudienceApiResponse":{"properties":{"id":{"type":"string","title":"Id"},"name":{"type":"string","title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"members_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Members Count"},"engine":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Engine"},"is_private":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Is Private"},"filters":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Filters"},"lookback_window":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Lookback Window"},"status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"},"user":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"User"},"last_synced":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Last Synced"},"created_at":{"type":"string","format":"date-time","title":"Created At"},"updated_at":{"type":"string","format":"date-time","title":"Updated At"}},"type":"object","required":["id","name","created_at","updated_at"],"title":"AudienceApiResponse"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}},"paths":{"/audiences/{id}":{"get":{"tags":["Audiences"],"summary":"Get Audience","description":"Returns a single audience by ID, including its filters and current build status.","operationId":"get_audience_by_id_audiences__id__get","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","title":"Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AudienceApiResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}}}
```

## Delete Audience

> Deletes an audience and all its members.

```json
{"openapi":"3.1.0","info":{"title":"Untitled API","version":"1.12.2"},"servers":[{"url":"https://api.getuntitled.ai","description":"Production"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"http","description":"Bearer token for authentication","scheme":"bearer"}},"schemas":{"AudienceApiDeleteResponse":{"properties":{"id":{"type":"string","title":"Id"},"name":{"type":"string","title":"Name"},"message":{"type":"string","title":"Message"}},"type":"object","required":["id","name","message"],"title":"AudienceApiDeleteResponse"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}},"paths":{"/audiences/{id}":{"delete":{"tags":["Audiences"],"summary":"Delete Audience","description":"Deletes an audience and all its members.","operationId":"delete_audience_audiences__id__delete","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","title":"Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AudienceApiDeleteResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}}}
```

## Refresh Audience

> Triggers a rebuild of the audience. Returns \`400\` if the audience is already syncing.

```json
{"openapi":"3.1.0","info":{"title":"Untitled API","version":"1.12.2"},"servers":[{"url":"https://api.getuntitled.ai","description":"Production"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"http","description":"Bearer token for authentication","scheme":"bearer"}},"schemas":{"AudienceApiRefreshResponse":{"properties":{"audience_id":{"type":"string","title":"Audience Id"},"name":{"type":"string","title":"Name"},"status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}},"type":"object","required":["audience_id","name"],"title":"AudienceApiRefreshResponse"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}},"paths":{"/audiences/{id}/refresh":{"post":{"tags":["Audiences"],"summary":"Refresh Audience","description":"Triggers a rebuild of the audience. Returns `400` if the audience is already syncing.","operationId":"refresh_audience_audiences__id__refresh_post","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","title":"Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AudienceApiRefreshResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}}}
```

## List Audience Members

> Returns the visitor profiles that belong to this audience.

```json
{"openapi":"3.1.0","info":{"title":"Untitled API","version":"1.12.2"},"servers":[{"url":"https://api.getuntitled.ai","description":"Production"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"http","description":"Bearer token for authentication","scheme":"bearer"}},"schemas":{"Page_AudienceApiMemberResponse_":{"properties":{"items":{"items":{"$ref":"#/components/schemas/AudienceApiMemberResponse"},"type":"array","title":"Items"},"total":{"type":"integer","minimum":0,"title":"Total"},"page":{"type":"integer","minimum":1,"title":"Page"},"size":{"type":"integer","minimum":1,"title":"Size"},"pages":{"type":"integer","minimum":0,"title":"Pages"}},"type":"object","required":["items","total","page","size","pages"],"title":"Page[AudienceApiMemberResponse]"},"AudienceApiMemberResponse":{"properties":{"first_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"First Name"},"personal_city":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Personal City"},"married":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Married"},"company_phone":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Phone"},"company_sic":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Sic"},"company_employee_count":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Employee Count"},"un_processed_timestamp":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Un Processed Timestamp"},"last_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Last Name"},"personal_state":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Personal State"},"income_range":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Income Range"},"professional_address2":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Professional Address2"},"company_naics":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Naics"},"primary_industry":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Primary Industry"},"un_updated_timestamp":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Un Updated Timestamp"},"business_email":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Business Email"},"personal_zip":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Personal Zip"},"net_worth":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Net Worth"},"professional_city":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Professional City"},"company_address":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Address"},"business_email_validation_status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Business Email Validation Status"},"mobile_phone":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Mobile Phone"},"personal_zip4":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Personal Zip4"},"homeowner":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Homeowner"},"professional_state":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Professional State"},"company_city":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company City"},"business_email_last_seen":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Business Email Last Seen"},"hem":{"type":"string","title":"Hem"},"linkedin_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Linkedin Url"},"personal_email":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Personal Email"},"job_title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Job Title"},"professional_zip":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Professional Zip"},"company_state":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company State"},"personal_email_validation_status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Personal Email Validation Status"},"record_uuid":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Record Uuid"},"personal_address":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Personal Address"},"personal_phone":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Personal Phone"},"seniority_level":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Seniority Level"},"professional_zip4":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Professional Zip4"},"company_zip":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Zip"},"personal_email_last_seen":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Personal Email Last Seen"},"personal_address2":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Personal Address2"},"gender":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Gender"},"department":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Department"},"company_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Name"},"company_linkedin_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Linkedin Url"},"last_updated":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Last Updated"},"age_range":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Age Range"},"professional_address":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Professional Address"},"company_domain":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Domain"},"company_revenue":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Revenue"},"ip":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ip"},"last_session_date":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Last Session Date"},"last_session_exit_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Last Session Exit Url"},"last_session_entry_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Last Session Entry Url"},"last_session_entry_referer_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Last Session Entry Referer Url"},"total_session_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Total Session Count"},"last_session_est_duration":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Last Session Est Duration"},"last_session_total_pages_visited":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Last Session Total Pages Visited"},"lead_category":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Lead Category"},"tag_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tag Id"},"file_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"File Type"}},"type":"object","required":["hem"],"title":"AudienceApiMemberResponse"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}},"paths":{"/audiences/{id}/members":{"get":{"tags":["Audiences"],"summary":"List Audience Members","description":"Returns the visitor profiles that belong to this audience.","operationId":"get_audience_members_audiences__id__members_get","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","title":"Id"}},{"name":"page","in":"query","required":false,"schema":{"type":"integer","minimum":1,"description":"Page number","default":1,"title":"Page"},"description":"Page number"},{"name":"size","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"description":"Page size","default":50,"title":"Size"},"description":"Page size"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Page_AudienceApiMemberResponse_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}}}
```


# Identity

## List Resolutions

> Returns a paginated list of identified visitors for the given date range. Each record is one unique person, enriched with contact and company data. Defaults to the last 7 days if no dates are provided.

```json
{"openapi":"3.1.0","info":{"title":"Untitled API","version":"1.12.2"},"servers":[{"url":"https://api.getuntitled.ai","description":"Production"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"http","description":"Bearer token for authentication","scheme":"bearer"}},"schemas":{"ResolutionsQuery":{"properties":{"start_date":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Start Date","description":"Start of the date range (YYYY-MM-DD). Defaults to 7 days ago."},"end_date":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"End Date","description":"End of the date range (YYYY-MM-DD). Defaults to today."},"filters":{"anyOf":[{"$ref":"#/components/schemas/ApiFilters"},{"type":"null"}],"description":"Narrows results by visitor attributes, sessions, pages, buyer intent, enrichment data, or ML scores. All filter entities are supported: visitors, sessions, pages, buyer_intent, enrichment, and ml."}},"type":"object","title":"ResolutionsQuery"},"ApiFilters":{"properties":{"visitors":{"items":{"$ref":"#/components/schemas/FilterCondition"},"type":"array","title":"Visitors"},"sessions":{"items":{"$ref":"#/components/schemas/FilterCondition"},"type":"array","title":"Sessions"},"pages":{"items":{"$ref":"#/components/schemas/FilterCondition"},"type":"array","title":"Pages"},"buyer_intent":{"items":{"$ref":"#/components/schemas/FilterCondition"},"type":"array","title":"Buyer Intent"},"enrichment":{"additionalProperties":{"items":{"$ref":"#/components/schemas/FilterCondition"},"type":"array"},"type":"object","title":"Enrichment","description":"Nested by enrichment source, e.g. {\"klaviyo\": [...], \"shopify\": [...]}."},"ml":{"additionalProperties":{"items":{"$ref":"#/components/schemas/FilterCondition"},"type":"array"},"type":"object","title":"Ml","description":"Nested by ML model name, e.g. {\"icp\": [...]}."}},"additionalProperties":false,"type":"object","title":"ApiFilters","description":"Top-level filter payload, grouped by entity.\n\nAll lists default to empty so callers only need to populate the entities\nthey actually filter on."},"FilterCondition":{"properties":{"field":{"type":"string","title":"Field","description":"Column to filter on. Must be in the allowlist for the parent entity."},"method":{"$ref":"#/components/schemas/Operator","description":"Comparison method. Accepts word-style names ('equals', 'contains', …) or SQL symbols ('=', '!=', '<', '<=', '>', '>=', 'like', 'not like', 'in', 'not in', 'is null', 'is not null'). Case-insensitive."},"value":{"title":"Value","description":"Value to compare against. List for IN/NOT_IN. Ignored for IS_NULL/IS_NOT_NULL."}},"additionalProperties":false,"type":"object","required":["field","method"],"title":"FilterCondition","description":"A single filter clause: ``{field, method, value}``.\n\n``method`` accepts word-style names (``equals``, ``contains``, …) or SQL\nsymbols (``=``, ``!=``, ``like``, ``in``, …) in any case.\n\nFor ``in`` / ``not_in``, ``value`` must be a list. For ``is_null`` /\n``is_not_null``, ``value`` is ignored and may be omitted."},"Operator":{"type":"string","enum":["equals","not_equals","less_than","less_than_or_equal","greater_than","greater_than_or_equal","contains","not_contains","starts_with","not_starts_with","ends_with","not_ends_with","in","not_in","is_null","is_not_null"],"title":"Operator","description":"Canonical word-style comparison operators used internally.\n\nEach value maps to a SQL operator in\n``integrations.api.validators.OPERATOR_TO_SQL``."},"ResolutionsPageResponse":{"properties":{"items":{"items":{"$ref":"#/components/schemas/ResolutionsResponse"},"type":"array","title":"Items"},"page":{"type":"integer","title":"Page"},"size":{"type":"integer","title":"Size"},"total":{"type":"integer","title":"Total"},"pages":{"type":"integer","title":"Pages"}},"type":"object","required":["items","page","size","total","pages"],"title":"ResolutionsPageResponse","description":"Paginated resolutions list returned by the Identity API."},"ResolutionsResponse":{"properties":{"hem":{"type":"string","title":"Hem","description":"hashed email identifier"},"email":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Email","description":"email address associated with this visitor"},"personal_email":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Personal Email"},"business_email":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Business Email","description":"business email address"},"first_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"First Name"},"last_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Last Name"},"gender":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Gender"},"age_range":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Age Range"},"married":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Married"},"income_range":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Income Range"},"net_worth":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Net Worth"},"homeowner":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Homeowner"},"personal_address":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Personal Address"},"personal_address2":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Personal Address2"},"personal_city":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Personal City"},"personal_state":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Personal State"},"personal_zip":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Personal Zip"},"personal_zip4":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Personal Zip4"},"personal_phone":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Personal Phone"},"mobile_phone":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Mobile Phone"},"job_title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Job Title"},"seniority_level":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Seniority Level"},"department":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Department"},"professional_address":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Professional Address"},"professional_address2":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Professional Address2"},"professional_city":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Professional City"},"professional_state":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Professional State"},"professional_zip":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Professional Zip"},"professional_zip4":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Professional Zip4"},"linkedin_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Linkedin Url"},"company_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Name"},"company_domain":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Domain"},"company_phone":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Phone"},"company_sic":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Sic"},"company_naics":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Naics"},"company_address":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Address"},"company_city":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company City"},"company_state":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company State"},"company_zip":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Zip"},"company_linkedin_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Linkedin Url"},"company_revenue":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Revenue"},"company_employee_count":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Employee Count"},"primary_industry":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Primary Industry"},"ip":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ip"},"tag_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tag Id","description":"Tag ID from the visitor's latest session"},"file_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"File Type","description":"Resolution file type (b2b, b2c, pte)"},"last_session_date":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Last Session Date","description":"End time of the visitor's most recent session"},"last_session_total_pages_visited":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Last Session Total Pages Visited","description":"Pages visited in the most recent session"},"total_session_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Total Session Count","description":"Total sessions for this visitor and tag"},"last_session_entry_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Last Session Entry Url","description":"Entry URL of the most recent session"},"last_session_entry_referer_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Last Session Entry Referer Url","description":"Entry referer URL of the most recent session"},"last_session_exit_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Last Session Exit Url","description":"Exit URL of the most recent session"},"last_session_est_duration":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Last Session Est Duration","description":"Estimated duration of the most recent session (seconds)"},"lead_category":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Lead Category","description":"Lead score category (e.g. hot, warm, cold)"},"business_email_validation_status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Business Email Validation Status"},"business_email_last_seen":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Business Email Last Seen"},"personal_email_validation_status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Personal Email Validation Status"},"personal_email_last_seen":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Personal Email Last Seen"}},"type":"object","required":["hem","business_email"],"title":"ResolutionsResponse","description":"Resolutions Response with system variables removed."},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}},"paths":{"/identity/resolutions":{"post":{"tags":["Identity"],"summary":"List Resolutions","description":"Returns a paginated list of identified visitors for the given date range. Each record is one unique person, enriched with contact and company data. Defaults to the last 7 days if no dates are provided.","operationId":"get_resolutions_identity_resolutions_post","parameters":[{"name":"page","in":"query","required":false,"schema":{"type":"integer","minimum":1,"description":"Page number","default":1,"title":"Page"},"description":"Page number"},{"name":"size","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"description":"Page size","default":10,"title":"Size"},"description":"Page size"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResolutionsQuery"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResolutionsPageResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}}}
```

## Count Resolutions

> Returns visitor counts grouped by record type (\`b2b\`, \`b2c\`, \`pte\`) for the given date range — useful for dashboards and usage tracking.

```json
{"openapi":"3.1.0","info":{"title":"Untitled API","version":"1.12.2"},"servers":[{"url":"https://api.getuntitled.ai","description":"Production"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"http","description":"Bearer token for authentication","scheme":"bearer"}},"schemas":{"ResolutionsQuery":{"properties":{"start_date":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Start Date","description":"Start of the date range (YYYY-MM-DD). Defaults to 7 days ago."},"end_date":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"End Date","description":"End of the date range (YYYY-MM-DD). Defaults to today."},"filters":{"anyOf":[{"$ref":"#/components/schemas/ApiFilters"},{"type":"null"}],"description":"Narrows results by visitor attributes, sessions, pages, buyer intent, enrichment data, or ML scores. All filter entities are supported: visitors, sessions, pages, buyer_intent, enrichment, and ml."}},"type":"object","title":"ResolutionsQuery"},"ApiFilters":{"properties":{"visitors":{"items":{"$ref":"#/components/schemas/FilterCondition"},"type":"array","title":"Visitors"},"sessions":{"items":{"$ref":"#/components/schemas/FilterCondition"},"type":"array","title":"Sessions"},"pages":{"items":{"$ref":"#/components/schemas/FilterCondition"},"type":"array","title":"Pages"},"buyer_intent":{"items":{"$ref":"#/components/schemas/FilterCondition"},"type":"array","title":"Buyer Intent"},"enrichment":{"additionalProperties":{"items":{"$ref":"#/components/schemas/FilterCondition"},"type":"array"},"type":"object","title":"Enrichment","description":"Nested by enrichment source, e.g. {\"klaviyo\": [...], \"shopify\": [...]}."},"ml":{"additionalProperties":{"items":{"$ref":"#/components/schemas/FilterCondition"},"type":"array"},"type":"object","title":"Ml","description":"Nested by ML model name, e.g. {\"icp\": [...]}."}},"additionalProperties":false,"type":"object","title":"ApiFilters","description":"Top-level filter payload, grouped by entity.\n\nAll lists default to empty so callers only need to populate the entities\nthey actually filter on."},"FilterCondition":{"properties":{"field":{"type":"string","title":"Field","description":"Column to filter on. Must be in the allowlist for the parent entity."},"method":{"$ref":"#/components/schemas/Operator","description":"Comparison method. Accepts word-style names ('equals', 'contains', …) or SQL symbols ('=', '!=', '<', '<=', '>', '>=', 'like', 'not like', 'in', 'not in', 'is null', 'is not null'). Case-insensitive."},"value":{"title":"Value","description":"Value to compare against. List for IN/NOT_IN. Ignored for IS_NULL/IS_NOT_NULL."}},"additionalProperties":false,"type":"object","required":["field","method"],"title":"FilterCondition","description":"A single filter clause: ``{field, method, value}``.\n\n``method`` accepts word-style names (``equals``, ``contains``, …) or SQL\nsymbols (``=``, ``!=``, ``like``, ``in``, …) in any case.\n\nFor ``in`` / ``not_in``, ``value`` must be a list. For ``is_null`` /\n``is_not_null``, ``value`` is ignored and may be omitted."},"Operator":{"type":"string","enum":["equals","not_equals","less_than","less_than_or_equal","greater_than","greater_than_or_equal","contains","not_contains","starts_with","not_starts_with","ends_with","not_ends_with","in","not_in","is_null","is_not_null"],"title":"Operator","description":"Canonical word-style comparison operators used internally.\n\nEach value maps to a SQL operator in\n``integrations.api.validators.OPERATOR_TO_SQL``."},"ResolutionsCountResponse":{"properties":{"b2b":{"type":"integer","title":"B2B","default":0},"b2c":{"type":"integer","title":"B2C","default":0},"pte":{"type":"integer","title":"Pte","default":0},"total":{"type":"integer","title":"Total","readOnly":true}},"additionalProperties":true,"type":"object","required":["total"],"title":"ResolutionsCountResponse","description":"Count of resolutions for the given date range and filters."},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}},"paths":{"/identity/resolutions/count":{"post":{"tags":["Identity"],"summary":"Count Resolutions","description":"Returns visitor counts grouped by record type (`b2b`, `b2c`, `pte`) for the given date range — useful for dashboards and usage tracking.","operationId":"get_total_count_identity_resolutions_count_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResolutionsQuery"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResolutionsCountResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}}}
```

## Get Billing Breakdown

> Returns daily unique visitor counts broken down by tag and record type. Useful for building usage and billing charts.

```json
{"openapi":"3.1.0","info":{"title":"Untitled API","version":"1.12.2"},"servers":[{"url":"https://api.getuntitled.ai","description":"Production"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"http","description":"Bearer token for authentication","scheme":"bearer"}},"schemas":{"DateRangeQuery":{"properties":{"start_date":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Start Date","description":"Start of the date range (YYYY-MM-DD). Defaults to 7 days ago."},"end_date":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"End Date","description":"End of the date range (YYYY-MM-DD). Defaults to today."}},"type":"object","title":"DateRangeQuery"},"ResolutionsBillingResponse":{"properties":{"event_date":{"type":"string","format":"date","title":"Event Date"},"tag_id":{"type":"string","title":"Tag Id"},"file_type":{"type":"string","title":"File Type"},"visitor_count":{"type":"integer","title":"Visitor Count"}},"additionalProperties":true,"type":"object","required":["event_date","tag_id","file_type","visitor_count"],"title":"ResolutionsBillingResponse","description":"Billing count of resolutions by day, tag_id, and file_type for the given date range."},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}},"paths":{"/identity/resolutions/billing":{"post":{"tags":["Identity"],"summary":"Get Billing Breakdown","description":"Returns daily unique visitor counts broken down by tag and record type. Useful for building usage and billing charts.","operationId":"get_resolutions_billing_identity_resolutions_billing_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DateRangeQuery"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/ResolutionsBillingResponse"},"type":"array","title":"Response Get Resolutions Billing Identity Resolutions Billing Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}}}
```

## List Visitors

> Returns a paginated list of visitor profiles, optionally filtered by date range and visitor attributes.

```json
{"openapi":"3.1.0","info":{"title":"Untitled API","version":"1.12.2"},"servers":[{"url":"https://api.getuntitled.ai","description":"Production"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"http","description":"Bearer token for authentication","scheme":"bearer"}},"schemas":{"VisitorQuery":{"properties":{"start_date":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Start Date","description":"Start of the date range (YYYY-MM-DD). Defaults to 7 days ago."},"end_date":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"End Date","description":"End of the date range (YYYY-MM-DD). Defaults to today."},"filters":{"anyOf":[{"items":{"$ref":"#/components/schemas/FilterCondition"},"type":"array"},{"type":"null"}],"title":"Filters","description":"Narrows results by visitor attributes such as name, company, location, or job title."}},"type":"object","title":"VisitorQuery"},"FilterCondition":{"properties":{"field":{"type":"string","title":"Field","description":"Column to filter on. Must be in the allowlist for the parent entity."},"method":{"$ref":"#/components/schemas/Operator","description":"Comparison method. Accepts word-style names ('equals', 'contains', …) or SQL symbols ('=', '!=', '<', '<=', '>', '>=', 'like', 'not like', 'in', 'not in', 'is null', 'is not null'). Case-insensitive."},"value":{"title":"Value","description":"Value to compare against. List for IN/NOT_IN. Ignored for IS_NULL/IS_NOT_NULL."}},"additionalProperties":false,"type":"object","required":["field","method"],"title":"FilterCondition","description":"A single filter clause: ``{field, method, value}``.\n\n``method`` accepts word-style names (``equals``, ``contains``, …) or SQL\nsymbols (``=``, ``!=``, ``like``, ``in``, …) in any case.\n\nFor ``in`` / ``not_in``, ``value`` must be a list. For ``is_null`` /\n``is_not_null``, ``value`` is ignored and may be omitted."},"Operator":{"type":"string","enum":["equals","not_equals","less_than","less_than_or_equal","greater_than","greater_than_or_equal","contains","not_contains","starts_with","not_starts_with","ends_with","not_ends_with","in","not_in","is_null","is_not_null"],"title":"Operator","description":"Canonical word-style comparison operators used internally.\n\nEach value maps to a SQL operator in\n``integrations.api.validators.OPERATOR_TO_SQL``."},"Page_VisitorResponse_":{"properties":{"items":{"items":{"$ref":"#/components/schemas/VisitorResponse"},"type":"array","title":"Items"},"total":{"type":"integer","minimum":0,"title":"Total"},"page":{"type":"integer","minimum":1,"title":"Page"},"size":{"type":"integer","minimum":1,"title":"Size"},"pages":{"type":"integer","minimum":0,"title":"Pages"}},"type":"object","required":["items","total","page","size","pages"],"title":"Page[VisitorResponse]"},"VisitorResponse":{"properties":{"hem":{"type":"string","title":"Hem"},"email":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Email"},"record_uuid":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Record Uuid"},"first_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"First Name"},"last_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Last Name"},"business_email":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Business Email"},"mobile_phone":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Mobile Phone"},"linkedin_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Linkedin Url"},"personal_address":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Personal Address"},"personal_address2":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Personal Address2"},"personal_city":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Personal City"},"personal_state":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Personal State"},"personal_zip":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Personal Zip"},"personal_zip4":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Personal Zip4"},"personal_email":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Personal Email"},"personal_phone":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Personal Phone"},"gender":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Gender"},"age_range":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Age Range"},"married":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Married"},"income_range":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Income Range"},"net_worth":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Net Worth"},"homeowner":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Homeowner"},"job_title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Job Title"},"seniority_level":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Seniority Level"},"department":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Department"},"professional_address":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Professional Address"},"professional_address2":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Professional Address2"},"professional_city":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Professional City"},"professional_state":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Professional State"},"professional_zip":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Professional Zip"},"professional_zip4":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Professional Zip4"},"company_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Name"},"company_domain":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Domain"},"company_phone":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Phone"},"company_sic":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Sic"},"company_naics":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Naics"},"company_address":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Address"},"company_city":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company City"},"company_state":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company State"},"company_zip":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Zip"},"company_linkedin_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Linkedin Url"},"company_revenue":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Revenue"},"company_employee_count":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Employee Count"},"primary_industry":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Primary Industry"},"business_email_validation_status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Business Email Validation Status"},"business_email_last_seen":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Business Email Last Seen"},"personal_email_validation_status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Personal Email Validation Status"},"personal_email_last_seen":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Personal Email Last Seen"},"ip":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ip"},"updated_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Updated At","readOnly":true}},"type":"object","required":["hem","updated_at"],"title":"VisitorResponse","description":"Visitor profile returned by the Identity API."},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}},"paths":{"/identity/visitors":{"post":{"tags":["Identity"],"summary":"List Visitors","description":"Returns a paginated list of visitor profiles, optionally filtered by date range and visitor attributes.","operationId":"get_visitors_identity_visitors_post","parameters":[{"name":"page","in":"query","required":false,"schema":{"type":"integer","minimum":1,"description":"Page number","default":1,"title":"Page"},"description":"Page number"},{"name":"size","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"description":"Page size","default":50,"title":"Size"},"description":"Page size"},{"name":"sort","in":"query","required":false,"schema":{"enum":["asc","desc"],"type":"string","description":"Sort order","default":"desc","title":"Sort"},"description":"Sort order"}],"requestBody":{"content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/VisitorQuery"},{"type":"null"}],"title":"Query"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Page_VisitorResponse_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}}}
```

## Get Visitor

> Returns the full enriched profile for a single visitor — contact info, company details, demographics, and more. Returns \`404\` if the visitor is not found.

```json
{"openapi":"3.1.0","info":{"title":"Untitled API","version":"1.12.2"},"servers":[{"url":"https://api.getuntitled.ai","description":"Production"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"http","description":"Bearer token for authentication","scheme":"bearer"}},"schemas":{"VisitorResponse":{"properties":{"hem":{"type":"string","title":"Hem"},"email":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Email"},"record_uuid":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Record Uuid"},"first_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"First Name"},"last_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Last Name"},"business_email":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Business Email"},"mobile_phone":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Mobile Phone"},"linkedin_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Linkedin Url"},"personal_address":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Personal Address"},"personal_address2":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Personal Address2"},"personal_city":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Personal City"},"personal_state":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Personal State"},"personal_zip":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Personal Zip"},"personal_zip4":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Personal Zip4"},"personal_email":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Personal Email"},"personal_phone":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Personal Phone"},"gender":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Gender"},"age_range":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Age Range"},"married":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Married"},"income_range":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Income Range"},"net_worth":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Net Worth"},"homeowner":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Homeowner"},"job_title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Job Title"},"seniority_level":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Seniority Level"},"department":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Department"},"professional_address":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Professional Address"},"professional_address2":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Professional Address2"},"professional_city":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Professional City"},"professional_state":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Professional State"},"professional_zip":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Professional Zip"},"professional_zip4":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Professional Zip4"},"company_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Name"},"company_domain":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Domain"},"company_phone":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Phone"},"company_sic":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Sic"},"company_naics":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Naics"},"company_address":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Address"},"company_city":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company City"},"company_state":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company State"},"company_zip":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Zip"},"company_linkedin_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Linkedin Url"},"company_revenue":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Revenue"},"company_employee_count":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Employee Count"},"primary_industry":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Primary Industry"},"business_email_validation_status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Business Email Validation Status"},"business_email_last_seen":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Business Email Last Seen"},"personal_email_validation_status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Personal Email Validation Status"},"personal_email_last_seen":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Personal Email Last Seen"},"ip":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ip"},"updated_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Updated At","readOnly":true}},"type":"object","required":["hem","updated_at"],"title":"VisitorResponse","description":"Visitor profile returned by the Identity API."},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}},"paths":{"/identity/visitors/{email}":{"get":{"tags":["Identity"],"summary":"Get Visitor","description":"Returns the full enriched profile for a single visitor — contact info, company details, demographics, and more. Returns `404` if the visitor is not found.","operationId":"get_profile_identity_visitors__email__get","parameters":[{"name":"email","in":"path","required":true,"schema":{"type":"string","title":"Email"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VisitorResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}}}
```

## Get Visitor Profile

> Returns the visitor's profile together with their most recent sessions and the pages viewed in each. Use \`session\_limit\` to control how many sessions are included (max 10).

```json
{"openapi":"3.1.0","info":{"title":"Untitled API","version":"1.12.2"},"servers":[{"url":"https://api.getuntitled.ai","description":"Production"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"http","description":"Bearer token for authentication","scheme":"bearer"}},"schemas":{"VisitorProfileResponse":{"properties":{"visitor":{"$ref":"#/components/schemas/VisitorResponse"},"sessions":{"items":{"$ref":"#/components/schemas/SessionWithPagesResponse"},"type":"array","title":"Sessions"}},"type":"object","required":["visitor","sessions"],"title":"VisitorProfileResponse","description":"Full visitor profile with recent sessions and their page views."},"VisitorResponse":{"properties":{"hem":{"type":"string","title":"Hem"},"email":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Email"},"record_uuid":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Record Uuid"},"first_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"First Name"},"last_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Last Name"},"business_email":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Business Email"},"mobile_phone":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Mobile Phone"},"linkedin_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Linkedin Url"},"personal_address":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Personal Address"},"personal_address2":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Personal Address2"},"personal_city":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Personal City"},"personal_state":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Personal State"},"personal_zip":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Personal Zip"},"personal_zip4":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Personal Zip4"},"personal_email":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Personal Email"},"personal_phone":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Personal Phone"},"gender":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Gender"},"age_range":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Age Range"},"married":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Married"},"income_range":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Income Range"},"net_worth":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Net Worth"},"homeowner":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Homeowner"},"job_title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Job Title"},"seniority_level":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Seniority Level"},"department":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Department"},"professional_address":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Professional Address"},"professional_address2":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Professional Address2"},"professional_city":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Professional City"},"professional_state":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Professional State"},"professional_zip":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Professional Zip"},"professional_zip4":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Professional Zip4"},"company_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Name"},"company_domain":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Domain"},"company_phone":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Phone"},"company_sic":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Sic"},"company_naics":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Naics"},"company_address":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Address"},"company_city":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company City"},"company_state":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company State"},"company_zip":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Zip"},"company_linkedin_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Linkedin Url"},"company_revenue":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Revenue"},"company_employee_count":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Employee Count"},"primary_industry":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Primary Industry"},"business_email_validation_status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Business Email Validation Status"},"business_email_last_seen":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Business Email Last Seen"},"personal_email_validation_status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Personal Email Validation Status"},"personal_email_last_seen":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Personal Email Last Seen"},"ip":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ip"},"updated_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Updated At","readOnly":true}},"type":"object","required":["hem","updated_at"],"title":"VisitorResponse","description":"Visitor profile returned by the Identity API."},"SessionWithPagesResponse":{"properties":{"id":{"type":"string","title":"Id"},"hem":{"type":"string","title":"Hem"},"tag_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tag Id"},"file_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"File Type"},"session_start":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Session Start"},"session_end":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Session End"},"est_session_duration":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Est Session Duration"},"entry_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Entry Url"},"entry_referer_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Entry Referer Url"},"exit_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Exit Url"},"total_pages_visited":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Total Pages Visited"},"unique_pages_visited":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Unique Pages Visited"},"pages":{"items":{"$ref":"#/components/schemas/PageViewResponse"},"type":"array","title":"Pages","default":[]},"updated_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Updated At","readOnly":true}},"type":"object","required":["id","hem","updated_at"],"title":"SessionWithPagesResponse","description":"Session record with its associated page views nested."},"PageViewResponse":{"properties":{"id":{"type":"string","title":"Id"},"hem":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hem"},"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id"},"external_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"External Id"},"tag_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tag Id"},"file_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"File Type"},"ref_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ref Url"},"referer_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Referer Url"},"est_time_on_page":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Est Time On Page"},"event_date":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Event Date"},"updated_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Updated At","readOnly":true}},"type":"object","required":["id","updated_at"],"title":"PageViewResponse"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}},"paths":{"/identity/visitors/{email}/profile":{"get":{"tags":["Identity"],"summary":"Get Visitor Profile","description":"Returns the visitor's profile together with their most recent sessions and the pages viewed in each. Use `session_limit` to control how many sessions are included (max 10).","operationId":"get_visitor_profile_identity_visitors__email__profile_get","parameters":[{"name":"email","in":"path","required":true,"schema":{"type":"string","title":"Email"}},{"name":"session_limit","in":"query","required":false,"schema":{"type":"integer","maximum":10,"minimum":1,"description":"Number of recent sessions to include. Max 10.","default":5,"title":"Session Limit"},"description":"Number of recent sessions to include. Max 10."}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VisitorProfileResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}}}
```

## Get Visitor Sessions

> Returns the visitor's site sessions, most recent first.

```json
{"openapi":"3.1.0","info":{"title":"Untitled API","version":"1.12.2"},"servers":[{"url":"https://api.getuntitled.ai","description":"Production"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"http","description":"Bearer token for authentication","scheme":"bearer"}},"schemas":{"Page_SessionResponse_":{"properties":{"items":{"items":{"$ref":"#/components/schemas/SessionResponse"},"type":"array","title":"Items"},"total":{"type":"integer","minimum":0,"title":"Total"},"page":{"type":"integer","minimum":1,"title":"Page"},"size":{"type":"integer","minimum":1,"title":"Size"},"pages":{"type":"integer","minimum":0,"title":"Pages"}},"type":"object","required":["items","total","page","size","pages"],"title":"Page[SessionResponse]"},"SessionResponse":{"properties":{"id":{"type":"string","title":"Id"},"hem":{"type":"string","title":"Hem"},"tag_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tag Id"},"file_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"File Type"},"session_start":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Session Start"},"session_end":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Session End"},"est_session_duration":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Est Session Duration"},"entry_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Entry Url"},"entry_referer_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Entry Referer Url"},"exit_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Exit Url"},"total_pages_visited":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Total Pages Visited"},"unique_pages_visited":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Unique Pages Visited"},"updated_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Updated At","readOnly":true}},"type":"object","required":["id","hem","updated_at"],"title":"SessionResponse"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}},"paths":{"/identity/visitors/{email}/sessions":{"get":{"tags":["Identity"],"summary":"Get Visitor Sessions","description":"Returns the visitor's site sessions, most recent first.","operationId":"get_sessions_by_email_identity_visitors__email__sessions_get","parameters":[{"name":"email","in":"path","required":true,"schema":{"type":"string","title":"Email"}},{"name":"page","in":"query","required":false,"schema":{"type":"integer","minimum":1,"description":"Page number","default":1,"title":"Page"},"description":"Page number"},{"name":"size","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"description":"Page size","default":50,"title":"Size"},"description":"Page size"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Page_SessionResponse_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}}}
```

## Get Session Page Views

> Returns the pages the visitor viewed during a specific session, in the order they were visited.

```json
{"openapi":"3.1.0","info":{"title":"Untitled API","version":"1.12.2"},"servers":[{"url":"https://api.getuntitled.ai","description":"Production"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"http","description":"Bearer token for authentication","scheme":"bearer"}},"schemas":{"Page_PageViewResponse_":{"properties":{"items":{"items":{"$ref":"#/components/schemas/PageViewResponse"},"type":"array","title":"Items"},"total":{"type":"integer","minimum":0,"title":"Total"},"page":{"type":"integer","minimum":1,"title":"Page"},"size":{"type":"integer","minimum":1,"title":"Size"},"pages":{"type":"integer","minimum":0,"title":"Pages"}},"type":"object","required":["items","total","page","size","pages"],"title":"Page[PageViewResponse]"},"PageViewResponse":{"properties":{"id":{"type":"string","title":"Id"},"hem":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hem"},"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id"},"external_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"External Id"},"tag_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tag Id"},"file_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"File Type"},"ref_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ref Url"},"referer_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Referer Url"},"est_time_on_page":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Est Time On Page"},"event_date":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Event Date"},"updated_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Updated At","readOnly":true}},"type":"object","required":["id","updated_at"],"title":"PageViewResponse"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}},"paths":{"/identity/visitors/{email}/sessions/{session_id}/pages":{"get":{"tags":["Identity"],"summary":"Get Session Page Views","description":"Returns the pages the visitor viewed during a specific session, in the order they were visited.","operationId":"get_session_pages_identity_visitors__email__sessions__session_id__pages_get","parameters":[{"name":"email","in":"path","required":true,"schema":{"type":"string","title":"Email"}},{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"page","in":"query","required":false,"schema":{"type":"integer","minimum":1,"description":"Page number","default":1,"title":"Page"},"description":"Page number"},{"name":"size","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"description":"Page size","default":50,"title":"Size"},"description":"Page size"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Page_PageViewResponse_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}}}
```

## Get Visitor Page Views

> Returns all pages the visitor has viewed across every session, most recent first.

```json
{"openapi":"3.1.0","info":{"title":"Untitled API","version":"1.12.2"},"servers":[{"url":"https://api.getuntitled.ai","description":"Production"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"http","description":"Bearer token for authentication","scheme":"bearer"}},"schemas":{"Page_PageViewResponse_":{"properties":{"items":{"items":{"$ref":"#/components/schemas/PageViewResponse"},"type":"array","title":"Items"},"total":{"type":"integer","minimum":0,"title":"Total"},"page":{"type":"integer","minimum":1,"title":"Page"},"size":{"type":"integer","minimum":1,"title":"Size"},"pages":{"type":"integer","minimum":0,"title":"Pages"}},"type":"object","required":["items","total","page","size","pages"],"title":"Page[PageViewResponse]"},"PageViewResponse":{"properties":{"id":{"type":"string","title":"Id"},"hem":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hem"},"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id"},"external_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"External Id"},"tag_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tag Id"},"file_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"File Type"},"ref_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ref Url"},"referer_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Referer Url"},"est_time_on_page":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Est Time On Page"},"event_date":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Event Date"},"updated_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Updated At","readOnly":true}},"type":"object","required":["id","updated_at"],"title":"PageViewResponse"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}},"paths":{"/identity/visitors/{email}/pages":{"get":{"tags":["Identity"],"summary":"Get Visitor Page Views","description":"Returns all pages the visitor has viewed across every session, most recent first.","operationId":"get_pages_by_email_identity_visitors__email__pages_get","parameters":[{"name":"email","in":"path","required":true,"schema":{"type":"string","title":"Email"}},{"name":"page","in":"query","required":false,"schema":{"type":"integer","minimum":1,"description":"Page number","default":1,"title":"Page"},"description":"Page number"},{"name":"size","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"description":"Page size","default":50,"title":"Size"},"description":"Page size"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Page_PageViewResponse_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}}}
```

## Get Visitor Buyer Intent

> Returns the buyer intent score (\`hot\`, \`warm\`, or \`cold\`) for the visitor.

```json
{"openapi":"3.1.0","info":{"title":"Untitled API","version":"1.12.2"},"servers":[{"url":"https://api.getuntitled.ai","description":"Production"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"http","description":"Bearer token for authentication","scheme":"bearer"}},"schemas":{"BuyerIntentResponse":{"properties":{"id":{"type":"string","title":"Id"},"hem":{"type":"string","title":"Hem"},"tag_id":{"type":"string","title":"Tag Id"},"lead_category":{"type":"string","title":"Lead Category"}},"type":"object","required":["id","hem","tag_id","lead_category"],"title":"BuyerIntentResponse"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}},"paths":{"/identity/visitors/{email}/buyer-intent":{"get":{"tags":["Identity"],"summary":"Get Visitor Buyer Intent","description":"Returns the buyer intent score (`hot`, `warm`, or `cold`) for the visitor.","operationId":"get_buyer_intent_by_email_identity_visitors__email__buyer_intent_get","parameters":[{"name":"email","in":"path","required":true,"schema":{"type":"string","title":"Email"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/BuyerIntentResponse"},"title":"Response Get Buyer Intent By Email Identity Visitors  Email  Buyer Intent Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}}}
```

## Get Visitor ICP Score

> Returns the visitor's ICP prediction score and their percentile rank against your ideal customer profile. Returns \`404\` if no score exists for this visitor.

```json
{"openapi":"3.1.0","info":{"title":"Untitled API","version":"1.12.2"},"servers":[{"url":"https://api.getuntitled.ai","description":"Production"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"http","description":"Bearer token for authentication","scheme":"bearer"}},"schemas":{"IcpResponse":{"properties":{"id":{"type":"string","title":"Id"},"hem":{"type":"string","title":"Hem"},"tag_id":{"type":"string","title":"Tag Id"},"email":{"type":"string","title":"Email"},"prediction":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Prediction"},"percentile":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Percentile"}},"type":"object","required":["id","hem","tag_id","email"],"title":"IcpResponse"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}},"paths":{"/identity/visitors/{email}/icp":{"get":{"tags":["Identity"],"summary":"Get Visitor ICP Score","description":"Returns the visitor's ICP prediction score and their percentile rank against your ideal customer profile. Returns `404` if no score exists for this visitor.","operationId":"get_icp_by_email_identity_visitors__email__icp_get","parameters":[{"name":"email","in":"path","required":true,"schema":{"type":"string","title":"Email"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IcpResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}}}
```

## List Sessions

> Returns a paginated list of site sessions across all visitors for the given date range.

```json
{"openapi":"3.1.0","info":{"title":"Untitled API","version":"1.12.2"},"servers":[{"url":"https://api.getuntitled.ai","description":"Production"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"http","description":"Bearer token for authentication","scheme":"bearer"}},"schemas":{"SessionQuery":{"properties":{"start_date":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Start Date","description":"Start of the date range (YYYY-MM-DD). Defaults to 7 days ago."},"end_date":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"End Date","description":"End of the date range (YYYY-MM-DD). Defaults to today."},"filters":{"anyOf":[{"items":{"$ref":"#/components/schemas/FilterCondition"},"type":"array"},{"type":"null"}],"title":"Filters","description":"Narrows results by session attributes such as file_type, tag_id, or engagement percentile."}},"type":"object","title":"SessionQuery"},"FilterCondition":{"properties":{"field":{"type":"string","title":"Field","description":"Column to filter on. Must be in the allowlist for the parent entity."},"method":{"$ref":"#/components/schemas/Operator","description":"Comparison method. Accepts word-style names ('equals', 'contains', …) or SQL symbols ('=', '!=', '<', '<=', '>', '>=', 'like', 'not like', 'in', 'not in', 'is null', 'is not null'). Case-insensitive."},"value":{"title":"Value","description":"Value to compare against. List for IN/NOT_IN. Ignored for IS_NULL/IS_NOT_NULL."}},"additionalProperties":false,"type":"object","required":["field","method"],"title":"FilterCondition","description":"A single filter clause: ``{field, method, value}``.\n\n``method`` accepts word-style names (``equals``, ``contains``, …) or SQL\nsymbols (``=``, ``!=``, ``like``, ``in``, …) in any case.\n\nFor ``in`` / ``not_in``, ``value`` must be a list. For ``is_null`` /\n``is_not_null``, ``value`` is ignored and may be omitted."},"Operator":{"type":"string","enum":["equals","not_equals","less_than","less_than_or_equal","greater_than","greater_than_or_equal","contains","not_contains","starts_with","not_starts_with","ends_with","not_ends_with","in","not_in","is_null","is_not_null"],"title":"Operator","description":"Canonical word-style comparison operators used internally.\n\nEach value maps to a SQL operator in\n``integrations.api.validators.OPERATOR_TO_SQL``."},"Page_SessionResponse_":{"properties":{"items":{"items":{"$ref":"#/components/schemas/SessionResponse"},"type":"array","title":"Items"},"total":{"type":"integer","minimum":0,"title":"Total"},"page":{"type":"integer","minimum":1,"title":"Page"},"size":{"type":"integer","minimum":1,"title":"Size"},"pages":{"type":"integer","minimum":0,"title":"Pages"}},"type":"object","required":["items","total","page","size","pages"],"title":"Page[SessionResponse]"},"SessionResponse":{"properties":{"id":{"type":"string","title":"Id"},"hem":{"type":"string","title":"Hem"},"tag_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tag Id"},"file_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"File Type"},"session_start":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Session Start"},"session_end":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Session End"},"est_session_duration":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Est Session Duration"},"entry_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Entry Url"},"entry_referer_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Entry Referer Url"},"exit_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Exit Url"},"total_pages_visited":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Total Pages Visited"},"unique_pages_visited":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Unique Pages Visited"},"updated_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Updated At","readOnly":true}},"type":"object","required":["id","hem","updated_at"],"title":"SessionResponse"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}},"paths":{"/identity/sessions":{"post":{"tags":["Identity"],"summary":"List Sessions","description":"Returns a paginated list of site sessions across all visitors for the given date range.","operationId":"get_sessions_identity_sessions_post","parameters":[{"name":"page","in":"query","required":false,"schema":{"type":"integer","minimum":1,"description":"Page number","default":1,"title":"Page"},"description":"Page number"},{"name":"size","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"description":"Page size","default":50,"title":"Size"},"description":"Page size"},{"name":"sort","in":"query","required":false,"schema":{"enum":["asc","desc"],"type":"string","description":"Sort by session_end","default":"desc","title":"Sort"},"description":"Sort by session_end"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SessionQuery"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Page_SessionResponse_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}}}
```

## Get Session Page Views

> Returns the pages viewed in a specific session, in chronological order.

```json
{"openapi":"3.1.0","info":{"title":"Untitled API","version":"1.12.2"},"servers":[{"url":"https://api.getuntitled.ai","description":"Production"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"http","description":"Bearer token for authentication","scheme":"bearer"}},"schemas":{"Page_PageViewResponse_":{"properties":{"items":{"items":{"$ref":"#/components/schemas/PageViewResponse"},"type":"array","title":"Items"},"total":{"type":"integer","minimum":0,"title":"Total"},"page":{"type":"integer","minimum":1,"title":"Page"},"size":{"type":"integer","minimum":1,"title":"Size"},"pages":{"type":"integer","minimum":0,"title":"Pages"}},"type":"object","required":["items","total","page","size","pages"],"title":"Page[PageViewResponse]"},"PageViewResponse":{"properties":{"id":{"type":"string","title":"Id"},"hem":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hem"},"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id"},"external_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"External Id"},"tag_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tag Id"},"file_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"File Type"},"ref_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ref Url"},"referer_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Referer Url"},"est_time_on_page":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Est Time On Page"},"event_date":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Event Date"},"updated_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Updated At","readOnly":true}},"type":"object","required":["id","updated_at"],"title":"PageViewResponse"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}},"paths":{"/identity/sessions/{session_id}/pages":{"get":{"tags":["Identity"],"summary":"Get Session Page Views","description":"Returns the pages viewed in a specific session, in chronological order.","operationId":"get_pages_by_session_identity_sessions__session_id__pages_get","parameters":[{"name":"session_id","in":"path","required":true,"schema":{"type":"string","title":"Session Id"}},{"name":"page","in":"query","required":false,"schema":{"type":"integer","minimum":1,"description":"Page number","default":1,"title":"Page"},"description":"Page number"},{"name":"size","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"description":"Page size","default":50,"title":"Size"},"description":"Page size"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Page_PageViewResponse_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}}}
```

## List Page Views

> Returns a paginated list of page views across all visitors for the given date range.

```json
{"openapi":"3.1.0","info":{"title":"Untitled API","version":"1.12.2"},"servers":[{"url":"https://api.getuntitled.ai","description":"Production"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"http","description":"Bearer token for authentication","scheme":"bearer"}},"schemas":{"PageQuery":{"properties":{"start_date":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Start Date","description":"Start of the date range (YYYY-MM-DD). Defaults to 7 days ago."},"end_date":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"End Date","description":"End of the date range (YYYY-MM-DD). Defaults to today."},"filters":{"anyOf":[{"items":{"$ref":"#/components/schemas/FilterCondition"},"type":"array"},{"type":"null"}],"title":"Filters","description":"Narrows results by page attributes such as ref_url or referer_url."}},"type":"object","title":"PageQuery"},"FilterCondition":{"properties":{"field":{"type":"string","title":"Field","description":"Column to filter on. Must be in the allowlist for the parent entity."},"method":{"$ref":"#/components/schemas/Operator","description":"Comparison method. Accepts word-style names ('equals', 'contains', …) or SQL symbols ('=', '!=', '<', '<=', '>', '>=', 'like', 'not like', 'in', 'not in', 'is null', 'is not null'). Case-insensitive."},"value":{"title":"Value","description":"Value to compare against. List for IN/NOT_IN. Ignored for IS_NULL/IS_NOT_NULL."}},"additionalProperties":false,"type":"object","required":["field","method"],"title":"FilterCondition","description":"A single filter clause: ``{field, method, value}``.\n\n``method`` accepts word-style names (``equals``, ``contains``, …) or SQL\nsymbols (``=``, ``!=``, ``like``, ``in``, …) in any case.\n\nFor ``in`` / ``not_in``, ``value`` must be a list. For ``is_null`` /\n``is_not_null``, ``value`` is ignored and may be omitted."},"Operator":{"type":"string","enum":["equals","not_equals","less_than","less_than_or_equal","greater_than","greater_than_or_equal","contains","not_contains","starts_with","not_starts_with","ends_with","not_ends_with","in","not_in","is_null","is_not_null"],"title":"Operator","description":"Canonical word-style comparison operators used internally.\n\nEach value maps to a SQL operator in\n``integrations.api.validators.OPERATOR_TO_SQL``."},"Page_PageViewResponse_":{"properties":{"items":{"items":{"$ref":"#/components/schemas/PageViewResponse"},"type":"array","title":"Items"},"total":{"type":"integer","minimum":0,"title":"Total"},"page":{"type":"integer","minimum":1,"title":"Page"},"size":{"type":"integer","minimum":1,"title":"Size"},"pages":{"type":"integer","minimum":0,"title":"Pages"}},"type":"object","required":["items","total","page","size","pages"],"title":"Page[PageViewResponse]"},"PageViewResponse":{"properties":{"id":{"type":"string","title":"Id"},"hem":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hem"},"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id"},"external_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"External Id"},"tag_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tag Id"},"file_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"File Type"},"ref_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ref Url"},"referer_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Referer Url"},"est_time_on_page":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Est Time On Page"},"event_date":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Event Date"},"updated_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Updated At","readOnly":true}},"type":"object","required":["id","updated_at"],"title":"PageViewResponse"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}},"paths":{"/identity/pages":{"post":{"tags":["Identity"],"summary":"List Page Views","description":"Returns a paginated list of page views across all visitors for the given date range.","operationId":"get_pages_identity_pages_post","parameters":[{"name":"page","in":"query","required":false,"schema":{"type":"integer","minimum":1,"description":"Page number","default":1,"title":"Page"},"description":"Page number"},{"name":"size","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"description":"Page size","default":50,"title":"Size"},"description":"Page size"},{"name":"sort","in":"query","required":false,"schema":{"enum":["asc","desc"],"type":"string","description":"Sort by event_date","default":"desc","title":"Sort"},"description":"Sort by event_date"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PageQuery"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Page_PageViewResponse_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}}}
```

## List Buyer Intent

> Returns buyer intent records (lead categories) across your workspace.

```json
{"openapi":"3.1.0","info":{"title":"Untitled API","version":"1.12.2"},"servers":[{"url":"https://api.getuntitled.ai","description":"Production"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"http","description":"Bearer token for authentication","scheme":"bearer"}},"schemas":{"Page_BuyerIntentResponse_":{"properties":{"items":{"items":{"$ref":"#/components/schemas/BuyerIntentResponse"},"type":"array","title":"Items"},"total":{"type":"integer","minimum":0,"title":"Total"},"page":{"type":"integer","minimum":1,"title":"Page"},"size":{"type":"integer","minimum":1,"title":"Size"},"pages":{"type":"integer","minimum":0,"title":"Pages"}},"type":"object","required":["items","total","page","size","pages"],"title":"Page[BuyerIntentResponse]"},"BuyerIntentResponse":{"properties":{"id":{"type":"string","title":"Id"},"hem":{"type":"string","title":"Hem"},"tag_id":{"type":"string","title":"Tag Id"},"lead_category":{"type":"string","title":"Lead Category"}},"type":"object","required":["id","hem","tag_id","lead_category"],"title":"BuyerIntentResponse"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}},"paths":{"/identity/buyer-intent":{"post":{"tags":["Identity"],"summary":"List Buyer Intent","description":"Returns buyer intent records (lead categories) across your workspace.","operationId":"get_buyer_intent_identity_buyer_intent_post","parameters":[{"name":"page","in":"query","required":false,"schema":{"type":"integer","minimum":1,"description":"Page number","default":1,"title":"Page"},"description":"Page number"},{"name":"size","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"description":"Page size","default":50,"title":"Size"},"description":"Page size"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Page_BuyerIntentResponse_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}}}
```

## List ICP Scores

> Returns ICP scores for all visitors, sorted by percentile.

```json
{"openapi":"3.1.0","info":{"title":"Untitled API","version":"1.12.2"},"servers":[{"url":"https://api.getuntitled.ai","description":"Production"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"http","description":"Bearer token for authentication","scheme":"bearer"}},"schemas":{"Page_IcpResponse_":{"properties":{"items":{"items":{"$ref":"#/components/schemas/IcpResponse"},"type":"array","title":"Items"},"total":{"type":"integer","minimum":0,"title":"Total"},"page":{"type":"integer","minimum":1,"title":"Page"},"size":{"type":"integer","minimum":1,"title":"Size"},"pages":{"type":"integer","minimum":0,"title":"Pages"}},"type":"object","required":["items","total","page","size","pages"],"title":"Page[IcpResponse]"},"IcpResponse":{"properties":{"id":{"type":"string","title":"Id"},"hem":{"type":"string","title":"Hem"},"tag_id":{"type":"string","title":"Tag Id"},"email":{"type":"string","title":"Email"},"prediction":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Prediction"},"percentile":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Percentile"}},"type":"object","required":["id","hem","tag_id","email"],"title":"IcpResponse"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}},"paths":{"/identity/icp":{"post":{"tags":["Identity"],"summary":"List ICP Scores","description":"Returns ICP scores for all visitors, sorted by percentile.","operationId":"get_icp_identity_icp_post","parameters":[{"name":"page","in":"query","required":false,"schema":{"type":"integer","minimum":1,"description":"Page number","default":1,"title":"Page"},"description":"Page number"},{"name":"size","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"description":"Page size","default":50,"title":"Size"},"description":"Page size"},{"name":"sort","in":"query","required":false,"schema":{"enum":["asc","desc"],"type":"string","description":"Sort by percentile","default":"desc","title":"Sort"},"description":"Sort by percentile"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Page_IcpResponse_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}}}
```


# Tags

## List Tags

> Returns all tracking tags in your workspace.

```json
{"openapi":"3.1.0","info":{"title":"Untitled API","version":"1.12.2"},"servers":[{"url":"https://api.getuntitled.ai","description":"Production"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"http","description":"Bearer token for authentication","scheme":"bearer"}},"schemas":{"TagApiResponse":{"properties":{"id":{"type":"string","title":"Id"},"tag_id":{"type":"string","title":"Tag Id"},"name":{"type":"string","title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"url":{"type":"string","title":"Url"},"status":{"type":"string","title":"Status"},"mtd_resolutions":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Mtd Resolutions"},"created_at":{"type":"string","title":"Created At"},"created_by":{"type":"string","title":"Created By"},"updated_at":{"type":"string","title":"Updated At"},"updated_by":{"type":"string","title":"Updated By"},"monthly_budget":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Monthly Budget","description":"Only surface the budget cap when budgets are actually enabled.","readOnly":true},"last_tracked_activity":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Last Tracked Activity","readOnly":true}},"type":"object","required":["id","tag_id","name","url","status","created_at","created_by","updated_at","updated_by","monthly_budget","last_tracked_activity"],"title":"TagApiResponse"}}},"paths":{"/tags":{"get":{"tags":["Tags"],"summary":"List Tags","description":"Returns all tracking tags in your workspace.","operationId":"get_tags_tags_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/TagApiResponse"},"type":"array","title":"Response Get Tags Tags Get"}}}}}}}}}
```

## Create Tag

> Creates a new tracking tag for your workspace.

```json
{"openapi":"3.1.0","info":{"title":"Untitled API","version":"1.12.2"},"servers":[{"url":"https://api.getuntitled.ai","description":"Production"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"http","description":"Bearer token for authentication","scheme":"bearer"}},"schemas":{"TagApiCreate":{"properties":{"alias":{"type":"string","title":"Alias"},"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"}},"type":"object","required":["alias"],"title":"TagApiCreate"},"TagApiResponse":{"properties":{"id":{"type":"string","title":"Id"},"tag_id":{"type":"string","title":"Tag Id"},"name":{"type":"string","title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"url":{"type":"string","title":"Url"},"status":{"type":"string","title":"Status"},"mtd_resolutions":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Mtd Resolutions"},"created_at":{"type":"string","title":"Created At"},"created_by":{"type":"string","title":"Created By"},"updated_at":{"type":"string","title":"Updated At"},"updated_by":{"type":"string","title":"Updated By"},"monthly_budget":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Monthly Budget","description":"Only surface the budget cap when budgets are actually enabled.","readOnly":true},"last_tracked_activity":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Last Tracked Activity","readOnly":true}},"type":"object","required":["id","tag_id","name","url","status","created_at","created_by","updated_at","updated_by","monthly_budget","last_tracked_activity"],"title":"TagApiResponse"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}},"paths":{"/tags":{"post":{"tags":["Tags"],"summary":"Create Tag","description":"Creates a new tracking tag for your workspace.","operationId":"create_tag_tags_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagApiCreate"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagApiResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}}}
```

## Get Tag

> Returns a single tag by ID. Returns \`404\` if the tag does not exist.

```json
{"openapi":"3.1.0","info":{"title":"Untitled API","version":"1.12.2"},"servers":[{"url":"https://api.getuntitled.ai","description":"Production"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"http","description":"Bearer token for authentication","scheme":"bearer"}},"schemas":{"TagApiResponse":{"properties":{"id":{"type":"string","title":"Id"},"tag_id":{"type":"string","title":"Tag Id"},"name":{"type":"string","title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"url":{"type":"string","title":"Url"},"status":{"type":"string","title":"Status"},"mtd_resolutions":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Mtd Resolutions"},"created_at":{"type":"string","title":"Created At"},"created_by":{"type":"string","title":"Created By"},"updated_at":{"type":"string","title":"Updated At"},"updated_by":{"type":"string","title":"Updated By"},"monthly_budget":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Monthly Budget","description":"Only surface the budget cap when budgets are actually enabled.","readOnly":true},"last_tracked_activity":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Last Tracked Activity","readOnly":true}},"type":"object","required":["id","tag_id","name","url","status","created_at","created_by","updated_at","updated_by","monthly_budget","last_tracked_activity"],"title":"TagApiResponse"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}},"paths":{"/tags/{id}":{"get":{"tags":["Tags"],"summary":"Get Tag","description":"Returns a single tag by ID. Returns `404` if the tag does not exist.","operationId":"get_tag_tags__id__get","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","title":"Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagApiResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}}}
```

## Delete Tag

> Permanently deletes a tag.

```json
{"openapi":"3.1.0","info":{"title":"Untitled API","version":"1.12.2"},"servers":[{"url":"https://api.getuntitled.ai","description":"Production"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"http","description":"Bearer token for authentication","scheme":"bearer"}},"schemas":{"TagApiDeleteResponse":{"properties":{"id":{"type":"string","title":"Id"},"name":{"type":"string","title":"Name"},"message":{"type":"string","title":"Message"}},"type":"object","required":["id","name","message"],"title":"TagApiDeleteResponse"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}},"paths":{"/tags/{id}":{"delete":{"tags":["Tags"],"summary":"Delete Tag","description":"Permanently deletes a tag.","operationId":"delete_tag_tags__id__delete","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","title":"Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagApiDeleteResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}}}
```

## Update Tag

> Updates a tag's name, description, status, or monthly spend cap. Only send the fields you want to change.

```json
{"openapi":"3.1.0","info":{"title":"Untitled API","version":"1.12.2"},"servers":[{"url":"https://api.getuntitled.ai","description":"Production"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"http","description":"Bearer token for authentication","scheme":"bearer"}},"schemas":{"TagUpdate":{"properties":{"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"tag_cap":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Tag Cap"},"status":{"anyOf":[{"type":"string","enum":["enabled","disabled"]},{"type":"null"}],"title":"Status"}},"type":"object","title":"TagUpdate"},"TagApiResponse":{"properties":{"id":{"type":"string","title":"Id"},"tag_id":{"type":"string","title":"Tag Id"},"name":{"type":"string","title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"url":{"type":"string","title":"Url"},"status":{"type":"string","title":"Status"},"mtd_resolutions":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Mtd Resolutions"},"created_at":{"type":"string","title":"Created At"},"created_by":{"type":"string","title":"Created By"},"updated_at":{"type":"string","title":"Updated At"},"updated_by":{"type":"string","title":"Updated By"},"monthly_budget":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Monthly Budget","description":"Only surface the budget cap when budgets are actually enabled.","readOnly":true},"last_tracked_activity":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Last Tracked Activity","readOnly":true}},"type":"object","required":["id","tag_id","name","url","status","created_at","created_by","updated_at","updated_by","monthly_budget","last_tracked_activity"],"title":"TagApiResponse"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}},"paths":{"/tags/{id}":{"patch":{"tags":["Tags"],"summary":"Update Tag","description":"Updates a tag's name, description, status, or monthly spend cap. Only send the fields you want to change.","operationId":"update_tag_tags__id__patch","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","title":"Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagUpdate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagApiResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}}}
```

## Update Tag Status

> Enables or disables a tag.

```json
{"openapi":"3.1.0","info":{"title":"Untitled API","version":"1.12.2"},"servers":[{"url":"https://api.getuntitled.ai","description":"Production"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"http","description":"Bearer token for authentication","scheme":"bearer"}},"schemas":{"TagStatusUpdate":{"properties":{"status":{"type":"string","enum":["enabled","disabled"],"title":"Status"}},"type":"object","required":["status"],"title":"TagStatusUpdate"},"TagApiResponse":{"properties":{"id":{"type":"string","title":"Id"},"tag_id":{"type":"string","title":"Tag Id"},"name":{"type":"string","title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"url":{"type":"string","title":"Url"},"status":{"type":"string","title":"Status"},"mtd_resolutions":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Mtd Resolutions"},"created_at":{"type":"string","title":"Created At"},"created_by":{"type":"string","title":"Created By"},"updated_at":{"type":"string","title":"Updated At"},"updated_by":{"type":"string","title":"Updated By"},"monthly_budget":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Monthly Budget","description":"Only surface the budget cap when budgets are actually enabled.","readOnly":true},"last_tracked_activity":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Last Tracked Activity","readOnly":true}},"type":"object","required":["id","tag_id","name","url","status","created_at","created_by","updated_at","updated_by","monthly_budget","last_tracked_activity"],"title":"TagApiResponse"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}},"paths":{"/tags/{id}/status":{"post":{"tags":["Tags"],"summary":"Update Tag Status","description":"Enables or disables a tag.","operationId":"update_tag_status_tags__id__status_post","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","title":"Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagStatusUpdate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagApiResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}}}
```




---

[Next Page](/llms-full.txt/1)

