Skip to main content
Remark’s Klaviyo integration helps you turn shopper conversations into better-targeted email and SMS marketing. Once connected, Remark can send rich shopper context into Klaviyo, and Klaviyo can send email engagement signals back into Remark.

Shopify Custom Pixel

Make sure your Shopify permissions and pixel setup are in place before going live.

What the integration does

At a high level, the integration has two jobs:
  1. It sends shopper context from Remark into Klaviyo so you can personalize messaging based on real conversations, recommendations, and buying signals.
  2. It brings Klaviyo email engagement data back into Remark so your team can see whether a shopper opened, clicked, bounced, or unsubscribed.
That means Klaviyo gets richer profile data, and Remark gets better visibility into how marketing emails are performing for each shopper.

How Klaviyo fits into your stack

If you use Shopify, the cleanest setup is:
  • Shopify syncs your catalog into Klaviyo
  • Remark syncs shopper context, conversation data, and recommendation data into Klaviyo
  • Remark uses product external_id values so recommended products can line up with your Klaviyo catalog records
Remark does not build or manage your Klaviyo product catalog. If you want product-aware emails in Klaviyo, be sure to install the Shopify app in Klaviyo and let Remark supply the shopper context around those products.

Connecting Klaviyo to Remark

Remark connects to Klaviyo through OAuth in the dashboard. This gives Remark a secure connection to your Klaviyo account without relying on a long-lived private API key workflow. After connection:
  • Remark stores the connection and refreshes tokens automatically
  • Existing legacy API-key installs can be migrated to OAuth
  • Remark can auto-provision certain Klaviyo assets, including Remark universal content blocks for approved experts

When profile data updates

Profile sync is designed around meaningful shopper activity, especially completed conversations. In practice, that means Klaviyo profiles are updated after Remark has enough context to send useful information instead of partial noise.

Data flow at a glance

DirectionData typePurpose
Remark -> KlaviyoProfile propertiesEnrich Klaviyo profiles for segmentation and personalization
Remark -> KlaviyoEvent dataTrigger flows and measure shopper actions tied to Remark
Klaviyo -> RemarkEmail engagement eventsShow opens, clicks, bounces, and unsubscribes in shopper context

Profile properties synced from Remark

Native Klaviyo fields

Klaviyo fieldTypical Remark source
first_name / last_nameShopper name learnings
phone_numberShopper phone learnings
localeShopper language
imageProfile image when available
location.address1 / location.address2Mailing address learnings
location.city / location.region / location.country / location.zipMailing address or location learnings
location.timezoneShopper timezone
location.ipShopper IP when available

Remark custom profile properties

PropertyTypeMeaning
remark_last_conversation_timestampstringISO timestamp of the latest synced conversation
remark_conversation_tagsstring[]Smart tag titles associated with the conversation
remark_recently_recommended_productsobject[]Recently recommended products with product metadata
remark_expert_namestringExpert name associated with the shopper interaction
remark_expert_follow_upstringAI-generated follow-up copy when available
remark_shopper_languagestringShopper language
remark_shopper_device_typestringDevice type such as mobile or desktop
remark_shopper_regionstringMost recent known region
remark_shopper_buying_intent_levelstringBuying intent level from Remark
remark_shopper_top_categorystringStrongest current category interest
remark_interestsstring[]Consolidated interest-type learnings
remark_shopping_categoriesstring[]Categories the shopper is shopping for
remark_product_stylesstring[]Product style preferences
remark_product_use_casesstring[]Intended use cases
remark_product_featuresstring[]Desired product features
remark_product_materialsstring[]Material preferences
remark_product_budgetstringBudget signal
remark_shopper_heightstringHeight when relevant to fitment
remark_shopper_weightstringWeight when relevant to fitment
remark_shopper_gender_preferencestringGender preference when captured
Some properties are only present when Remark has enough data to populate them. Sparse profiles are normal.
This field is especially useful for lifecycle marketing because it carries both recommendation context and a catalog identifier.
[
  {
    "name": "Alpine Touring Boot",
    "external_id": "12345",
    "why_recommended": "Matches the shopper's fit and terrain preferences"
  }
]
For Shopify stores:
  • external_id is the key product identifier Remark sends for product-aware sync
  • Be sure to install the Shopify app in Klaviyo
  • Remark adds the shopper and recommendation context; it does not create the catalog itself

What events Remark sends into Klaviyo

Remark can send event-based signals into Klaviyo for automations and reporting.
EventTypical triggerCommon use
remark_conversation_completedA shopper conversation finishesPost-conversation follow-up flows
remark_product_recommendedRemark recommends a productRecommendation follow-up or browse-to-buy journeys
remark_activator_clickedShopper clicks into the Remark experienceTop-of-funnel or engagement automations
remark_high_intent_detectedRemark detects a strong buying signalFast-moving high-intent journeys
remark_blog_post_viewedShopper views a Remark-generated blog postContent interest or nurture flows
remark_smart_tag_appliedRemark AI applies a smart tagBehavioral segmentation
remark_learning_createdNew structured learning is persistedPreference-based automations

Representative event payloads

{
  "product_name": "Alpine Touring Boot",
  "product_external_id": "12345",
  "remark_lead": "lead_abc123"
}

remark_blog_post_viewed

{
  "blog_post_id": "post_123",
  "title": "How to Choose the Right Touring Setup",
  "url": "https://www.example.com/blog/touring-setup",
  "topic": "touring",
  "featured_products": [
    {
      "name": "Alpine Touring Boot",
      "external_id": "12345"
    }
  ]
}

remark_smart_tag_applied

{
  "tag_id": "tag_123",
  "tag_title": "High fit confidence",
  "tag_description": "Shopper gave specific fit preferences",
  "confidence_score": 0.94
}

remark_learning_created

{
  "learning_id": "learning_456",
  "learning_type": "interest",
  "learning_key": "skiing",
  "learning_value": "powder skiing",
  "prettified_string": "Interested in powder skiing",
  "confidence_score": 0.91
}

remark_conversation_completed

The conversation-completed event is typically paired with the richest profile update. Use it when you want Klaviyo flows to react to a finished conversation and then read the latest profile properties for personalization.

What Klaviyo sends back into Remark

Remark also ingests email engagement data from Klaviyo.
Klaviyo engagementMeaning inside Remark
OpenedShopper opened a marketing email
ClickedShopper clicked a marketing email link
BouncedEmail delivery bounced
UnsubscribedShopper unsubscribed from email marketing
Remark uses these events to enrich the shopper timeline and filters inside the dashboard. Your team can see recent engagement activity alongside conversation and browsing behavior, which gives a better read on whether a shopper is still engaged.

Typical use cases

Common ways to use this integration include:
  • Building segments based on shopper intent, preferences, or recent conversations
  • Following up after expert conversations with more relevant product or category messaging
  • Using Remark recommendation context in campaigns and flows
  • Understanding whether a shopper who talked to an expert is also engaging with marketing emails

What to expect from the data

Not every profile will contain every field. The exact shape depends on what the shopper actually shared or did. For example:
  • Some shoppers will have recommendation data but no location data
  • Some will have category and product-interest learnings but no phone number
  • Some profiles will gain more detail over time as more conversations happen
That is expected. The integration is designed to accumulate useful context over time rather than require every field upfront.

Notes and edge cases

  • remark_expert_follow_up may not be populated on every profile, especially where backfill would require generating new AI content.
  • Some product objects may omit external_id if the upstream product identifier is unavailable, but catalog-aware usage works best when it is present.