Connect HubSpot
You'll save visitors' answers to HubSpot and use their properties and lists to personalize your website, with signup actions that fit your follow-up.
Connect HubSpot to save visitors' answers to their contact records, ready for your follow-up. You can also use an identified contact's properties and list memberships to show them relevant content on your website.
Connect HubSpot
You'll need permission to manage your RightMessage project's integration and authorize the HubSpot account you want to use. Each project connects to one email platform or CRM. Review where you use an existing connection before replacing it.
- Open your RightMessage project settings and choose Integration.
- On Email platforms & CRMs, select HubSpot.
- In Overview, click Connect to HubSpot.
- Sign in to HubSpot, choose the account, and approve access.
- Return to RightMessage and check for Connected to HubSpot and a healthy connection.
HubSpot uses OAuth. Authorization saves the Portal ID and tokens, so you don't need to copy them into the connection screen. Use Reconnect to HubSpot if it needs renewed access.
Prepare a test contact you control and a page with the RightMessage snippet installed. If you'll identify people through HubSpot's tracking code, install that too. If you'll submit to a HubSpot form, you'll need access to the form and its property definitions.
Recognize subscribers from email links
An identifying link lets RightMessage look up the contact who clicked it. Add rm_hs with HubSpot's contact-email merge field to your website links. For example, a link to WorkForge (opens in a new tab) could be:
Use your own page URL. If it already has a query string, append &rm_hs={{contact.email}}. Send a message to a test contact so HubSpot fills in the merge field. A URL with literal braces won't identify anyone. The generic email parameter also supports a URL-encoded email lookup.
- Give your test contact a distinctive HubSpot property value or list membership.
- Open the delivered link in a fresh browser session on the page with RightMessage installed.
- In the on-site debugger, check the contact and their HubSpot data.
- Visit another page in the same browser without the parameter. RightMessage should remember the contact. Another browser or device needs its own identification.
HubSpot's tracking code can also identify a visitor when its token resolves to a contact. An anonymous tracking cookie alone won't do that. Supported HubSpot form callbacks can supply a valid email, but the contact still needs to be available for lookup. Submitting the form and making the contact available are separate stages.
Choose what to sync
RightMessage reads native fields, custom properties, and list membership after identification. Use a property for choice answers, and a native field or writable custom property for typed answers. HubSpot doesn't offer native tag sync.
- Open Questions, choose your question, and open Sync with HubSpot.
- Choose Property in Sync mode. Single-answer questions default to a field. Multiple-answer questions can default to Lists, so change those before mapping.
- Choose Destination and complete Answer → value for each answer. Map typed answers to a compatible native field or custom property.
- If your flow collects email, open the Email question's Setup. Keep Identify the visitor enabled and choose a Contact action.
- Select the destination lists or forms when your action requires them.
- Review the mappings and click Publish when you're ready to make them live.
Choose the contact action that fits your follow-up:
| If you'd like to… | Choose |
|---|---|
| Create or update a contact without a list or form | Create/Update contact |
| Add the contact to a writable static/manual list | Add to list |
| Record a submission to an eligible HubSpot form | Submit form |
HubSpot's rules manage dynamic lists. Use a static/manual list for direct additions. RightMessage's form picker excludes forms with CAPTCHA enabled.
A newsletter signup can use Submit form when your automation starts with that HubSpot form submission. You don't need a matching HubSpot form for every RightMessage offer if you only want to update the contact.
Multiple answers saved to a property are comma-separated. Choose a compatible text or multiple-checkbox property rather than a single-choice property. Save an Other write-in to a separate property with Save write-ins to HubSpot. Switching Sync mode clears previous mappings after confirmation.
To create a text property from the picker, choose New HubSpot property. Enter Field Name using letters, numbers, and underscores, then click Create. Create specialized property types and option sets in HubSpot first.
Match your HubSpot form's requirements
If you use Submit form, check the selected form in HubSpot before collecting signups. RightMessage's required setting controls its own question or form. It doesn't change what HubSpot requires.
- List the required fields using their internal property names, not just their visible labels.
- Collect and map a value for each one. RightMessage includes the contact's email, but doesn't invent other required values.
- Match each property's type. Use text properties for free text, number properties for numeric answers, and compatible date properties for dates.
- For dropdown and radio properties, map to an existing option. For multiple-checkbox properties, every selected value must match an allowed option.
- For a single boolean checkbox, use
trueorfalse, not arbitrary answer labels. - Check HubSpot's consent requirements alongside the disclosure and consent controls you show in RightMessage.
RightMessage translates recognized option labels to HubSpot's internal option values. If any supplied choice doesn't match, it skips that whole property update. It doesn't save only the matching choices or create a new option.
An unchecked consent box on a RightMessage Email question prevents identification and sending data. Checking it doesn't supply HubSpot's form-specific subscription consent. The current HubSpot consent payload sets consentToProcess to false, sends empty text, and includes no communication permissions. It doesn't pass through the visitor's checkbox choice.
Your selected HubSpot form defines the required fields. There's no universal list of extra fields every form needs. The native catalog includes First Name, Last Name, Email, Phone, Mobile Phone, Company, Website, Job Title, Address, City, State, Zip, Country, Lifecycle Stage, Contact Owner, and Lead Status. Contact Owner needs the HubSpot owner ID, not the display name.
Other writable properties appear as custom properties. Read-only properties are excluded. Name and Address questions can use One field per part to save their parts separately.
The list catalog loads at most 10,000 lists. Properties, forms, and lists can stay cached for 24 hours. If a recent change is missing, use Clear Cache rather than rebuilding mappings.
If you need a HubSpot event action
In a RightMessage form's Action, choose Trigger an event and select an existing HubSpot behavioral event. Event metadata supports Liquid templates. This is a form action, not an Email question's Contact action.
Create the event definition in HubSpot first. RightMessage uses its internal event name, not arbitrary text. The current OAuth connection doesn't request the event-definition permission needed to populate the picker. Reconnecting alone won't add it. If no events appear, use a supported contact, list, or form action.
Check event delivery separately. An event action can update the contact even when HubSpot doesn't record the event. Outgoing events don't make HubSpot event or purchase history available for incoming conditions, and this connection has no direct automation-enrollment action.
Follow Map answers to contact fields and tags for shared mapping and return-visit behavior.
Check the connection
- Submit your published form or flow with the test contact.
- In HubSpot, check the exact property values and expected static-list membership.
- If you chose Submit form, look for that submission in the contact's activity.
- Check the automation you expected to start.
- Repeat with a new email you control to test contact creation too.
If a new property, form, or list is missing, open Integration → HubSpot → Overview and click Clear Cache, then reopen its picker. If one property stays unchanged, check its internal name, type, and option values. If the contact changes but form activity is missing, check required fields and validation before reconnecting.
When the contact has the answers you sent and the list or form action you chose is recorded, your setup is working. Verify an integration change walks through these checks, including the form submission your automation depends on.