Help

How to connect Klaviyo to Nudgesmart

Sync emails captured by Nudgesmart popups straight into your Klaviyo list — with consent flags, retry on failure, and a one-click test contact.

Connect Klaviyo once, and every popup signup flows into your list automatically — with the right consent flag, your campaign source attached, and a one-click test you can run before you publish.

TL;DR

Open Email Marketing Integration in your Nudgesmart admin, paste your Klaviyo private API key (with Profiles, Lists, and Subscriptions set to Read/Write Access), enter the Email List ID you want signups to land in, and click Save. Then click Send Test Contact with your own email address to verify the round-trip works before you publish a campaign. The whole setup takes about three minutes — and once it's connected, every email captured by every Nudgesmart popup, spin wheel, or survey syncs to that list automatically. No code, no theme edits, no third-party connector. Klaviyo integration is included on every paid plan; free-plan stores see an upgrade banner instead of the configuration form.

Step 1 · Get your Klaviyo private API key

Sign into Klaviyo and navigate to Account → Settings → API Keys. Click Create Private API Key (not a public key — those won't work for server-side syncing).

When the scope picker appears, set exactly three scopes to Read/Write Access:

  • Profiles — Read/Write Access
  • Lists — Read/Write Access
  • Subscriptions — Read/Write Access

All other scopes can remain at No Access. The narrower the scope, the safer your key — Nudgesmart only needs these three to upsert profiles, look up your list, and subscribe new contacts.

Copy the generated key immediately. Klaviyo only shows it once, so paste it into a password manager before you close the tab. Treat it like a database password; it grants programmatic access to your subscriber data.

Step 2 · Add it to Nudgesmart

In the Nudgesmart admin, open the Email Marketing Integration page from the sidebar. The page header reads "Email Marketing Integration" and the configuration card is titled Manage Email Provider Integration.

Pick Klaviyo from the Select Your Email Provider dropdown. (Klaviyo is the only active provider during initial launch — Mailchimp, ActiveCampaign, SendGrid, and Elastic Email are on the integration roadmap.)

Fill in the configuration fields:

  • Configuration Name — a friendly label like "My Klaviyo Integration" so you can identify it later.
  • API Key — paste the private key you generated in Step 1. The field is masked like a password.
  • Enable Integration — leave checked. When unchecked, no data syncs to Klaviyo (useful as a temporary kill switch during testing).

Click Save. You'll see a "Integration saved successfully" toast confirming the configuration is stored. Your API key is encrypted server-side and is never exposed to the storefront, the visitor's browser, or your theme code — popup captures travel from the storefront to the Nudgesmart backend, and only the backend talks to Klaviyo.

Step 3 · Pick a list

In Klaviyo, every subscriber belongs to one or more Lists. To find the right list ID, open Klaviyo → Lists & Segments, click the list you want Nudgesmart to write to, and copy the ID from the URL (it looks like XaBcDe).

Paste that ID into the Email List ID field in Nudgesmart.

A note on opt-in mode: Klaviyo lists support either single opt-in (subscribers are added immediately) or double opt-in (subscribers receive a confirmation email and must click before they appear in the list). For popup signups, single opt-in usually converts better — visitors who completed your popup already self-identified as interested. If your list is set to double opt-in, that's fine, but expect a 30-50% drop in confirmed subscribers compared to single opt-in. Configure this on the Klaviyo list itself, not in Nudgesmart.

If you also want to capture phone numbers from the same popups, check Enable SMS/Phone Sync, then enter your SMS List ID. The SMS list can be the same as your email list, or a separate one. Phone numbers are validated against E.164 format before syncing — invalid numbers are dropped silently rather than rejected, so your popup conversion rate isn't dragged down by formatting errors.

Nudgesmart syncs three things automatically, no manual mapping required:

  • Email address — from the popup input field.
  • Phone number — when SMS sync is enabled and the visitor provides one.
  • Email + SMS consent flags — set on the Klaviyo profile so your campaigns can target consented contacts.

If you leave Sync Profile Properties checked (the default), Nudgesmart also attaches campaign-context properties to every profile: which campaign captured the email, the capture date, and the source type (email_capture, spin_wheel, pick_a_present, scratch_card, or survey). You can use these properties to segment subscribers in Klaviyo — for example, "everyone who signed up via the spin wheel in the last 30 days" — and to attribute revenue back to specific Nudgesmart campaigns.

If you'd rather keep your Klaviyo profiles minimal, uncheck Sync Profile Properties. Only the email and phone (and consent flags) will sync, with no extra properties attached.

Step 5 · Test the connection

Once you've saved your configuration, a Test Your Integration section appears below the form. Enter your own email address in the Test Email field, optionally a test phone number if SMS sync is enabled, and click Send Test Contact.

Behind the scenes, Nudgesmart verifies your API key, confirms your list IDs actually exist in your Klaviyo account, and creates a real profile subscribed to your configured list. If anything is wrong — invalid key, missing list, expired permissions — you'll see the specific error in a toast, not a generic "something went wrong."

If your list is set to double opt-in and you want the test contact subscribed immediately (without sending a confirmation email to yourself), check Bypass double opt-in before clicking the button. The bypass only applies to the test — real popup captures always follow your list's opt-in setting.

When the test succeeds, you'll see a "Test contact synced to Klaviyo!" message and the contact will appear in your Klaviyo dashboard within a few seconds. That's your sign that any visitor who completes a Nudgesmart popup will land in the same list, with the same consent flags, automatically.

Common pitfalls

  • Public key instead of private key. Klaviyo issues two key types — public site IDs (used for client-side tracking) and private API keys (used for server-side syncing). Nudgesmart needs the private one. If your test fails with "Connection failed" and you're sure the scopes are right, double-check you copied the private key.
  • List ID contains the wrong characters. When you copy from the Klaviyo URL, grab the alphanumeric segment after /list/ — not the full URL, not the list name. The test contact step verifies the list ID exists; if it doesn't, you'll see "Email List ID not found in your Klaviyo account."
  • All popup captures land in one Klaviyo list. Nudgesmart syncs every popup, spin wheel, and survey on your store to the same shop-level Klaviyo list (the one you configured here). Per-campaign list selection is on the integration roadmap. For now, segment subscribers in Klaviyo using the synced profile properties (source, campaignId) instead.
  • Test works, real popup doesn't. Check that Enable Integration is still on. The integration setting can be toggled off independently of the API key, which is useful for staging environments but easy to forget about in production.

FAQ

No. Email addresses sync to Klaviyo only after a visitor submits a Nudgesmart popup form. There's no client-side Klaviyo tracking script — the integration is server-side only. Visitors who close the popup without submitting are never sent to Klaviyo. Review our privacy policy for full details on data handling.

What happens if Klaviyo is temporarily down?

Nudgesmart automatically retries on transient errors (HTTP 429 rate limits and 503 service-unavailable responses). The visitor's email is captured into Nudgesmart's database before the sync attempt, so even if Klaviyo is fully unreachable, the email isn't lost — it's stored against the campaign capture event. If your Shopify store has Customer accounts enabled, the email also falls back to a Shopify customer record so it's never orphaned.

Can I sync historical popup signups to Klaviyo retroactively?

Not from the Nudgesmart admin directly — historical bulk imports are best done with Klaviyo's CSV import tool. You can export historical Nudgesmart subscribers (we'll cover this in analytics/export-email-subscribers-to-csv) and upload the CSV into Klaviyo.

Can I have separate Klaviyo lists for different campaigns?

Not yet — all popups currently sync to a single shop-level list. Per-campaign list selection is on the integration roadmap. For now, use the auto-attached profile properties (source, campaignId, capturedAt) to build Klaviyo segments that mimic per-campaign lists. You can find the full integration overview at nudgesmart.com/integrations/klaviyo.

Where do I create the API key in Klaviyo?

Klaviyo's private API keys documentation walks through the creation flow with screenshots. The path is Account → Settings → API Keys → Create Private API Key.