Sync registrations and check-ins to HubSpot contacts and Marketing Events.
Sync your event registrations and check-ins straight into HubSpot. Every confirmed attendee shows up as a HubSpot Contact and is attached to a Marketing Event with their registered/attended status, so your sales and marketing team can see exactly which Eventship events each person has registered for and attended without leaving HubSpot.
When someone registers for one of your events, Eventship writes the following to your HubSpot portal:
Registered state. The Marketing Event is created on demand the first time HubSpot needs it, using your event's title, dates, URL, description, and cancelled flag.When the attendee checks in at your event:
Attended.This means anyone on your sales or marketing team can open a contact in HubSpot and see exactly which events that person has registered for and attended — directly inside HubSpot, no context-switching needed.
HubSpot's Marketing Events API is available on Marketing Hub Professional and Enterprise subscriptions. You'll also need permission to install apps and authorize OAuth in your HubSpot account.
| HubSpot subscription | Works with Eventship? |
|---|---|
| Marketing Hub Enterprise | Yes |
| Marketing Hub Professional | Yes |
| Marketing Hub Starter, Free CRM | No — Marketing Events isn't included |
If you're on Starter or the free CRM, the integration won't work — you'd need to upgrade to Marketing Hub Professional before connecting. (Contacts sync would still work technically, but Marketing Event state changes — the part that makes attendance reportable — require the higher tier.)
Connecting HubSpot is a single step — there's no per-org install, just an OAuth handshake.
The connection is at the host level, not per-event. Once connected, every future registration and check-in for that host's events syncs automatically.
If you manage multiple hosts on Eventship, each one connects separately — they can point to the same HubSpot portal or to different portals.
crm.objects.contacts.read and crm.objects.contacts.write — read existing contacts and upsert new onescrm.objects.marketing_events.read and crm.objects.marketing_events.write — create the Marketing Event for each Eventship event and write subscriber state changesoauth — required by HubSpot to issue and refresh the connection's access tokenYou don't need to set up Marketing Events in HubSpot ahead of time. The first time Eventship sends a registration for one of your events, HubSpot looks up the event by your Eventship event id. If it hasn't seen that event before, HubSpot calls back to Eventship to fetch the event's metadata (title, dates, URL, description, cancelled status) and creates the Marketing Event automatically. From then on, all registrations and check-ins for that event reuse the same Marketing Event.
Open your event in the dashboard, click Manage, click Sync, then click HubSpot. The HubSpot sub-drawer shows live sync stats for that event:
If a sync fails — for example, because of a HubSpot validation error or a transient outage — you can click Retry on the failed row to re-queue it. Most failures are transient and clear up on their own; the retry button is there for the cases that don't.
If you connect HubSpot for the first time on a host that already has events with registrations, Eventship will backfill those existing attendees in the background — you don't need to do anything.
Disconnecting stops all future syncing for that host's events. To disconnect:
Eventship revokes its refresh token at HubSpot and deletes the stored credentials. Records that were already synced remain in HubSpot — disconnecting only stops future writes. Reconnecting later picks up where you left off.
You can also revoke access from inside HubSpot under Settings → Integrations → Connected Apps by removing Eventship. The next time we try to sync, the call will fail and the integration will show as disconnected on Eventship.
"HubSpot integration is not configured on this environment." HubSpot isn't set up on your Eventship environment yet. Email [email protected].
The Connect button does nothing / OAuth fails immediately. Make sure pop-ups are allowed for eventship.com and you're signed into the HubSpot portal you want to connect in another tab.
Registrations show as failed with "MISSING_SCOPES" or "Authentication credentials provided do not have access". The connecting user didn't grant one of the required scopes, or scopes were revoked in HubSpot afterwards. Disconnect the HubSpot card on Eventship, then Connect again and approve all requested scopes.
Registrations show as failed with "RATE_LIMIT" or HTTP 429. Eventship will retry automatically — no action needed. HubSpot rate-limits at the portal level; large bulk imports may take a few minutes to drain.
Sync stopped working out of nowhere. The most common cause is that the HubSpot user who connected the integration was deactivated, or the OAuth grant was revoked from HubSpot's Connected Apps page. Reconnect with an active user.
A contact I expected to be matched got created as a new one. HubSpot's contact match is on the email address only. If the attendee registered with a different email than the one already in your HubSpot portal, you'll get a new contact rather than an update to the existing one. HubSpot's own contact deduplication rules apply.
The Marketing Event hasn't appeared in HubSpot yet. It's created on demand when the first sync runs. If you've never had a registration come through, the Marketing Event won't exist yet. Once the first registration syncs, you'll find it in HubSpot under Marketing → Email → Marketing Events (or the equivalent path for your Marketing Hub tier).
Email [email protected]. We can help you map your event flow into your HubSpot setup and troubleshoot any sync issues.
Let us know if this article answered your question.