Contacts and consent
Build your SmartyTap audience from Shopify, CSV import, lists and tags, and see how consent decides who gets your marketing emails and texts.
Last updated: 2026-10-19
A contact is anyone you can message: a Shopify customer, a lead from a sign-up form or someone you imported. Each contact has an email, a phone number or both, a stage (visitor, lead, customer, churned or reactivated), tags, and a separate consent status for email and for texts.
Where contacts live
- Audience > Contacts: everyone you can reach, 25 to a page, with name, phone, email, stage and tags. Search by name, phone or email.
- Audience > Lists: static, imported or rule-built lists for campaigns. Click Create list.
- Audience > Tags: labels you add to contacts. Click Create tag.
- Audience > Segments: audiences built from conditions, including orders, subscriptions and loyalty.
- Audience > Imports, Unsubscribed and Blocked: your past imports and the people you can't message.
Import contacts from a CSV
Get the template
In the SmartyTap setup checklist, open Import contacts and click Download template (smartytap-contacts-template.csv).
Fill it in
One contact per row. Every row needs an email or a phone number. Accepted columns: first_name, last_name, email, phone, company, tags and country_code. Common names like email_address, mobile or phone_number work too. Separate several tags with a semicolon, comma or |.
Upload
Under Upload contacts by CSV, drop the file on Drop a CSV here or choose a file. SmartyTap checks every row first and flags Missing email or phone and Duplicate in file.
Check the result
Your contacts appear in Audience > Contacts. To add just one person, use Add first contact in the same step.
first_name,last_name,email,phone,company,tags,country_code
Ana,Diaz,ana@example.com,+15125550142,,vip;newsletter,US
Sam,Lee,sam@example.com,,,newsletter,USOnly bring in people who agreed to hear from you, and only for the channel they agreed to. A list of emails someone gave you for a receipt isn't consent to marketing, and texting people without written consent can break US law. Never buy or rent a list.
How consent decides who gets a message
Before every marketing email or text, SmartyTap checks the contact's consent for that channel:
- Texts go only to contacts opted in to SMS, from Shopify, a sign-up form or a START or YES reply.
- Marketing emails go only to contacts with email consent on record, and never to anyone unsubscribed, bounced or who complained.
- Transactional messages, like order updates, don't need marketing consent.
When you pick an audience, the recipient estimate shows who's in and who's left out, under Included, Excluded, Suppressed, Missing consent and Missing destination (no email or phone for that channel). The check runs again as each message sends, so an opt-out a minute before still counts.
Export your subscribers with their consent, keep your opt-out list honored, and bring your number with you. See Bring your number and switching from Klaviyo.
Troubleshooting and FAQ
A contact I imported isn't in the campaign
Check the recipient estimate. They're most likely under Missing consent for that channel, or Missing destination because the row had no phone or email.
What about duplicates?
Rows that repeat an email or phone in the same file are flagged before upload. Shopify customers are matched to their contact, so the same person doesn't appear twice.
How should I format phone numbers?
Use the international format with the country code, like +15125550142, or fill in country_code for each row.
Related
Related Articles
Need more help? Contact support