How to create a Custom Campaigns List in Instant Using Shopify Tags
Sometimes you may want to send a campaign to a very specific group of customers that were manually curated. This list won't be based on purchase behaviour or location, but based on a list you've curated yourself. Common examples include:
- Early access or VIP drops — customers who signed up for exclusive access to a new product or collection
- Birthday sale invites — a handpicked group opted into a birthday promotion
- Black Friday waitlists — customers who registered interest before a sale goes live
- Loyalty or rewards members — a tiered group you manage separately from your general subscriber base
- Event or conference attendees — people who signed up or attended an in-person event and opted in to hear from you
- Migration from another platform — an existing list in Klaviyo or another tool that you want to bring across to Instant
Instant Segments are built on dynamic queries, not static contact lists. This means you can't directly import a list of emails into a Segment. Instead, the way to target a specific group is to apply a Shopify tag to those customers, then build an Instant Segment that filters on that tag. Because Instant reads directly from Shopify, any customer with that tag will automatically be included in your Segment.
This article covers:
- How to bulk-apply a Shopify tag to an existing list (e.g. from Klaviyo)
- How to build an Instant Segment from a Shopify tag
- How to set up future list collection so it feeds directly into Instant
Option 1: When you already have a list (e.g. in Klaviyo)
If your customers are already tagged in Klaviyo or stored as a static list elsewhere, you can migrate them to a Shopify tag using a CSV import.
Step 1: Export your list from Klaviyo
- In Klaviyo, go to Lists & Segments
- Open the relevant list or segment
- Click Export → download as CSV
- You only need the Email column
Step 2: Prepare your Shopify import CSV
Shopify matches customer imports by email address, so you can update existing customers without overwriting their data. Create a CSV with the following columns:
Email, Tags
customer@example.com, vip-sale
another@example.com, vip-sale
Tip: Choose a specific tag name (e.g. vip-bday-sale) so it doesn't conflict with other tags your store uses.
Step 3: Import into Shopify
- In your Shopify Admin, go to Customers
- Click Import (top right)
- Upload your CSV and confirm
- Shopify will match records by email and apply the tag to existing customers
Note: If a customer exists in your Klaviyo list but not yet in Shopify, they'll be created as a new customer on import.
Step 4: Build your Instant Segment
- In Instant, go to Segments → Create Segment
- Add a filter: Shopify Tag → equals →
vip-bday-sale - Save and name your Segment
You can now use this Segment as the audience for any Instant campaign.
Option 2: Building your list in Shopify from the start (Recommended)
If you're setting up a new campaign list (e.g. a VIP waitlist, early access sign-up, or event registration) the best approach is to capture it directly in Shopify rather than a third-party tool.
Here's why this works well: any sign-up form, pop-up, or landing page you use to collect customers needs to be hosted somewhere, and that's almost always your Shopify store. Since Shopify is already holding that data, it makes sense to have the tag applied there at the point of sign-up. Instant reads from Shopify directly, so once the tag is in place, your Segment is live and automatically up to date. There won't be any exports, imports, and no manual list management.
How to set it up
- Create your sign-up form or landing page in Shopify using a form app or page builder that supports customer tagging on submission (e.g. Growave, a custom Shopify page, or your theme's built-in form tools)
- Configure it to apply a Shopify tag to every customer who submits — for example,
vip-bday-saleorblack-friday-waitlist - Build your Instant Segment with the filter: Shopify Tag = your-tag
As customers sign up, they're tagged in Shopify and immediately available in your Instant Segment. No extra steps needed.
Tip: If you're transitioning from Klaviyo and you've been using Klaviyo's list-specific sign-up forms for this, the Shopify form approach is the direct equivalent. You're just shifting where the sign-up lives so that Instant can read it natively.
FAQ
Can I just import a contact list directly into Instant? Not currently. Instant Segments are dynamic queries, so all audiences are built from real-time filters rather than static lists.
Can I use an Instant pop-up to collect a custom list (like a VIP sign-up)? Instant pop-ups are designed for new subscriber welcome flows — they aren't configurable for custom list sign-ups the way Klaviyo's list-specific forms are. For custom list collection, the Shopify-native approach (a form or app that applies a tag on submission) is the right substitute.
Can Klaviyo bulk-apply Shopify tags to contacts? Klaviyo manages its own tags independently of Shopify. To get contacts from Klaviyo into a Shopify tag, a CSV export/import (as described above) is the most reliable method.
What if some customers on my Klaviyo list don't have Shopify accounts? If a customer email from your Klaviyo export doesn't exist in Shopify, Shopify will create a new customer record for them on import. They'll then be eligible for your Instant Segment once they're identifiable (e.g. they click through an email or sign in).