Connect HubSpot

HubSpot is a two-way connection. SYSOI pushes your sales-ready, scored contacts out to HubSpot (the Readiness handoff) and pulls contacts and deals back in to attribute closed pipeline to your events.

What you'll need

  • A HubSpot account where you can authorize an app and (ideally) an admin who

can grant write scopes.

  • About two minutes.

Connect

  1. In SYSOI, open Connections.
  2. Find the HubSpot card and click Connect.
  3. A HubSpot window opens — sign in and authorize SYSOI.
  4. When it closes, the card shows Connected. That's it — your token is held

securely in our connector vault; SYSOI never stores your HubSpot password.

Scopes — grant write access for the full experience

The handoff and attribution loop need write access. When you authorize, make sure these scopes are granted:

  • crm.objects.contacts.read / crm.objects.contacts.write — read contacts back, push scored contacts.
  • crm.schemas.contacts.write — lets SYSOI self-provision its custom properties (sysoi_readiness_score, sysoi_readiness_tier, sysoi_readiness_summary, sysoi_associated_events, and the consent fields).
  • crm.objects.deals.read / crm.objects.deals.write + crm.schemas.deals.write — pull deals for ROI attribution and back-stamp sysoi_attributed_events.
  • crm.objects.owners.read (optional) — enriches nominations with the deal owner.
  • crm.objects.marketing_events.read / crm.objects.marketing_events.write (optional) — only if you want to sync event spend with HubSpot Marketing Events (see "Event spend & ROI" below).

If a scope is missing, SYSOI degrades gracefully (it falls back to standard fields and reports what it skipped) — it never fails the whole push. To add scopes later, click Connect again and re-authorize: the token is minted with whatever scopes you grant at that moment.

Use it

  • Readiness handoff: go to Readiness, choose HubSpot as the destination,

pick a tier, and push. Existing contacts are matched by email and updated (no duplicates); the readiness score, tier, a one-line AI summary, and the event name are stamped on each.

  • Attribution (ROI): SYSOI pulls changed contacts and deals on a schedule.

On Readiness → Attribution, click Refresh from CRM to pull now. Deals are matched to the contact's most-recent event and rolled up per event.

Event spend & ROI (Marketing Events)

SYSOI's ROI tab (Readiness → ROI) compares your event spend against the revenue attributed to the event. You can keep that spend number in sync with a HubSpot Marketing Event, two ways — and SYSOI reconciles them last-write-wins (whichever side you changed most recently wins).

One-time setup

  1. Re-Connect for the scopes. Marketing-event sync needs

crm.objects.marketing_events.read and .write. If you connected before these existed, click Connect on the HubSpot card again and re-authorize — HubSpot only grants scopes at authorization time.

  1. Create the spend property in HubSpot. On the Marketing Events object, add

a custom property named exactly event_spend (a number / currency field). SYSOI writes the spend value to this property; HubSpot reads it back. You only create it once — custom properties are shared across every marketing event, and it shows on each event's About card.

Find the marketing event's record ID

To link a SYSOI event to a marketing event you already have in HubSpot, SYSOI needs that event's record ID:

  1. In HubSpot, open the marketing event record (Marketing → Events, then open

the event).

  1. The record ID is the long number in the page's URL — the digits after the

object in the address bar. (You can also use the record's Actions menu → Copy record ID where available.)

  1. Copy that number.

Link and sync in SYSOI

  1. Go to Readiness → ROI for the event.
  2. In the HubSpot marketing event field, paste the record ID and click

Save link.

  1. Set a spend (here on the ROI tab, or in Admin → event setup, or directly on

the HubSpot event), then click Sync with HubSpot. SYSOI tells you what it did — pushed your SYSOI value to HubSpot, pulled HubSpot's value into SYSOI, or already in sync.

No HubSpot event yet? Leave the link empty and click Push to HubSpot (mirror) instead — SYSOI creates its own marketing event for this SYSOI event and writes the spend there.

Verify

Push one hot-tier contact, then open that contact in HubSpot — you should see the SYSOI Readiness Score / Tier / Summary properties populated.

For spend: after a Sync, open the linked marketing event in HubSpot — the Event Spend field on the About card should match SYSOI's ROI tab.

Troubleshooting

  • Properties didn't appear: the connection is missing crm.schemas.contacts.write. Re-Connect and grant it.
  • Deals aren't attributing: confirm deal scopes are granted and that the deal's contacts exist in SYSOI (a contact SYSOI has never seen is skipped — it's event-anchored, not a CRM seed).
  • Spend sync fails or does nothing: confirm you re-Connected for the crm.objects.marketing_events.read / .write scopes, that the event_spend custom property exists on the Marketing Events object, and that you pasted the correct record ID for the marketing event. The Sync button surfaces HubSpot's exact response if something's off.