Solved

How do I Insert an Event Variable Inside Custom Properties?

  • 9 February 2021
  • 6 replies
  • 1240 views

Badge +2

Hello !

I have a custom event triggered by a quiz and I can’t find a way to push variables from this event inside custom properties.

 

The goal is to use the custom event flow to access some of the quiz result variables and stock them inside custom properties in users profile. This way I will be able to use those results outside the flow (in a campaign or another flow) to send more personalized messages.

 

I tried to use the “Update profile property” in the flow, set it to “Create new property” and then use a tag like {{ event.my_variable }} / {{ event|lookup:'my_variable' }} inside the property value.

Both tags are sent as plain text, they are not replaced by the variable content.

 

Thank you!
Pierre

Ps: sorry for my english, please tell me if I need to change the way to explain it if it’s not clear.

icon

Best answer by retention 9 February 2021, 19:40

View original

6 replies

Userlevel 7
Badge +57

@Pierre T - Welcome to the community!

Unfortunately, as far as I know, you can’t use event properties as “variables” to the “Update Profile Property” action as of now.  However, a good workaround is to have your “Quiz” update the Profile’s property directly via the API.  

Are you using a particular Quiz platform? Klaviyo has a few quiz platforms they support natively:

Or, is this a quiz you custom built yourself? 

If you build it yourself, you can set the profiles via the “Identifying Users” event and pass in all the “Quiz Results” here:
Track and Identify API Reference → Identifying Users

Alternatively, you can also create an embedded “Klaviyo Signup Form” to make a “Quiz” or Survey.  In this interface, the fields you create will automatically (and instantly) be added to the users’ profile.

Hope this helps?

Userlevel 6
Badge +9

Hi @Pierre T

Agree with Joe @retention on this - since you can’t use event properties as “variables” and have it added to the “Update Profile Property” action, the other two options Joe recommended would be a good starting point.  I’m not sure if @jsappington might have any additional tips or tricks for quiz result collection and adding it to the profile property? 

Userlevel 1
Badge +2

Hi @cassy.lee thanks for the tag here!

 

Also curious to hear what platform you are doing this on @Pierre T 

 

Unless this is from Octane AI, I would recommend using zapier to faciliate the data transfer. For one of our brands that’s on Typeform, Zapier directly adds the relevant profile data as custom profile properties, and then we take this a step further and use some profile property update flows where depending on which questions they answered in the quiz they are dumped into one of 16 segments for their custom products.

Badge +2

Hi @retention, @cassy.lee & @jsappington 
Thank you for this quick answer!

 

It’s a custom quizz, it’s way to calculate results was to complex to use tools like typeform.

It is some kind of personnality test which place the user on a X-Y map and then look the products with the closer and farther coordonates + trigger a lot of custom texts.

The quizz was made on Shopify (I think it is based on JS), but the e-shop is still on woocommerce (the migration was delayed due to the actual crisis). The mix of two e-commerce technology is a bit tricky for now and reduce what I can do (like native product informations use)

 

After the quizz completion, the content is sent in a klaviyo event, so I was hoping to be able to manage the property creation without the developers to avoid extra development fees.

 

So, I need to ask them to change the way to send data in Klaviyo:

  • Keep the actual event creation
  • Add a “identifying user” event and then push the data into custom properties

Do I have well understood?

Sorry for reviving this very old topic but I was also looking for a solution for a similar problem and the only way I managed to do it is through webhooks, sending a "post" with the variables I needed inside the JSON for each recipients that does X action of the flow.

In my case, I want the recipients of X list to receive an email from a flow with their order ID to manage their subscriptions, but unfortunately it only allows me to use the event property when an event is being used to trigger the flow and not when the trigger is a list or segment.

It would be interesting to implement what Pierre T says when using “Update or create profile property” and then use a tag like of a event property value inside to to “extract” that content from the event property to add it as a Custom Profile Property directly from Klaviyo without dev fees.

Or directly add the code of an event-based property without the need of a workaround like this 😅

Userlevel 7
Badge +36

Hi @Portela!

I agree that would be valuable functionality, so I will definitely create an internal product request on your behalf, and I’ll update the thread if anything changes in the future! 

 

In the meantime, I would have suggested the webhook workaround as well, so I’m glad you were able to determine that.

 

Best,

Brian

Reply