# Activate customer profiles on HubSpot ## Learn how to synchronize customer profiles with HubSpot contacts for activation. Krenalis makes it easy to sync customer profiles from your data warehouse to HubSpot contacts. By connecting your HubSpot account, you can keep every contacts up to date—no manual imports or scripts required. Once connected, Krenalis automatically exports and updates contacts based on your defined filters and transformations, ensuring your contacts always reflect the latest data. ## How it works 1. **Choose where to sync.** Select the HubSpot contacts to keep up to date. 2. **Select your audience.** Choose which customer profiles to include. 3. **Map the data.** Match each property from your Customer Model to HubSpot fields using Visual Mapping, JavaScript, or Python. 4. **Set the schedule.** Choose how often Krenalis synchronizes profiles. 5. **Keep it fresh.** Krenalis automatically updates your HubSpot contacts, adding or updating contacts when new profiles appear. The result: your HubSpot contacts always mirrors your customer data, ready for activation in your marketing campaigns. ## Steps Follow these steps in the Krenalis Admin console to connect HubSpot and set up profile exports. ### 1. Generate the HubSpot access token 1. Log in to your HubSpot account. 2. Click the **Settings** icon (⚙) in the top navigation bar. 3. In the left sidebar, navigate to **Account Management → Integrations → Legacy Apps**. 4. Click **Create legacy app**. 5. Click **Private**. 6. In **Basic Info**, enter a name for the app (for example, "Krenalis"). 7. Open the **Scopes** tab and enable: - `crm.objects.contacts.read` - `crm.objects.contacts.write` - `crm.schemas.contacts.read` 8. Click **Update**, then click **Create app** and confirm. 9. In the **Auth** tab, under **Access token**, click **Show token**, then **Copy**. ### 2. Connect Krenalis with HubSpot 1. In your Krenalis workspace, open the **Destinations** page. 2. Click **Add a new destination ⊕**, then select the **HubSpot** card. 3. Click **Add destination...**. 4. (Optional) In **Name**, enter a label to identify the connection later. 5. Paste the **Access token** you copied earlier. 6. Click **Add** to complete the connection. ### 3. Add a pipeline to export profiles On the connection page, click on **Add pipeline...** to define how profiles should be exported to HubSpot. [Add pipeline](https://www.krenalis.com/docs/activate-profiles/images/add-hubspot-pipeline.png)! Each pipeline tells Krenalis which data to send and how to structure it in HubSpot. You can define multiple pipelines per destination to manage different datasets. ### 4. Filter profiles If you don't want to send all profiles to HubSpot, use filters to select which profiles to sync. Only profiles that match the filter conditions will be synced. If no filters are set, all profiles will be exported. For more information on how to use filters, see the [Filters documentation](https://www.krenalis.com/docs/filters.md). [Filter](https://www.krenalis.com/docs/activate-profiles/images/filter.png)! ### 5. Set how contacts sync to HubSpot The **Export settings** section tells Krenalis how to recognize your contacts and what pipelines to take to keep HubSpot perfectly in sync with your latest customer data — automatically and without manual updates. [Export settings](https://www.krenalis.com/docs/activate-profiles/images/hubspot-export-settings.png)! * **Choose matching fields**\ Select one property from your Krenalis data and one from HubSpot to compare — usually something unique like an email address or customer ID. Krenalis uses these fields to check if a contact already exists in HubSpot. What happens next depends on the sync rules you choose below. * **Decide how handle each contact** You can choose to add new contacts when they don't exist in HubSpot, update existing ones when their information changes, or do both. * **Manage duplicate contacts**\ If more than one Krenalis profile shares the same matching value, you can define how Krenalis should handle them. These settings help keep your data clean and avoid unwanted duplicates in your audience. ### 6. Transformation Use the **Transformation** section to decide how customer data is written to HubSpot contacts. You can visually map fields from the Customer Model to HubSpot fields, or use JavaScript and Python for more advanced logic (for example, formatting dates or combining multiple properties). [Filter](https://www.krenalis.com/docs/activate-profiles/images/transform-hubspot-profile.png)! ### 7. Save your changes When everything looks good, click **Add** (or **Save** if you're editing an existing pipeline). To export another set of profiles to the same HubSpot account, repeat the process starting with the [Add a pipeline to export profiles](#2-add-a-pipeline-to-export-profiles) step. ## Pipelines Once saved, the new pipeline appears in the pipelines list for HubSpot. From here, you can monitor imports, adjust filters, and manage transformations. Each pipeline defines how and when profiles flow from your warehouse to HubSpot. With a single HubSpot connection, you can create multiple export pipelines to sync different data segments within the same account. [Pipeline to export profiles](https://www.krenalis.com/docs/activate-profiles/images/pipelines.hubspot.png)! | Column | Description | |--------------|-------------------------------------------------------------------------------------------------------------------------| | **Pipeline** | Name and description of the pipeline. | | **Filters** | Conditions used to select which profiles are exported. If not set, all profiles are included. | | **Enable** | Switch to activate or deactivate the pipeline. When disabled, the pipeline will not run, even if a schedule is defined. | | **Run now** | Run the export immediately, one time only. _Available only when the pipeline is enabled_. | | **Schedule** | Frequency of automatic exports. You can also run the export manually at any time. | | **Manage** | Edit settings such as filter and transformation. | | **⋮ (More)** | Additional options, such as deleting the pipeline. |