Using RevLogic

RevLogic properties in Klaviyo

Connect RevLogic to Klaviyo and it keeps seven properties current on every customer profile — reorder status, health score, revenue tier, trend, key account, and two dates you can build flows on.

Connect your Klaviyo account to RevLogic and RevLogic keeps seven properties up to date on your customers’ Klaviyo profiles. Segment on them, filter flows with them, and trigger date-based flows off a customer’s expected reorder date — without tags, and without waiting on a Shopify sync in between.

This is separate from, and an alternative to, the tag route described in Build Klaviyo segments from RevLogic statuses. Pick one. There’s a section at the end on which.

What connecting does

Connecting authorizes RevLogic to write profile properties into your Klaviyo account. It does three things and nothing else:

  • Reads the name of your Klaviyo account, once, so RevLogic can show you which account you connected.
  • Writes the seven properties below onto customer profiles, matched by email address.
  • Checks its own writes. Klaviyo accepts a batch of property updates and processes it in the background, so RevLogic asks Klaviyo whether the batch it just sent finished. That check needs read access to profiles, which is why Klaviyo’s approval screen lists it.

That read access is used for exactly one thing: the status of an import RevLogic itself sent. RevLogic never reads, stores, or shows you your Klaviyo profiles, lists, segments, flows, or campaign data. It cannot send email from your account, add anyone to a list, or subscribe or unsubscribe anybody. Connecting on its own writes nothing at all — the property push is a second switch, off until you turn it on.

The seven properties

PropertyTypeValues
revlogic_statusTexton-track, due, overdue, winback
revlogic_health_scoreNumber0–100, in steps of 5
revlogic_revenue_tierTextwhale, core, occasional
revlogic_trendTextgrowing, flat, shrinking
revlogic_key_accountBooleantrue or false
revlogic_expected_reorder_dateDateWhen RevLogic expects their next order
revlogic_last_order_dateDateTheir most recent order

A few things worth knowing about the values:

  • The health score is rounded to the nearest 5. A score that moved by half a point isn’t news, and rounding stops every customer’s profile being rewritten every night for a change nobody would act on. It’s still exactly what you want for a greater-than / less-than segment filter.
  • Both dates are written at noon, with no timezone. That’s Klaviyo’s own guidance for date-triggered flows: a midnight timestamp lands on the previous calendar day for anyone west of Greenwich, and flows fire a day early. Noon leaves half a day of slack in either direction.
  • A value RevLogic can’t state is removed, not blanked. A customer with only one order has no reorder cycle, so there’s no expected reorder date to give — RevLogic clears the property rather than writing an empty value. That matters more than it sounds: Klaviyo locks a custom property’s type to whatever it first receives, and one empty string would turn a date property into a text one permanently.
  • revlogic_trend compares the customer’s recent stretch against the one before it, and that stretch is sized to how often they order rather than being the same for everyone — so a flow triggered on shrinking reaches a frequent buyer within weeks of them easing off, instead of waiting for months of history to turn. See Customer statuses and key accounts.
  • revlogic_key_account follows the setting on the customer’s card. A customer set to Always is true whatever their numbers say, one set to Never is false even when they meet a rule, and Automatic follows your thresholds. See Customer statuses and key accounts.
  • The values match what you see in RevLogic. They’re the same statuses and scores as the ones on your Dashboard and Customers pages — see Understanding health scores and Customer statuses and key accounts for how each one is decided.

Which customers reach Klaviyo

Klaviyo profiles are keyed by email address, so a customer only reaches Klaviyo if RevLogic can name one:

  • Ordinary customers are matched on the email address on their Shopify customer record.
  • B2B company locations are matched on their buyer: the contact who placed the location’s most recent order, or failing that the company’s main contact.
  • Name-only customers — walk-ins and phone orders keyed to a name with no email on the record — never reach Klaviyo. There’s no address to match them to.

Before you switch the push on, RevLogic tells you both numbers: how many customers it can reach, and how many it can’t.

This may create profiles in your Klaviyo account for customers Klaviyo doesn’t already know about. If your Klaviyo plan counts profiles, check what you’re on before you turn the push on.

How B2B locations are combined

If a business buys through several company locations that all order under one buyer’s email address, that buyer has one Klaviyo profile — so RevLogic has to combine the locations into a single set of values. It combines them the way a salesperson would:

PropertyHow locations combine
StatusThe most at risk wins — winback beats overdue beats due beats on-track.
Health scoreThe lowest of them.
Revenue tierWorked out from their combined revenue, so two mid-sized locations can add up to a whale.
TrendGrowing only if some locations are growing and none are shrinking, and vice versa. Otherwise flat.
Key accountTrue if any location qualifies.
Expected reorder dateThe earliest — the soonest thing you’d call about.
Last order dateThe latest — the most recent contact you had.

Timing

  • A property-only change reaches a Klaviyo segment in about 15–20 minutes. RevLogic sends the change within a couple of minutes; Klaviyo then re-evaluates its segments on its own schedule.
  • The first push covers every customer RevLogic can reach. After that, only changes are sent.
  • Date-property flows evaluate once a day. That’s Klaviyo’s behaviour, not RevLogic’s: a flow triggered off revlogic_expected_reorder_date checks daily, so a reorder date that lands less than 24 hours away can be missed entirely. If you’re building a “reminder before they’re due” flow, set the offset to a few days rather than a few hours.
  • A customer with no changes is not re-sent. RevLogic only writes when a value actually moved, so a quiet week is a quiet week in Klaviyo too.

How to connect

From inside RevLogic. Open Settings and find the Klaviyo card. Click Connect Klaviyo — it opens Klaviyo in a new tab, because Klaviyo’s approval screen can’t run inside the Shopify admin. Approve the connection and you land back on your Settings page.

From Klaviyo’s integrations directory. Find RevLogic in Klaviyo’s integrations and start from there. You’ll be asked for your .myshopify.com store domain first, so RevLogic knows which store you’re connecting — you need RevLogic installed on that store already. From there it’s the same approval screen and the same result.

Either route ends up in the same place, and you only need to do it once.

Reconnecting. The Klaviyo card also has a Reconnect button next to Disconnect. It takes you back to Klaviyo’s approval screen so RevLogic can pick up a permission it didn’t have before — that’s all it does. Your push setting stays exactly as it was, nothing is cleared in Klaviyo, and if the push was on it starts again straight away. If you connected before RevLogic asked to check its own imports, one Reconnect is what lets it confirm each batch of updates finished.

When you land back, RevLogic asks the second question straight away. Connecting doesn’t write anything on its own, so the confirmation for the property push opens for you as soon as you return — it tells you how many customers will be written to, how many can’t be reached, and that profiles may be created. Turn it on there and you’re done. If you’d rather decide later, close it: the card carries on saying Connected · not sending until you switch the push on, and nothing goes to Klaviyo in the meantime.

Turning the push on and off

Connecting doesn’t write anything. Push customer properties on the same card is what starts it, and it asks you to confirm first — it tells you how many customers will be written to, how many can’t be reached, and that profiles may be created.

The card tells you which of the two states you’re in at a glance:

  • Sending — the push is on. The card also shows when RevLogic last wrote to your profiles.
  • Connected · not sending — you’re connected, but nothing is going to Klaviyo. Click Turn on to start.

Turning it off stops the updates. The values already in Klaviyo stay exactly as they are, so segments built on them keep matching — they just stop reflecting what your customers do next. Your connection stays in place, so you can switch it back on without reconnecting.

Disconnecting

Disconnect on the Klaviyo card does three things:

  1. Stops the property push immediately.
  2. Clears revlogic_expected_reorder_date on every profile RevLogic wrote to, so date-based flows built on it stop firing. This is the one property a disconnect takes back, because a stale reorder date would keep triggering flows on intelligence nobody is maintaining any more.
  3. Revokes RevLogic’s access to your Klaviyo account and deletes its stored credentials.

The other six properties keep their last values. They’re yours — you may have segments built on them — and RevLogic doesn’t empty them on the way out.

Uninstalling RevLogic from Shopify does the same revoking and deleting automatically. See Data retention and GDPR.

One Klaviyo account per store

Connect one Shopify store to one Klaviyo account. If two stores running RevLogic point at the same Klaviyo account, both write the same seven property names to the same profiles and the values flip back and forth between whichever store wrote last. RevLogic warns you when it spots this at connect time, but it can’t fix it — you have to pick one.

Which should I use: properties or tags?

Both routes get RevLogic’s intelligence into Klaviyo. Use one, not both.

Use the properties — this article — if you can connect Klaviyo. They’re richer (a health score you can filter numerically, dates you can trigger flows off, a real boolean for key accounts), they arrive faster, and they don’t need anything written onto your Shopify customer records.

Use the tagsBuild Klaviyo segments from RevLogic statuses — if you’d rather not connect a second app, or if you want the same statuses visible in your Shopify admin and in Shopify Flow as well. The tags stay available and keep working whether you connect Klaviyo or not.

Don’t build segments on both. A segment on the revlogic_* properties and a segment on the Shopify Tags property will disagree with each other for a few minutes at a time, whenever one route updates before the other — and you’ll spend your time working out which one is right instead of calling anybody.

Next steps