Why am I seeing "(none)" values in my chart results?

  • 8 April 2021
  • 2 replies

Userlevel 4
Badge +3

Hello everyone!

When grouping your events by an event or user property, you may have noticed that some of your results have been sorted into a group titled '(none)'.

'(none)' in Amplitude represents a null value, but sometimes when you use Microscope and check on a user’s profile, you see that there is a user property value in the top panel. Why is the user being counted under ‘(none)’ when the have a value in their profile? Let’s walk through why this happens.

Amplitude is an event based platform, and all charts and cohorts query at the event level. This means that we are querying for event and user property values that were present at the time of the event. Our colleague John also recently posted a video explaining this concept: 

This is different behavior from what you see at the top of a user’s profile (in the User Lookup section), where properties in the upper panel represent the most current user properties. In other words, they reflect the property values that were most recently updated. This is also true when downloading users to CSV from a chart. 

For today, let’s use the user property “Subscription Type” as an example. In our example scenario, we have User A (let’s call them Billy), who has been a user of your product for a while now and has many events logged to Amplitude. On April 2nd, you add a subscription model to your product, and subsequently add the user property “Subscription Type” to your Amplitude instrumentation. Billy loves your product and subscribes on April 2nd, so their “Subscription Type” user property value updates to “Paid”. All of Billy’s events prior to April 2nd did not have a Subscription Type value, but from April 2nd forward, Billy’s events will now contain “Subscription Type” = “Paid” until that value is updated again.

Now let’s think about how Billy would appear on a chart. If you have an event segmentation chart that looks at events from March 15th to April 15th and group by “Subscription Type”, then Billy will be counted in both the “Paid” and the “(none)” groups. This is because Billy has performed some events prior to April 2nd where “Subscription Type” was not present and also performed events after April 2nd where “Subscription Type” = “Paid”. If you change the chart dates to look strictly at events that occurred after April 2nd, then Billy would only be counted in the “Paid” group. 


Here’s an example from the Amplitude Demo where at the time of an event, the user did not have a UTM_Campaign value, but at the top of their profile, we can see the current UTM_Campaign value = Fall_push. (link to event)

Current UTM_Campaign value = Fall_push
No UTM_Campaign value at the time of this Play Song or Video event



Hope this helps explain why ‘(none)’ values appear in your charts! This FAQ regarding "none" values is also available in our Help Center and can be found here: https://help.amplitude.com/hc/en-us/articles/360016257391  

As always, please let us know if you have any questions!

2 replies

Hello All, 


Based on the reasoning above, what do we think about this example?


Let’s hypothetically say an event property has been instrumented for 1 month already.  If a segmentation chart was setup to analyze 1 day within this month, and a ‘group by’ function was used, how do we explain the amount of ‘nones’ taking place in the result.  


It should be noted that all events within the analysis fall within the instrumented event property range.  The 1 day analysis scope does not overlap with time that predates the event property instrumentation.  



Userlevel 6
Badge +9

Thanks for posting here @mlg. I’m looping in @Saish Redkar @Matrak who might have some ideas about this example.