Properties: Supported Data Types

Mixpanel supports five data types for properties: string, numeric, boolean, date, and list.

The images represent how each data type will appear in the properties drop-down in Mixpanel reports so that you can distinguish the type of property you select:

Screen_Shot_2019-01-15_at_11.19.57_AM.png 

2016-06-16_00_17_47.976485-property_string.png  String

Mixpanel will treat any value sent that doesn’t match any other data type as a string. In reports, Properties sent as strings will allow Events to be broken out by each unique value.

Example:

mixpanel.track('Account Created',{'Account Type':'Paid'});

String properties have a field size character limit of 255 characters. 

2016-06-16_00_17_36.782606-property_number.png  Numeric

Mixpanel treats any value that is a number (whether integer or decimal) as a numeric Property. Reports can display numeric Properties as histograms.

Example:

mixpanel.track('Application Loaded',{'Load Time (seconds)':1.231});

2016-06-16_00_16_36.845674-property_bou.png  Boolean

Mixpanel treats Properties as booleans if the value is either the JSON constant true or false.

Example:

mixpanel.track('Played Video',{'Ad Included':true});

When filtering for a boolean property that is true or false, Mixpanel only accepts values that are either the boolean true or the boolean false. All other values (undefined, null, etc.) will fall into neither true nor false. 
However, if you were to typecast any non-boolean property to boolean, false filtering actually behaves differently. Any boolean false values, the string "false", the number 0, null, undefined, and an empty string will all appear as false. True values will contain the boolean true, the string "true", and any set value that is not a 0 or an empty string. 
If you are looking to see this typecasted boolean behavior for a true boolean property, use the following logic "boolean property is not true".  

2016-06-16_00_16_58.989435-property_date.png  Date

To guarantee appropriate typecasting across all Mixpanel reports, use the date format YYYY-MM-DDTHH:MM:SS. Make sure you’re sending dates in this format by using the .toISOString method in JavaScript if possible, which will also ensure dates are sent to Mixpanel in UTC.

If you send a unix timestamp as a date, Mixpanel will treat it as an integer; however, in the Mixpanel UI, you can force it to be treated as a date (see Typecasting section below).

Note: A property value that is formatted as a date will be passed as a date type.

Example:

mixpanel.track('Account Created',{'Date First Seen':'2016-06-01T12:34:56'});

2016-06-16_00_17_25.552599-property_list.png  List

Send a list of values (for example, the products in a shopping cart) as a JSON array. In Insights, when querying for a particular item, list Properties allow you to see all events where that item was included in the list.

Example:

mixpanel.track('Order Successful',{'Products':['Jacket','Helmet','Gloves']});

List properties have a field size character limit of 255 characters for each item in the list.

Typecasting

Mixpanel allows you to force Properties into another data format by clicking on the Property type image to the right and selecting a different type:

Screen_Shot_2019-01-15_at_11.26.32_AM.png

To typecast a property in the Insights report, hover over the property you would like to filter on and then select Typecast to select a different type:

InsightsTypecast.gif

Typecasting is helpful when one of your properties is a number but is sent to Mixpanel as a string and you want to see histogram data for that property. Or if one of your properties is a unix timestamp and got sent as a number, and you want it to be treated as a date Property instead.

Data Type Operators

Every data type has a different set of operators to choose from when you filter by properties.

This image shows the operators for each data type.

data_operators.png

String Type Operators

"equals", "does not equal", "contains", "does not contain", "is set", "is not set"

Number Type Operators

"in between", "less than", "equal to", "greater than"

Boolean Type Operators

"true", "false"

List Type Operators

"contains"

Date Type Operators

"was less than"

"was more than"

"will occur within"

In time increments of:

"hours", "days", "weeks", "months"

For a string property, you can use the “is set” operator to determine if the property exists for the event or people profile.

If you’re looking for all users who have a specific value of a property (such as “Account Type” contains “Premium”), then you would use the “contains” or “equals” operators.

Note that “contains” is usually a better operator to use than “equals”, especially for properties with several values.

Is this article helpful?
30 out of 39 found this helpful

Comments

0 comments

Article is closed for comments.