Skip to main content
Contributor III
November 8, 2022
Solved

Multiple Values for One Custom Properties

  • November 8, 2022
  • 1 reply
  • 1669 views

I recently collected data on a group of consumers. I have the data in an excel CSV. Two of the questions results in multiple answers (ie. favorite brands and favorite activities). Ideally I could create a custom property for “Brands” and “Activities” and they could have multiple values populated for each in their profile. I’m not seeing this as an option when uploading my contact data into Klaviyo.

Any solutions to allow for multiple values in one custom property?

    This topic has been closed for replies.
    Best answer by alex.hong

    Hi there @MZeeb ,

    Welcome to the Community.

    Yes, it's very much possible to have a property that contains multiple values. This is referred to as a "List" data type property and can be used with both event and profile properties. Values added to such a property should be separated by a comma e.g. ["Value1", "Value2", "Value3"]. See this Help Center article: About Data Types: List

    You can even segment based on values that are contained within list type properties:
    ?name=inline847943518.png
    You can then create different segments that check for different values for the property.​

    While it's possible for a property to contain multiple values, unfortunately it's not possible to make properties additive through a form. Essentially any time a form is submitted, the property will be overwritten. 

    There may be a workaround, however. The only functionality that we currently have that can add values to a list-type property is the Update Property Action in Flows.  Essentially, you could create a Flow triggered by the list your form is connected to, and use the Update Property Action in the Flow to add values to the property. Although since profiles can only enter a list-triggered flow once, it may be preferable to have the form trigger an event instead since event/metric triggered flows can be entered multiple times.

    See this guide from our Help Center on creating custom events: Setting Up API-based Website Activity Events. This will of course require working with a developer comfortable with APIs. 


    In terms of uploading data, I recommended uploading the data as a list - ['value 1,' 'value 2,' 'value 3']. When you upload the CSV, you'll need to make sure you select 'List' as the data type on the far right, so the data is mapped correctly. This should allow you to add all values under one property field.

     

    In your excel sheet, you'll need to combine all values into one cell. The formatting should look like this: 
     

    Email address

    Brands

    example email

    ["Brand A", "Brand B", "Brand C"]

    1 reply

    alex.hong
    alex.hongAnswer
    Klaviyo Alum
    November 9, 2022

    Hi there @MZeeb ,

    Welcome to the Community.

    Yes, it's very much possible to have a property that contains multiple values. This is referred to as a "List" data type property and can be used with both event and profile properties. Values added to such a property should be separated by a comma e.g. ["Value1", "Value2", "Value3"]. See this Help Center article: About Data Types: List

    You can even segment based on values that are contained within list type properties:
    ?name=inline847943518.png
    You can then create different segments that check for different values for the property.​

    While it's possible for a property to contain multiple values, unfortunately it's not possible to make properties additive through a form. Essentially any time a form is submitted, the property will be overwritten. 

    There may be a workaround, however. The only functionality that we currently have that can add values to a list-type property is the Update Property Action in Flows.  Essentially, you could create a Flow triggered by the list your form is connected to, and use the Update Property Action in the Flow to add values to the property. Although since profiles can only enter a list-triggered flow once, it may be preferable to have the form trigger an event instead since event/metric triggered flows can be entered multiple times.

    See this guide from our Help Center on creating custom events: Setting Up API-based Website Activity Events. This will of course require working with a developer comfortable with APIs. 


    In terms of uploading data, I recommended uploading the data as a list - ['value 1,' 'value 2,' 'value 3']. When you upload the CSV, you'll need to make sure you select 'List' as the data type on the far right, so the data is mapped correctly. This should allow you to add all values under one property field.

     

    In your excel sheet, you'll need to combine all values into one cell. The formatting should look like this: 
     

    Email address

    Brands

    example email

    ["Brand A", "Brand B", "Brand C"]