Klaviyo Integration
Automatically sync unsubscribes, bounces, and spam complaints from Klaviyo to your suppression lists.
On this page
Overview
The Klaviyo integration uses webhooks to automatically add email addresses to your suppression lists when profiles unsubscribe, bounce, or mark emails as spam.
Real-Time Sync
Events processed within seconds
Secure Webhooks
Signature verification
E-commerce Ready
Built for online retailers
Prerequisites
- A Klaviyo account with webhook access
- Owner or Admin role in Klaviyo
- A List Armor campaign with at least one suppression list
Setup in List Armor
- Navigate to your campaign and click ESP Integrations
- Click Add Integration and select Klaviyo
- Choose the Target Suppression List where opt-outs will be added
-
Configure which events to auto-suppress:
- Hard bounces — recommended
- Spam complaints — recommended
- Unsubscribes — recommended
- Save the integration and copy the Webhook URL
Configure Klaviyo
- Log in to your Klaviyo account
- Navigate to Account → Settings → Webhooks
- Click Create Webhook
-
Configure the webhook:
- Name: List Armor Suppression Sync
- URL: Paste your List Armor webhook URL
-
Select the topics to subscribe:
- profile.subscribed.email — Optional
- profile.unsubscribed.email — Recommended
- email.bounced — Recommended
- email.marked_as_spam — Recommended
- Copy the Signing Secret and add it to your List Armor integration
- Click Create Webhook
Important: Copy the signing secret immediately — Klaviyo only shows it once when the webhook is created.
Supported Events
| Klaviyo Event | List Armor Action | Default |
|---|---|---|
email.bounced (hard)
|
Add to suppression list | Enabled |
email.bounced (soft)
|
Logged only (not suppressed) | N/A |
email.marked_as_spam
|
Add to suppression list | Enabled |
profile.unsubscribed.email
|
Add to suppression list | Enabled |
profile.subscribed.email
|
Logged only (not suppressed) | N/A |
Testing
After configuring the webhook, verify it's working:
- In Klaviyo, navigate to your webhook settings
- Use the Send Test Request button to send sample events
- Check your List Armor integration for the Last webhook received timestamp
- Alternatively, unsubscribe a test profile and verify it appears in your suppression list
Troubleshooting
- Verify the webhook is active in Klaviyo
- Check that the correct topics are subscribed
- Ensure the webhook URL is correct
- Check Klaviyo's webhook delivery logs for errors
- Verify the signing secret matches exactly
- If you lost the secret, delete the webhook and create a new one
- Check for extra whitespace when copying
- Klaviyo only shows the signing secret once at creation
- Delete the webhook and create a new one
- Copy the new signing secret immediately
- Update the secret in your List Armor integration