Solved

Funnel - user in two mutually exclusive segments

  • 12 December 2021
  • 1 reply
  • 30 views

I have a funnel chart with two segments:​​​​​​

  1. Country = US
  2. Country != US

My intuition was that these would be mutually exclusive - a user can only be in one country. However, there are some users who are in both of these segments.

I looked at one such user who was in both the US and non-US segments. Their user profile said they were in Australia. Most of their events were from Australia, but some of them were flagged as United States. These US events were server-sent events. In the server side case, we don’t have the user’s IP address.

My guess is that Amplitude is inferring the country from our datacentre server’s IP, which is in the US.

This muddles up my analysis :( Is it possible to somehow suppress it, or use the user’s most recent country value, or most frequent country?

icon

Best answer by Denis Holmes 14 December 2021, 10:12

View original

1 reply

Userlevel 6
Badge +8

Hi @cldellow 

 

Thanks for writing into Amplitude Community! Always great to see the community being active!!

 

Amplitude is an events-based platform so it will query on events and their filters at the time of the event. So it is showing users in both because there are users who did events in both the US and not in the US. Their most recent value is displayed at the top of the profile “Australia” but if you go to each event, as you have seen, it will have it’s own property at the time of the event, as you well know!

 

My guess is that Amplitude is inferring the country from our datacentre server’s IP, which is in the US.

This muddles up my analysis :( Is it possible to somehow suppress it, or use the user’s most recent country value, or most frequent country?

If this is a server-side event, you must send the payload yourself when you make the call to the API. With that, you need to add the location property and value into the payload for these server-side events. Amplitude should not infer country from server-side events with the HTTP API ,and it should have it’s own key value pair for IP addresses. Can you confirm how you are sending the events into Amplitude? It is through the API or through the SDKs?  Can you check the payloads of the event data that you send? If you have the payloads but don’t want to send publically (understandably), you can PM them to me.

 

Thank you!

 

Denis

Reply