Skip to main content
Solved

Safari mobile blocking call to _learnq.push?

  • November 8, 2022
  • 4 replies
  • 197 views

Forum|alt.badge.img+3

Hi everyone,

 

On the client side, we have some code that creates Klaviyo profiles by using Klaviyo’s javascript library via the _learnq.push(['identify', {'$email' : 'xyz@xyz.com'}]) call. 

 

When making the call on Chrome, everything works fine and a Klaviyo profile is created and _learnq.isIdentified() will now return true

 

On Safari mobile however, no profile is created and _learnq.isIdentified() simply returns false

 

Anyone else experiencing this and is this a known problem?

Best answer by Brian Turcotte

Hi @SharonSTP!

 

My apologies for the delay in my response. I spoke with our engineering team and while this isn’t a widely known issue, I have submitted a request to have this investigated more thoroughly. I will update the thread as soon as I hear more.

 

Thanks again for using the Community!

-Brian

View original
Did this topic or the replies in the thread help you find an answer to your question?

4 replies

Brian Turcotte
Forum|alt.badge.img+37

Hi @SharonSTP and welcome back to the Community!

 

I haven’t heard of this issue before, but typically the behavior of an Identify call is the same across all browsers since the JS code is the same. 

 

May ask if you are self-testing this on your mobile Safari browser? If so, do you have Safari’s Cooker Tracker turned off? That could potentially cause issues with the profile creation. Another external cause could be Apple's ITP (Intelligent tracking prevention), which would limit cookie creation. 

 

If everything’s working properly on Chrome, I would suspect that the issue is occurring on Safari’s side which would mean it’s unlikely to be remedied from within Klaviyo, but investigating these questions might help identify the actual cause. I hope this helps to clarify, and thanks for being a Community member!

 

- Brian


Forum|alt.badge.img+3
  • Author
  • Active Contributor I
  • 10 replies
  • November 8, 2022

Hi @Brian Turcotte , we can reproduce this by connecting our iPhone to a mac, loading up Safari on the desktop in dev mode and connecting to the mobile safari browser, navigating to the the website on the phone, and then triggering the JS call in the console.   On chrome it works fine, on safari, the call does absolutely nothing. 

 

You guys should be able to reproduce it if you do the same on any test website running klaviyo on your side as well.  Can you please have the engineering team look into this?  

 

As far as the settings on our browser, it’s whatever the default is on Mobile Safari,  If Klaviyo doesn’t function properly with the Apple’s default settings, then this problem is much bigger than us and a workaround needs to be put in place by you guys as it would essentially render Klaviyo non-functional on over 50% of devices out there.

 

Thanks for your help and your quick response -- looking forward to hearing back.


Forum|alt.badge.img+3
  • Author
  • Active Contributor I
  • 10 replies
  • November 9, 2022

@Brian Turcotte I can confirm that this is also happening on shopper’s mobile iOS browsers as well where a client side call to _learnq.push(‘identify’...) for a new user that’s never signed up using a form, doesn’t work and doesn’t create a new klaviyo profile.  


Brian Turcotte
Forum|alt.badge.img+37
  • Klaviyo Alum
  • 1393 replies
  • Answer
  • December 30, 2022

Hi @SharonSTP!

 

My apologies for the delay in my response. I spoke with our engineering team and while this isn’t a widely known issue, I have submitted a request to have this investigated more thoroughly. I will update the thread as soon as I hear more.

 

Thanks again for using the Community!

-Brian