How to connect Subi to Klaviyo for email marketing, SMS automation, and subscription segmentation
This guide explains how to integrate Subi with Klaviyo so you can:
Sync subscriber data
Trigger automated flows
Build subscription-based segments
Send targeted Email and SMS campaigns
Use subscription events inside Klaviyo
🔐 Required API Permission (Important)
To sync subscribers from Subi to Klaviyo, your Private API Key must include the profiles:write permission.
Without this permission, Subi cannot create or update contacts in Klaviyo.
Why profiles:write Is Required
Subi uses Klaviyo’s API to:
Create customer profiles
Update subscriber data
Trigger subscription-based flows
Sync subscription tags and properties
If your API key does NOT include profiles:write:
New subscribers will not appear in Klaviyo
Automated flows will not trigger
Segments will remain empty
The integration may show as connected but not sync data
You may see this error:
Your API key is missing required scopes: profiles:write
How to Create the Correct Klaviyo API Key
Go to:
Klaviyo → Account → Settings → API Keys
You have two options:
Option 1: Full Access Private API Key (Simplest)
Click Create Private API Key
Select Full Access
Name it (example: “Subi Integration”)
Click Create
Copy the key
Reconnect Klaviyo inside Subi using this key
Option 2: Custom API Key (Recommended for Limited Access)
Click Create Private API Key
Select Custom Key
Under Profiles, set permission to Full Access
Save the key
Copy it
Reconnect it inside Subi
⚠️ The key MUST include profiles:write.
How Klaviyo Works (Campaigns vs. Flows)
Klaviyo has two main messaging types:
Campaigns
Sent manually
One-time messages
Sent to a predefined list or segment
Examples:
Monthly newsletter
Flash sale SMS
Product announcement
Flows
Automated
Triggered by behavior
Run every time a condition is met
Examples:
Subscription welcome email
Renewal reminder
Cancellation win-back flow
How Subi Sends Subscription Data to Klaviyo
There are two supported methods.
Method 1: Using Subi Tag Management (Recommended)
This is the easiest and most reliable method.
Go to:
Subi → Settings → Tag Management
Subi automatically applies Shopify tags to customers and subscription orders.
Available Customer Tags
Subi SubscriberHas Active SubscriptionHas Paused SubscriptionHas Canceled Subscription
Available Order Tags
Subi SubscriptionFirst Subscription OrderRecurring Order #1Recurring Order #2(and so on)
⚠️ Important: Tags only apply to NEW customers or orders created after enabling Tag Management. Existing records will not update automatically.
How to Create a Subscription Flow in Klaviyo (Using Tags)
Example: Send an email after a subscription order.
Step 1: Create Flow
Go to Flows
Click Create Flow
Select trigger: Placed Order
Step 2: Add Delay (Important)
Add a Time Delay step before filtering.
This gives Subi time to apply Shopify tags.
Without a delay, the flow may fail.
Step 3: Add Trigger Filter
Set:
Shopify Tags → contains → Subi Subscriber
Or use:
Has an active subscription
First Subscription Order
Subi Subscription
Step 4: Add Email or SMS
Add message
Customize content
Turn the flow live
Test with a real subscription
Method 2: Send Subscription Data as a Custom Event (Advanced)
This method uses Shopify Flow to send subscription events directly to Klaviyo.
Use this method if you prefer event-based automation instead of tag-based filtering.
Setup Instructions
Install Klaviyo and connect it to Shopify
Download the Subi Shopify Flow template
Import it into Shopify Flow
Open the workflow
Click Track an Event
Enter your Klaviyo Public API Key
Find it at:
Klaviyo → Account → Settings → API KeysConfirm event name
(Default:subscription contract is created)Turn the workflow ON
Create a test subscription
You can now use this event as a flow trigger in Klaviyo.
How to Create Subscriber Segments in Klaviyo
Subi tags allow you to create powerful subscription-based segments.
Step 1: Create Segment
Go to Lists & Segments
Click Create Segment
Use this condition:
Properties about someone → Shopify tags → contains → [Subi Tag]
Click Create Segment
Segment Examples
All Subscribers
Contains → Subi Subscriber
Active Subscribers Only
Contains → Has Active Subscription
Active But Not Paused
Contains → Has Active Subscription AND Does not contain → Has Paused Subscription
Paused Subscribers
Contains → Has Paused Subscription
Canceled Subscribers
Contains → Has Canceled Subscription
How to Send a Campaign to Subscribers
Go to Campaigns
Choose your Subi-based segment
Create Email or SMS
Schedule or send immediately
Best Practices for Reliable Sync
To avoid integration issues:
✅ Always confirm your API key includes
profiles:write✅ Add a time delay before filtering by Shopify tags in flows
✅ Test with a real subscription before going live
✅ Separate segments for Active, Paused, and Canceled subscribers
✅ Combine subscription tags with purchase behavior for advanced targeting
✅ Reconnect the integration after updating API keys
Troubleshooting Klaviyo x Subi Integration
Problem: Subscribers Are Not Appearing in Klaviyo
Check:
Does your Private API Key include
profiles:write?Did you reconnect Subi after creating the new key?
Are you testing with a new subscription (not old data)?
Problem: Flow Is Not Triggering
Check:
Did you add a time delay before filtering tags?
Is the correct tag being applied?
Is the flow turned ON?
Did you test using a real subscription order?
Problem: API Scope Error
Error message:
Your API key is missing required scopes: profiles:write
Solution:
Create a new Private API Key
Ensure Profiles permission is set to Full Access
Reconnect Subi using the new key
When to Contact Support
If you have:
Confirmed
profiles:writeis enabledReconnected the API key
Tested with a new subscription
Verified tags are applied
And the issue continues,
Contact Subi Support and provide:
Screenshot of API key permissions
Screenshot of Klaviyo error (if shown)
Example subscriber email used for testing
We’ll help you resolve it quickly.
