tl;dr: I want to embed a simple, one-question survey on a flow email without people having to click away/load a page. Klaviyo doesn’t seem to have a native way to do this, nor does it accept Google Form HTML embeds. Help! How can I achieve this?
------
I’m trying to get new customers to share how they found out about our brand (basically attribution or source of conversion) without them navigating away from the email so we can collect as many responses as possible.
The issue is that I can’t seem to find any documentation that Klaviyo can do this.
Key things to note:
I only need one question answered; it can be either checkboxes or multiple choice.
This is the first email new customers will receive in a post-purchase flow
I tried this with Google Forms (detailed belwo) but I don’t need to use this.
I need to be able to easily view collated/total results (e.g. xx% of people answered option A etc) without having to manually intervene on counting or otherwise.
The first method I tried with Google Forms was embedding directly by copy/pasting the “iframe src” string as the source of a Klaviyo text block, which doesn’t work. It looks okay in Edit Content mode, but when I preview the email on my phone it just says “Loading...” where the form should be.
The second method I tried with Google Forms was from an article for how to “hack” it (I used this one) by getting source code from gmail but that doesn’t work either. Same issue where it looks okay in Edit Content mode, but it isn’t interactive when I preview the email on my phone.
Screenshots for both methods are below.
Is there a way for me to use a flow email to directly collect responses from new customers? Either via Google Form or better yet with a functionality that Klaviyo offers.
This is super important for us as we need to understand how new customers find us. We’re activating a ton of different social media and marketing channels and this is a super easy way to get a big picture view on results.
Thanks in advance :)
Page 1 / 1
Hello @joannabko,
Thanks for sharing your question with the Klaviyo Community!
As detailed in the How to Embed Assets Directly in an Email article, due to how most inbox providers recognizing these embedded content as a security risk and have a low rate of rendering, embedded content is not supported within Klaviyo emails.
Most major email clients (such as Gmail) view embedded content such as surveys, forms, videos, and other widgets as a security threat. These email clients will often strip out this embedded code completely and your recipients will not see your content feature rendered when they open your email.
Klaviyo is committed to setting our customers up for success regarding email template creation and sending beautiful, responsive emails. Because our testing shows that these types of features do not reliably render across all major email clients, we don't support embedded surveys, forms, videos, or widgets inside of Klaviyo emails.
A reliable work around to collect information from your contacts surrounding the source they found your brand at would be using buttons, hyperlinks, images, etc. appended with the Update Profile Link function. Using this function within Klaviyo would allow you to simulate and build a survey directly within your emails. The only caveat to this feature would be that contacts who click on these buttons or links would be navigated to a respective URL you designate. This redirect would serve as a confirmation to your contacts that the button click was recorded successfully. To learn more about this feature, I would recommend taking a look at the How to Use Links to Collect Information About Your Recipients and Include Ratings Links or NPS Surveys in an Email articles Klaviyo offers as well as the below Community post surrounding this topic:
Hope this helps!
David
Hi David! Thanks for providing such a thorough response. Makes sense that live content is often blocked via email providers - never thought about it that way.
If I were to use the update property profile method via hyperlinked image, would I be able to view the “results” of the imitated survey on a custom report? For example, how can I see what % of people who responded to the “survey” clicked option A/B/C etc?
Hey @joannabko,
Glad that helped clear some things up!
You would be able to view these results by creating various segments capturing users who clicked on these buttons/links who would then have these custom profile properties amended.
For example, if you wanted to see the number of recipients who clicked on option A, you would need to create a segment with the definition of “Properties about someone, Custom Profile Property equals Option A”. This segment would return a grouping of customers who have clicked on option A and thus have this custom profile property tagged onto their profile.
Since click rate is calculate as the total number of clicks divided by the number of delivered emails, you can then divide the number of customers caught within the segment by the number of recipients sent the email; thus returning the percentage of your overall recipients who have responded with Option A. You can then repeat this process for all other options you have available for your survey.
David
Hi - I saw that Typeform provides documentation on how to embed their surveys right into emails. See here: https://www.typeform.com/help/a/launch-your-typeform-from-an-email-360029664091/ Would you still recommend against this given the spam issues you outlined above? Typeform seems to be suggesting this will work just fine with Mailchimp. Does Klaviyo not work the same way as Mailchimp. Thank you!
Hi there @alimac621!
Great question and thanks for bringing that to our attention.
The Typeform documentation is actually covering a different method than the one we had outlined in this forum post as well as in the help center documentation. Typeform is letting users “code” their own forms into an email through html. This is in contrast to the Google forms one might embed when it comes to Klaviyo.
In fact, we also include similar instructions in our own Typeform integration HC article. Because the form is coded via html, it wouldn't actually raise any issue that was mentioned in the above replies.
Hope this cleared things up! Alex
Awesome! That’s super helpful. Thank you very much
No problem @alimac621! Glad I could help :)
Hi there @alimac621!
Great question and thanks for bringing that to our attention.
The Typeform documentation is actually covering a different method than the one we had outlined in this forum post as well as in the help center documentation. Typeform is letting users “code” their own forms into an email through html. This is in contrast to the Google forms one might embed when it comes to Klaviyo.
In fact, we also include similar instructions in our own Typeform integration HC article. Because the form is coded via html, it wouldn't actually raise any issue that was mentioned in the above replies.
Hope this cleared things up! Alex
Hey @alex.hong cc: @alimac621 -- thanks for looping typeform into this conversation, as I’m working through a similar challenge and thought I’d share my progress with the Klaviyo community in the event that someone goes through the same thing down the road.
I wanted to ‘have my cake and eat it too,’ combining (1) the update_property_link native to Klaviyo and (2) hidden fields in typeform. My goal was to make sure that I immediately knew someone’s response to a one survey question in Klaviyo (in case that person didn’t click ‘submit’ in typeform) and also capture the response in typeform, where I have a connection with Slack to alert me every time someone submits this particular form.
I attempted to do this by creating Klaviyo buttons containing the update_property_link with URL = the URL of my typeform survey, passing hidden fields in that URL (i.e., {% update_property_link 'your-property' 'property-value' ‘https://typeformlinkandhash?#firstvariable=yes&email={{ email}}’ %}’
I discovered (or at least think I discovered) two things:
(A) you can pass static (i.e., same value for all users who click on a particular button) hidden fields using the update_property_link method, but you can’t pass dynamic ones. Said differently, I was able to pass “firstvariable=yes” to the typeform, but Klaviyo passed {{email}} not as the user profile property, but rather literally the text “{{email}}”
@alex.hong -- is there something I could do differently to make Klaviyo ‘convert’ {{email}} in the link to the email property, similar to what it does in a ‘regular’ link? That would let me have my cake and eat it too. Otherwise, (A) is probably the next best solution, although it’s more of a cookie than a nice piece of cake.
Hi there @jic_luke,
Thank you for your writeup and detailed testing. We appreciate you providing your results with us and sharing with the Community so we can all learn and grow together!
I will have to break the news to you that for this case you will need to settle for the “cookie” as you call it. Unfortunately, there is no method to embed tags with a tag so the workaround would have to be option A as you have discovered.
Hope you have a great rest of your day,
Alex
Alternatively to Typeform, you can also use Survicate-Klaviyo integration and embed the first question in the Klaviyo email. Additionally, Survicate captures partial responses, so even if you decide to go with a longer survey and some of your respondents stop after being transferred to a web survey, the answers from the first question will be saved.
We’ve dealt with this problem a bit as well. There are ways to embed interactive components directly into emails, see the amp for email project or apple mail interactivity. Both of these allow for forms that are entirely embedded in the email, with no external redirect which increases response rates a lot.
The main problem with these projects is that they are really hard to implement and don’t integrate natively with Klaviyo. You would have to capture the form submissions yourself and use the Klaviyo profiles api endpoints to update the profiles of your subscribers.
Zaymo is solving some of these problems. I know they are launching a forms product.