---
title: "Customer Alliance for HubSpot: setup and user guide"
description: HubSpot and Customer Alliance Integration
---

[Skip to content](https://support.customer-alliance.com/v2-knowledge-base/customer-alliance-for-hubspot-setup-and-user-guide#main-content)

English

Show submenu for translations

[Open a Ticket](https://support.customer-alliance.com/v2-knowledge-base/kb-tickets/new?hsLang=en) [Customer portal](https://support.customer-alliance.com/tickets-view?hsLang=en)

![Customer-Alliance-Stacked-logo-on-light](https://support.customer-alliance.com/hs-fs/hubfs/Customer-Alliance-Stacked-logo-on-light.png?width=280&height=280&name=Customer-Alliance-Stacked-logo-on-light.png)

Open main navigation

Close main navigation

- English
  
  Show submenu for translations
- [Open a Ticket](https://support.customer-alliance.com/v2-knowledge-base/kb-tickets/new)
- [Customer portal](https://support.customer-alliance.com/tickets-view)
- [Contact us](mailto:support@customer-alliance.com)

[Contact us](mailto:support@customer-alliance.com)

 How can we help you?

- There are no suggestions because the search field is empty.

1. [Customer Alliance Knowledge Base](https://support.customer-alliance.com/v2-knowledge-base?hsLang=en)
2. [Integrations](https://support.customer-alliance.com/v2-knowledge-base/integrations?hsLang=en)

# Customer Alliance for HubSpot: setup and user guide

## Connect HubSpot to Customer Alliance to send guest surveys to your HubSpot contacts and, on the Pro plan, see each guest's survey and review results in HubSpot. Setup takes about 10 minutes.

 ![Screenshot 2026-10-05 100241](https://support.customer-alliance.com/hs-fs/hubfs/Screenshot%202026-10-05%20100241.png?width=670&height=333&name=Screenshot%202026-10-05%20100241.png)

The first three features come with every plan that includes HubSpot. The last two need the Pro plan.

| Feature | What it does | Plan |
| --- | --- | --- |
| Contact sync | Imports your HubSpot contacts as guests, either all of them or the members of segments you choose, and keeps them up to date. | All |
| HubSpot segments as audiences | Use a HubSpot segment as the audience for a guest survey. It updates as contacts join or leave the segment. | All |
| Consent and deletions | A contact who unsubscribes from email in HubSpot gets no more survey invitations. Contacts you delete in HubSpot are honoured. | All |
| Survey and review data in HubSpot | Adds each guest's latest NPS, satisfaction score, review rating and more to their HubSpot contact record. | Pro |
| Audiences pushed to HubSpot | Sends a Customer Alliance audience to HubSpot as a segment and keeps it up to date, for workflows and campaigns. | Pro |

**Before you start**

You need a person on each side:

- **In Customer Alliance:** a user with permission to edit settings for the property or group you connect.
- **In HubSpot:** a user who is allowed to install apps in your HubSpot account, usually a Super Admin.

Have these ready:

- **Where contacts should land.** Pick the Customer Alliance property that should receive contacts by default. If contacts belong to different properties, pick the HubSpot field that tells them apart, such as "Hotel" or "Brand".
- **Extra contact fields.** Any HubSpot field you want copied into Customer Alliance, beyond name, email, phone, country and language, needs a matching guest attribute. Create these first under **Settings → Guest attributes**.
- **Consent.** You will confirm that your contacts agreed to receive emails from you.

Each HubSpot account can be connected in one place in Customer Alliance at a time. A property or group receives contacts from one HubSpot account.

**Step 1: Connect HubSpot**

 

Connect at the property or group whose guests the contacts belong to. Contacts can land on that property or any property below it.

1. In Customer Alliance, open **Integrations** for the property or group you want to connect.
2. On the **HubSpot** card, click **Connect**.
3. HubSpot opens. Sign in, and choose the HubSpot account to connect.
4. Review what Customer Alliance asks for: permission to read your contacts and your segments. Approve it.
5. You return to the **HubSpot** setup page in Customer Alliance, which shows **Connected to** and your HubSpot account name.

Until the Customer Alliance app is listed in the HubSpot Marketplace, HubSpot may warn that the app is unverified. That is expected; you can continue.

 

**Step 2: Choose where contacts go and what comes with them**

On the HubSpot setup page, fill in **Setup**:

1. **Default property.** Contacts land here unless routing sends them to another property.
2. **Route by HubSpot field** (optional). Pick a HubSpot field, then enter the value that sends a contact to each property. For example, field "Hotel" with value "Berlin" sends those contacts to your Berlin property. Contacts with any other value go to the default property.
3. **Contact fields.** Choose which HubSpot fields to copy into your guest attributes. Name, email, phone, country and language always come across.
4. **Consent.** Tick "I confirm these contacts agreed to receive emails from us, and that I'm allowed to import them into Customer Alliance."
5. **Import all contacts.** Turn this on to sync every contact in your HubSpot account. Leave it off to sync only the members of the HubSpot segments you use as audiences (see *Survey your HubSpot contacts*).
6. Click **Save settings**.

The first sync starts within the hour. To start it straight away, click **Sync now**.

**Step 3: Check the sync**

Changes you make in HubSpot reach Customer Alliance within a few minutes. A full sync also runs once a day to catch anything missed. **Sync status** on the HubSpot setup page shows how it is going:

- **Synced**, **Syncing**, **Not synced yet** or **Needs attention.** "Needs attention" comes with a message saying what to do (see *Troubleshooting*).
- **Last full sync** and the number of contacts synced.
- **Live updates: last checked** shows when Customer Alliance last picked up changes from HubSpot.

**Skipped** counts the contacts that were not imported, and why:

| Reason shown | Why the contact was skipped |
| --- | --- |
| No email address | Customer Alliance needs an email address to invite a guest. |
| No matching property | Routing could not place the contact on a property. |
| Erased on request | The person asked for their data to be erased. |
| Anonymized | The guest's data was anonymized in Customer Alliance. |

**Survey your HubSpot contacts**

Imported contacts are guests like any other, so every audience can include them. To survey exactly the contacts in a HubSpot segment, create an audience from it:

1. Go to **Settings → Audiences** and click **New from HubSpot**.
2. If you connected more than one HubSpot account, choose the **HubSpot account**.
3. Search by **Segment name**, or search with the box empty to list every segment. Pick one.
4. Name the audience and create it. Its members arrive from HubSpot within a few minutes.
5. Choose the audience when you set up a survey's invitations.

The audience follows the segment: contacts who join or leave it in HubSpot join or leave the audience. If the segment is deleted in HubSpot, the audience matches no one, and its card says so.

Invitations sent after a stay, such as after check-out, only reach guests who have a stay in Customer Alliance. Many HubSpot contacts have none, and the audience card shows how many.

 Pro: survey and review data on your HubSpot contacts

On the Pro plan, Customer Alliance writes each guest's latest feedback to their HubSpot contact. Use it in HubSpot lists, workflows and reports, for example to create a follow-up task when a contact's NPS category becomes Detractor.

**Turn it on:**

1. On the HubSpot setup page, under **Write-back to HubSpot**, click **Grant write access**.
2. HubSpot shows each write permission as a separate tick box, unticked. Tick all three, then approve.
3. If the boxes are locked, a HubSpot admin must first allow these permissions in Customer Alliance's app settings in HubSpot. Then repeat step 1.
4. The page shows **Write access is granted.** The first write starts within 15 minutes.

After that, contacts whose Customer Alliance data changed are updated every 15 minutes, and every contact is refreshed once a day.

**What you get:** these contact properties, in a **Customer Alliance** property group:

| Property | What it holds |
| --- | --- |
| NPS category | Promoter, Passive or Detractor, from the guest's latest NPS answer |
| Last NPS score | 0 to 10 |
| Last CSAT score | Latest overall satisfaction score, 0 to 100 |
| Last survey date | When the guest last completed a survey |
| Last survey response | A link to that response in Customer Alliance |
| Last survey property | The property that survey was about |
| Last review rating (out of 10) | The guest's latest review, converted to a 10-point scale |
| Last review sentiment | Positive, Neutral or Negative |
| Last review platform | For example Booking.com or Google |
| Last review date | When that review was posted |
| Last survey invitation sent | When Customer Alliance last invited the guest |
| Survey responses | How many surveys the guest has completed |
| Reviews | How many reviews have been matched to the guest |
| Unsubscribed from surveys | Yes if the guest unsubscribed from Customer Alliance surveys |
| Last stay date | The end of the guest's latest stay |
| Stays | How many stays the guest has had |

The values come from the connected property or group and the properties below it. Dates are in your account's time zone.

**Good to know:**

- **Free HubSpot accounts** allow 10 custom properties in total, your own included. Customer Alliance creates as many as fit, in the order of the table above, and the setup page says how many were left out.
- **A property of your own with the same name** is never overwritten. The setup page names it.
- **Don't edit these properties by hand.** Customer Alliance overwrites them on the next update.

**Pro: push audiences to HubSpot**

On the Pro plan, any Customer Alliance audience can become a HubSpot segment, kept up to date for your workflows and campaigns. It needs write access first (see the section above).

1. Go to **Settings → Audiences** at the property or group that owns the audience. A property that inherits an audience from its group cannot push it.
2. On the audience's card, click **Push to HubSpot**. If you connected more than one HubSpot account, choose one.
3. The card shows "Pushing to HubSpot." Within a few minutes, a segment named *audience name (Customer Alliance)* appears in HubSpot. If that name is taken, a number is added.

**Who is in the segment:** the audience's guests who have a HubSpot contact with the same email address. Customer Alliance never creates contacts in HubSpot, so the card counts the guests left out because they have no matching contact.

**Keeping it current:** the segment is updated every 15 minutes and renamed when you rename the audience. It mirrors the audience, so contacts added or removed by hand in HubSpot are put back once a day.

**Stopping:** click **Stop pushing** on the card. The segment stays in HubSpot exactly as it is and is no longer updated. Deleting the audience does the same.

If you delete the segment in HubSpot, the card says so: click **Push again** to make a new one. If Customer Alliance loses write access, the card shows **Paused** until you grant it again.

**Privacy and consent**

Customer Alliance follows what happens to a contact in HubSpot, within a few minutes:

| In HubSpot | In Customer Alliance |
| --- | --- |
| The contact unsubscribes from all email | No more survey invitations to that guest. Unsubscribing from a single subscription type does not change this. |
| You delete the contact | No more survey invitations to that email address, including guests with the same address from your PMS. |
| You delete the contact under GDPR (permanent deletion) | That person's personal data is erased in Customer Alliance, for every guest with that email address at the connected property or group. |
| You merge two contacts | One guest remains. Consent does not change. |

The other way round, a guest who unsubscribes from Customer Alliance surveys shows as **Unsubscribed from surveys: Yes** on their HubSpot contact (Pro). It does not change their HubSpot email subscriptions.

Customer Alliance reads only your contacts and segments. On the Pro plan, it also writes its own contact properties and the segments it pushes. It changes nothing else in HubSpot.

**Disconnect**

On the **Integrations** page, click **Disconnect** on the HubSpot card. This removes the Customer Alliance app from your HubSpot account and stops all syncing.

- **In Customer Alliance:** guests already imported stay. Audiences built on HubSpot segments match no one until you reconnect.
- **In HubSpot:** the Customer Alliance contact properties and any segments it pushed stay exactly as they were.

To connect a different HubSpot account to the same property or group, disconnect first, then connect the new one.

**Troubleshooting**

Most messages fix themselves on the next sync. The ones below need you:

| You see | What to do |
| --- | --- |
| "HubSpot stopped accepting our access" or "HubSpot refused access to your contacts" | Click **Reconnect** on the HubSpot card and approve again. |
| "Live updates are off: the HubSpot app is missing a permission" | Click **Reconnect** and approve every permission HubSpot asks for. |
| "The default property is no longer available" | Choose another **Default property** and click **Save settings**. |
| "Nothing to sync yet" | Turn on **Import all contacts**, or create an audience with **New from HubSpot**. |
| Many contacts skipped for **No email address** or **No matching property** | Add email addresses in HubSpot, or check your routing values against the HubSpot field. |
| "HubSpot granted only some of the write permissions" | Click **Grant write access** again and tick all three boxes. |
| The write permissions are locked on HubSpot's screen | Ask a HubSpot admin to allow them in Customer Alliance's app settings in HubSpot. |
| "This HubSpot account has no room for" some properties | Your HubSpot account has reached its custom property limit. Free some up, or upgrade HubSpot. The most important properties are written first. |
| Properties "not written because the name is already taken" | Rename your own property with that name in HubSpot, or restore it if it was a deleted Customer Alliance property. |
| "HubSpot rejected the last write for every contact" | Check that nobody edited the Customer Alliance properties in HubSpot. |
| "This audience can't be pushed until its conditions are fixed" | Edit the audience and fix its conditions. |
| "HubSpot already has segments with this audience's name" | Rename the audience. |
| No **Push to HubSpot** button | Grant write access first (the Audiences page links to it), and push from the property or group that owns the audience. Pushing needs the Pro plan. |

Still stuck? Contact Customer Alliance support with your HubSpot account name and what the HubSpot setup page shows.

- [Getting started](https://support.customer-alliance.com/v2-knowledge-base/getting-started?hsLang=en)
- [Settings](https://support.customer-alliance.com/v2-knowledge-base/settings?hsLang=en)
- [Integrations](https://support.customer-alliance.com/v2-knowledge-base/integrations?hsLang=en)
- [FAQs](https://support.customer-alliance.com/v2-knowledge-base/faqs?hsLang=en)

[![Customer-Alliance-Horizontal-logo-on-light (1)](https://support.customer-alliance.com/hubfs/Customer-Alliance-Horizontal-logo-on-light%20(1).svg "Customer-Alliance-Horizontal-logo-on-light (1)")](http://www.customer-alliance.com)

<https://www.facebook.com/> <https://www.twitter.com/> <https://www.instagram.com/> <https://podcasts.apple.com/> [mailto:email@email.com](mailto:email@email.com)

Copyright © 2026, CA Customer Alliance GmbH