Klaviyo

Sync registrations, check-ins, and newsletter signups to a Klaviyo list with segmentable metrics.

Sync your event registrations, check-ins, and newsletter signups into Klaviyo. Attendees land in the Klaviyo list you pick, and their activity is recorded as metrics you can segment on and trigger flows from, without leaving Klaviyo.

What gets synced

When someone registers for one of your events:

  • Profile: we upsert the person in Klaviyo, matched by email. If a profile with that email already exists we update their first/last name; otherwise we create one.
  • List subscription: the profile is subscribed to the list you've picked, with email marketing consent.
  • Metric event: Registered for Event is recorded against the profile, carrying the event name, slug, and id as properties.

When the attendee checks in at your event:

  • Metric event: Attended Event is recorded, with the same properties.

Because both are metrics rather than tags, you can build a segment for "registered for X and has not attended" to surface no-shows, and you can start a flow the moment either fires.

Newsletter signups

When someone joins your update list without registering for an event, that flows here too: the profile is created, subscribed to your list, and a Subscribed to Updates metric is recorded with the host name and slug. That gives you one place to tell "joined the mailing list" apart from "registered for an event", even though both end up on the same list.

This covers every way a person can join the list:

  • The newsletter signup widget you embed on your own website
  • The email capture on your Eventship site, including the call-to-action block on a page you built in the website builder. It syncs whether or not the person is signed in to Eventship.
  • Following your host page
  • Creating an account on your own white-label site
  • Ticking the "join the community" box on one of your forms, when that form offers it
  • Starting a guest membership checkout, which puts the buyer on your list as it resolves their account
  • Turning email updates back on after previously switching them off

Someone who already turns up in your list and already has updates on is not pushed again, so repeat sign-ups don't re-send an unchanged profile.

Consent and double opt-in

Your list's own opt-in setting wins. If the list is configured for double opt-in, Klaviyo sends its own confirmation email and the person is not subscribed until they click it. Eventship does not override that, and does not send a competing confirmation of its own for the Klaviyo side.

Before you connect

The Klaviyo integration is part of Eventship Pro. You'll need an active Pro subscription on the host that's connecting.

You'll also need:

  • A Klaviyo account
  • At least one list already created in Klaviyo (Eventship doesn't create lists for you; it subscribes people to one you've already set up)
  • Permission on the Klaviyo account to authorize third-party apps

Connect Klaviyo

  1. Go to your host dashboard → Integrations tab → click Connect on the Klaviyo card
  2. You'll be redirected to Klaviyo to log in (if you aren't already) and approve the connection
  3. After you approve, you'll be redirected back to Eventship and the card will show Connected
  4. Pick which list to sync to. If your account has exactly one list, Eventship picks it automatically. If you have several, Eventship shows a dropdown.
  5. The card now shows List: {your list name} with a Change link if you ever want to switch

The connection, and the chosen list, are at the host level, not per-event. Once set, every event that host runs syncs into the same list. Use the metric properties (event name, slug, id) to slice by event from inside Klaviyo.

If you manage multiple Eventship hosts, each one connects separately and can point at the same Klaviyo list or at different lists (or different Klaviyo accounts entirely).

Permissions

Klaviyo's OAuth grants Eventship a deliberately narrow scope set:

  • accounts:read: read your account id and name, so we can tell if you later reconnect a different Klaviyo account
  • lists:read: list your lists (so we can show the picker) and validate the one you picked
  • lists:write: add people to the list you picked. Klaviyo groups list membership under this scope, so it's needed to subscribe anyone. Eventship never creates, renames, or deletes a list.
  • profiles:write: create or update a profile for an attendee or subscriber
  • subscriptions:write: subscribe that profile to your chosen list
  • events:write: record the Registered / Attended / Subscribed metrics

Eventship doesn't touch campaigns, flows, templates, or segments, and never creates or deletes a list. The only list change it makes is adding people to the one you picked.

Change the list

Open your host dashboard → Integrations tab → click Change next to the list name on the Klaviyo card. Pick a different list and click Save. From that point on, new registrations, check-ins, and signups flow into the new list. Profiles already subscribed to the old list stay there. Eventship doesn't unsubscribe them.

Forward-only sync

The Klaviyo integration is forward-only: from the moment you pick a list, every new registration, check-in, and newsletter signup syncs. Attendees from events that already happened are not automatically backfilled, and neither are followers who joined your list before you connected.

If you want past attendees in Klaviyo, export them from the Eventship attendee list and import the CSV into Klaviyo directly. There's no follower export yet, so email [email protected] if you need your existing list moved across.

Monitor sync status

Open your event in the dashboard, click Manage, click Sync, then click Klaviyo. The sub-drawer shows live sync stats for that event: how many registrations have synced, are pending, or failed (with the error Klaviyo returned), and how many have been marked attended. Click Retry on a failed row to re-queue it.

Newsletter signups are not per-event, so they don't appear in that drawer. If a signup fails to reach Klaviyo repeatedly, the error surfaces on the Klaviyo card itself under Last sync error.

Disconnect Klaviyo

Disconnecting stops all future syncing for that host's events. To disconnect:

  1. Go to the Integrations tab in your host dashboard
  2. Click Disconnect on the Klaviyo card
  3. Confirm

Eventship deletes the stored credentials. Profiles and metrics already in Klaviyo stay where they are. Disconnecting only stops future writes. Reconnecting later picks up from new activity going forward.

Eventship also revokes its access token with Klaviyo as part of disconnecting, so the grant stops being valid on Klaviyo's side straight away. You don't need to remove the app manually.

Security & data flow

  • Connections use OAuth 2.0 with PKCE, so Eventship never sees or stores your Klaviyo password
  • Access and refresh tokens are encrypted at rest and scoped to a single Klaviyo account and a single Eventship host, so there's no cross-host or cross-account visibility
  • All API calls go through Eventship's backend, never directly from the browser, so credentials are never exposed to attendees or to other hosts
  • Each sync is queued asynchronously, so a slow Klaviyo response can't block someone from registering for your event
  • Every metric event carries an idempotency key, so a retry records the activity once rather than double-counting it

Troubleshooting

The Connect button does nothing / OAuth fails immediately. Make sure pop-ups are allowed for eventship.com and you're signed into the Klaviyo account you want to connect in another tab.

"Pick a list to start syncing" stays up after connecting. Eventship couldn't auto-pick because your account has more than one list. Open the dropdown, choose the right one, click Save.

"No lists found". Klaviyo accounts need at least one list before Eventship can sync to it. Create a list in Klaviyo, then click Pick list on the Eventship card.

Someone registered but never appeared in the list. If the list uses double opt-in, they're waiting on Klaviyo's confirmation email and won't show as subscribed until they click it. Check the list's opt-in setting in Klaviyo.

I tested my signup form and my own address never arrived. Testing with an address that is already on your list is the most common cause: an existing subscriber whose record didn't change isn't pushed again, and as the host you're already on your own list. Test with an address you've never used with this host. Check as well that you've picked a list on the Klaviyo card, since syncing doesn't start until you do, and that the person hasn't switched email updates off.

Syncs fail with "connection lost access" / a reconnect prompt. Your Klaviyo refresh token expired or the Eventship app was removed from your Klaviyo account. Click Reconnect on the card to re-authorize. That keeps the list you picked; Disconnect would clear it and revoke the grant, so you would have to set the list up again.

Syncs fail with "missing a permission". The connection was authorized before a scope was added, or a scope was declined. Reconnect to grant the current set.

Syncs fail with rate-limit errors. Eventship retries automatically, no action needed. Klaviyo's limits are per-endpoint; large bursts may take a few minutes to drain.

Registrations aren't syncing at all. Check that the registration is in Confirmed status. Pending and unpaid registrations don't sync.

I don't see Klaviyo in my Integrations tab. The Klaviyo integration is Pro-only. Upgrade to Eventship Pro under Account → Plan to unlock it.

Questions?

Email [email protected]. We can help you map your event flow into your Klaviyo setup and troubleshoot any sync issues.

Was this article helpful?

Let us know if this article answered your question.